[發(fā)明專利]處理器硬件和軟件無效
| 申請(qǐng)?zhí)枺?/td> | 200680030649.1 | 申請(qǐng)日: | 2006-08-22 |
| 公開(公告)號(hào): | CN101248437A | 公開(公告)日: | 2008-08-20 |
| 發(fā)明(設(shè)計(jì))人: | 法比安·勒菲弗 | 申請(qǐng)(專利權(quán))人: | NXP股份有限公司 |
| 主分類號(hào): | G06F21/00 | 分類號(hào): | G06F21/00 |
| 代理公司: | 北京天昊聯(lián)合知識(shí)產(chǎn)權(quán)代理有限公司 | 代理人: | 陳源;張?zhí)焓?/td> |
| 地址: | 荷蘭艾*** | 國省代碼: | 荷蘭;NL |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 處理器 硬件 軟件 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種用以檢測(cè)在硬件上運(yùn)行的軟件的存在的系統(tǒng)和方法。具體地說,本發(fā)明涉及這樣的系統(tǒng)和方法,其用于在檢測(cè)到特定的軟件時(shí)禁用所述硬件,并防止該軟件在所述的硬件上執(zhí)行指令。
背景技術(shù)
對(duì)于生產(chǎn)處理器硬件的公司來講,并行地開發(fā)在他們處理器上運(yùn)行的諸如機(jī)器代碼或特別定制的固件之類的軟件是一個(gè)慣例。這樣做時(shí),通常認(rèn)為由處理器制造商開發(fā)的軟件是被優(yōu)選的,以通過處理器裝置達(dá)到最優(yōu)性能。結(jié)果,公司經(jīng)常推薦購買特定的處理器裝置的顧客去購買相關(guān)的軟件以通過處理器達(dá)到最優(yōu)性能。
開發(fā)達(dá)到最優(yōu)性能的軟件要求在時(shí)間和財(cái)力方面的巨大投入,因此,這些公司只提供許可下的軟件,防止用戶拷貝軟件并將軟件提供給第三方,以試圖確保軟件/硬件供應(yīng)公司的收入不會(huì)損失。
然而,在特定的環(huán)境下,很多顧客可能不希望使用由硬件制造公司開發(fā)的軟件,硬件公司僅提供其自己的處理器。而且,硬件的終端用戶可以自由地開發(fā)他們自己的與硬件一起使用的軟件,定制以滿足他們特定的要求。
當(dāng)然,不能排除硬件制造商軟件的未授權(quán)或其它非法拷貝可能被提供給硬件的終端用戶。
未授權(quán)軟件的例子可以包括第三方在沒有獲得必要的授權(quán)的情況下進(jìn)行的拷貝或通過所謂的對(duì)等網(wǎng)絡(luò)提供的未授權(quán)拷貝。這樣未授權(quán)的拷貝或共享最終導(dǎo)致軟件開發(fā)商的收入損失。
為了克服這些問題,存在多種解決方案以防止這樣未授權(quán)軟件的使用,在軟件中包括加密代碼以防止軟件的未授權(quán)使用是公知的。解密密鑰被實(shí)現(xiàn)在硬件中,以對(duì)加密代碼進(jìn)行解碼,允許軟件的可執(zhí)行指令在硬件上運(yùn)行。
作為具體的示例,WO-A-81/02351公開了一種專屬處理器架構(gòu),在這種架構(gòu)中,芯片或裸片設(shè)計(jì)被修改為包括一個(gè)解碼器,該解碼器包括第一多路復(fù)用器、邏輯門陣列和串聯(lián)放置在處理器的指令寄存器和指令解碼器之間的信號(hào)分離器。如果指令代碼被正確實(shí)現(xiàn)以用在改進(jìn)的處理器上,則邏輯門將對(duì)加密代碼進(jìn)行解碼,使處理器能夠執(zhí)行軟件的指令代碼。相反地,在未改進(jìn)的處理器上使用加密軟件將導(dǎo)致指令代碼的錯(cuò)誤的執(zhí)行,并導(dǎo)致故障。
然而,由于WO-A-81/02351提供的上述解決方案要求處理器架構(gòu)的大量修改以實(shí)現(xiàn)軟件檢測(cè),以及需要這么多的這種架構(gòu)的版本針對(duì)上文提及的未授權(quán)使用進(jìn)行防衛(wèi),這種解決方案證明是非常昂貴的。而且,由于解密密鑰是利用邏輯門實(shí)現(xiàn)的,它會(huì)遇到逆向工程,使其允許被拷貝,以至于軟件/硬件提供商不能確定地識(shí)別軟件的非法拷貝是和他們的硬件一起使用的。另外,解密密鑰是靜態(tài)的,在沒有對(duì)邏輯門進(jìn)行物理重新連線的情況下,不可能被很容易地更新。
本發(fā)明尋求提供一種檢測(cè)在硬件上運(yùn)行的軟件的存在的方法和系統(tǒng),該方法和系統(tǒng)有超過已知這樣的方法和系統(tǒng)的優(yōu)點(diǎn)。
發(fā)明內(nèi)容
按照本發(fā)明的一個(gè)方面,提供了被用來檢測(cè)在其上的軟件應(yīng)用的處理器裝置,該處理器裝置擁有被用來檢測(cè)包含在軟件中的簽名的存在的總線控制器,使得簽名檢測(cè)通過總線控制器用來禁用處理器。
特別地,本發(fā)明尋求防止與處理器裝置相關(guān)的非法軟件的使用,本發(fā)明克服了一個(gè)或多個(gè)上文提及的缺點(diǎn),以及,特別地,防止非法軟件拷貝運(yùn)行在硬件上,同時(shí)還提供了一種簡單和劃算的實(shí)現(xiàn)方式。當(dāng)檢測(cè)到未授權(quán)軟件時(shí),本發(fā)明禁用硬件,防止更進(jìn)一步的指令被軟件執(zhí)行。
優(yōu)選地,總線控制器被安排通過結(jié)合總線控制器和裝置的連接來接收輸入信號(hào),以至于該輸入信號(hào)可以使總線控制器來檢測(cè)簽名的存在。由于通過利用該結(jié)合的配置,例如,對(duì)于封裝內(nèi)的集成電路裸片來講,這證明是有利的,它可以定義哪些集成電路裝置可以被激活以檢測(cè)軟件的存在,哪些不能。這允許使用單個(gè)裸片設(shè)計(jì),從而消除制造用以檢測(cè)軟件存在的裸片和不檢測(cè)軟件存在的裸片的需要和成本。
另外,通過簽名被寫入內(nèi)部寄存器的特征的優(yōu)點(diǎn),簽名的逆向工程被極大地抑制了,由于它要求了解哪一個(gè)寄存器包含簽名以及軟件被寫入了那個(gè)寄存器的哪一段簽名代碼中。
本發(fā)明提供了更進(jìn)一步的優(yōu)點(diǎn),硬件終端用戶可以開發(fā)與軟件制造商無關(guān)的軟件,這些軟件可以在沒有上文所述的禁用發(fā)生的危險(xiǎn)的情況下,在處理器裝置上執(zhí)行。
優(yōu)選地,內(nèi)部寄存器被用來存儲(chǔ)簽名,以及,總線控制器被用來從內(nèi)部寄存器讀取簽名。由于簽名可以通過再次編程指令寄存器被更新,而不需要重新設(shè)計(jì)處理器架構(gòu),這證明是有利的。
隨機(jī)參數(shù)發(fā)生器可以被用來定義在簽名檢測(cè)和處理器禁用之間的隨機(jī)延遲。這提供了處理器以隨機(jī)和不可預(yù)測(cè)的方式被禁用的優(yōu)點(diǎn),從而更進(jìn)一步地禁止逆向工程。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于NXP股份有限公司,未經(jīng)NXP股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200680030649.1/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F21-00 防止未授權(quán)行為的保護(hù)計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)的安全裝置
G06F21-02 .通過保護(hù)計(jì)算機(jī)的特定內(nèi)部部件
G06F21-04 .通過保護(hù)特定的外圍設(shè)備,如鍵盤或顯示器
G06F21-06 .通過感知越權(quán)操作或外圍侵?jǐn)_
G06F21-20 .通過限制訪問計(jì)算機(jī)系統(tǒng)或計(jì)算機(jī)網(wǎng)絡(luò)中的節(jié)點(diǎn)
G06F21-22 .通過限制訪問或處理程序或過程
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測(cè)方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲(chǔ)介質(zhì)
- 軟件驗(yàn)證裝置、軟件驗(yàn)證方法以及軟件驗(yàn)證程序
- 使用靜態(tài)和動(dòng)態(tài)惡意軟件分析來擴(kuò)展惡意軟件的動(dòng)態(tài)檢測(cè)
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測(cè)驗(yàn)軟件的裝置與方法





