[發明專利]執行軟件應用程序的方法、系統以及安全處理器無效
| 申請號: | 201110176597.1 | 申請日: | 2011-06-28 |
| 公開(公告)號: | CN102298528A | 公開(公告)日: | 2011-12-28 |
| 發明(設計)人: | E.迪爾 | 申請(專利權)人: | 湯姆森特許公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445;G06F21/22 |
| 代理公司: | 北京市柳沈律師事務所 11105 | 代理人: | 呂曉章 |
| 地址: | 法國伊西*** | 國省代碼: | 法國;FR |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 執行 軟件 應用程序 方法 系統 以及 安全 處理器 | ||
技術領域
本發明大體上涉及一種計算機軟件并且具體地涉及一種計算機軟件的拷貝保護(copy?protection)。
背景技術
本部分旨在向讀者介紹可能與以下描述和/或要求權利的本發明的各個方面有關的技術的各個方面。相信本論述有助于向讀者提供背景信息以便促進對本發明的各個方面的更好的理解。從而,應該理解的是以要鑒于此來閱讀這些陳述,而不是作為對現有技術的承認。
由于在物理介質上分發的軟件經常遭受非法復制,自然地已經開發了許多技術以便嘗試并阻礙這樣的復制。這些技術包括:
●向每個客戶提供唯一的序列號,例如印在物理介質上的、在注冊階段將要撥入的隨機數字,或已經由服務器針對目標主機制作的許可文件。該技術的主要特征在于受保護的軟件將該值與其代碼中的參考值相比較。當然這個比較就是攻擊者的目標點(target?point)。
●使用被稱為保護鎖(dongle)的、應答來自軟件的詢問(challenge)外部裝置。錯誤的應答造成軟件停止其執行。攻擊者將再一次地試圖繞過出現的這些詢問。
●應該具有一些由軟件測量的定義的特征(諸如盤旋轉速度以及對預定扇區的存取時間)的實際物理介質的存在的驗證。使用兩種類型的攻擊對抗這種技術。第一種類型如在之前的情況中識別測試的位置并且繞過它們。第二種攻擊使用精確地仿真物理介質的復雜的虛擬驅動器軟件,諸如Alcohol?120%以及Virtual?Daemon。
本申請人在WO?2009/074686中提供了另一種解決方案。使用一種對于軟件的每種實例唯一的輔助安全處理器,并且在該處理器中而不是在主處理器中存儲并執行代碼的一些元素。該安全處理器的缺失使得軟件不可能執行。由于安全處理器難以克隆,所以該解決方案對于偶然的非法闖入(casual?hacking)具有魯棒性。
雖然這種解決方案工作良好,但其最初局限于用于保護唯一的軟件程序;每個標題(title)都需要其自身的安全處理器。在一些情況下,例如標題的電子遞送,具有保護若干標題的安全處理器是方便的。由于安全處理器執行的軟件代碼依賴于標題,所以存在兩種選項:
●預先向安全處理器加載若干標題的軟件代碼加載安全處理器。該選項簡單但是具有預先必須知曉要保護的標題以及必須可得到這些標題的缺點。
●當執行標題時在安全處理器中實時加載軟件代碼。存在在安全處理器中安全地加載軟件代碼的現有的解決方案,諸如Java?Card和Sim?Tool?kit。通常通過電子下載提供代碼。對于進一步細節,參見K.Markantonakis和K.Mayes的Smart?Cards,Tokens,Security?and?Applications,Springer-Verlag?New?York?Inc.,2008。然而,這些解決方案仍可改進。
因此要認識到存在一種對在允許用戶僅僅訪問其已經獲得授權的標題的同時,使得能夠保護多個不同軟件標題的系統的需求。此外,即便當預先不知道標題時,該系統也應該工作。本發明提供了這樣一種系統。
發明內容
在第一方面,本發明針對一種在系統中執行軟件應用程序(application)的方法,所述系統包括具有處理器的主機、與主機操作性地連接的安全處理器以及遠程服務器。該主機讀取軟件應用程序的主機軟件代碼和安全處理器軟件代碼并且將后者從遠程服務器傳遞至請求用于軟件應用程序的激活序列的安全處理器。安全處理器接收用于軟件應用程序的激活序列并使用其使得安全處理器軟件代碼可執行。主機執行主機軟件代碼并且調用安全處理器中的可執行的安全處理器軟件代碼的例程,所述安全處理器執行可執行的安全處理器軟件代碼的例程以便獲取對返回的調用的響應。
在第一優選實施例中,安全處理器軟件代碼受保護并且安全處理器對受保護的安全處理器軟件代碼進行解除保護(unprotect)。這是有利地:通過加密來保護受保護的安全處理器軟件代碼、激活序列是解密密鑰、以及安全處理器通過使用解密密鑰的解密來對受保護的安全處理器軟件代碼進行解除保護。
在第二優選實施例中,安全處理器驗證安全處理器軟件代碼的完整性。
在第三優選實施例中,從以下的組中選擇激活序列:密碼、補充(complement)安全處理器軟件代碼的代碼段、以及旨在由安全處理器執行的以便為安全處理器軟件代碼準備代碼的二進制代碼。
在第四優選實施例中,安全處理器在存儲器中存儲激活序列。
在第五優選實施例中,安全處理器被適配為保護多個軟件應用程序。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于湯姆森特許公司,未經湯姆森特許公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110176597.1/2.html,轉載請聲明來源鉆瓜專利網。





