两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

微處理器的制作方法

文檔序號:6538270閱讀:183來源:國知局
專利名稱:微處理器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種具有處理器核心的微處理器。
背景技術(shù)
近年來,將調(diào)試器接口包括到微處理器中,將調(diào)試器接口連接到調(diào)試器,從而在軟件開發(fā)的時候分析處理器內(nèi)的狀態(tài)并且?guī)椭{(diào)試的方法是公知的。
通過使用該方法,有可能通過包括在處理器中的調(diào)試器接口從調(diào)試器訪問處理器中的資源如寄存器或存儲器。這樣的優(yōu)點是例如可以執(zhí)行在處理器中運行的程序的單步執(zhí)行。
通過包括調(diào)試器接口,讓軟件開發(fā)者驗證程序的運行變得容易。另一方面,存在一個問題是讓其他軟件開發(fā)者和用戶分析該軟件變得容易。
例如,如果所開發(fā)的軟件包含秘密信息,則有必要防止軟件用戶分析該軟件。另外,也有必要防止其他軟件開發(fā)者分析該軟件。
作為用于此目的的技術(shù),根據(jù)在解碼的時候所選的密鑰禁止調(diào)試功能的方法,以及當(dāng)選擇存儲在處理器內(nèi)的存儲器中的保護對象程序作為調(diào)試對象時禁止調(diào)試功能的運行的方法已被提出(例如,參見日本專利申請公開文獻(xiàn)第2002-244757號)。
然而,如果禁止對預(yù)定程序等的調(diào)試,則根本不能執(zhí)行對該程序的調(diào)試,從而導(dǎo)致麻煩。期望通過控制是否更合適地啟用調(diào)試功能來改善調(diào)試功能。

發(fā)明內(nèi)容
本發(fā)明的目的是至少解決傳統(tǒng)技術(shù)中的問題。
根據(jù)本發(fā)明一方面的微處理器,包括處理器核心;信息獲取單元,從外界獲取要由處理器核心使用的加密信息;解密單元,采用對稱密鑰對該信息進行解密,以獲得明文;以及控制器,根據(jù)對稱密鑰控制對由信息獲取單元獲取的信息的處理。
通過下面結(jié)合附圖閱讀的對本發(fā)明的詳細(xì)描述,本發(fā)明的其他目的、特性和優(yōu)點將得到具體的闡述,或者將會變得清楚。


圖1是示出根據(jù)第一實施例的程序開發(fā)系統(tǒng)4的總體的圖;圖2是示出軟件銷售商2中的系統(tǒng)10的總體配置的方框圖;圖3是示出密鑰表133的數(shù)據(jù)配置的示意圖;圖4是示出當(dāng)提供保護屬性時由保護屬性添加器135使用的保護屬性確定表136的圖;圖5是示出當(dāng)軟件銷售商2將正被開發(fā)的程序從外部存儲器200讀入到微處理器100中時所執(zhí)行的讀取處理的流程圖;圖6是示出當(dāng)調(diào)試器500讀取通過參照圖5所述的處理而發(fā)送到處理器核心110的明文程序時所執(zhí)行的讀取處理的流程圖;圖7是示出根據(jù)第二實施例的軟件銷售商2中的系統(tǒng)10的圖;圖8是示出用于由指令存儲器訪問控制器124執(zhí)行的訪問控制的規(guī)則的示意圖;圖9是示出當(dāng)軟件銷售商2從外部存儲器200獲取正被開發(fā)的程序時所執(zhí)行的處理的流程圖;圖10是示出當(dāng)讀取通過參照圖5所述的處理而保存在內(nèi)部存儲器120中的程序時所執(zhí)行的讀取處理的流程圖;
圖11是示出當(dāng)命令在明文程序已經(jīng)保存在指令存儲器123中的狀態(tài)下寫入新明文程序時,即當(dāng)命令覆寫時所執(zhí)行的寫入處理的流程圖;圖12是示出根據(jù)第二實施例的第一變型例子的保護屬性存儲器122的數(shù)據(jù)配置的示意圖;圖13是示出根據(jù)第二實施例的第二變型例子的保護屬性存儲器122的數(shù)據(jù)配置的示意圖;圖14是示出根據(jù)第二實施例的第三變型例子的系統(tǒng)10的總體配置的圖;圖15是示出根據(jù)第二實施例的第四變型例子的寫入處理的流程圖;圖16是示出根據(jù)第三實施例的用戶終端3的總體配置的方框圖;圖17是示出秘密密鑰表172的數(shù)據(jù)配置的示意圖;圖18是示出公共密鑰表139的數(shù)據(jù)配置的示意圖;圖19是示出指令高速緩存182的數(shù)據(jù)配置的示意圖;圖20是示出用于指令高速緩存訪問控制器184中的訪問控制的規(guī)則的示意圖;圖21是示出根據(jù)第三實施例的軟件銷售商2中在軟件開發(fā)的時候進行調(diào)試時所執(zhí)行的處理的流程圖;圖22是示出當(dāng)獲取程序讀取請求時由高速緩存控制器180執(zhí)行的讀取處理的流程圖;圖23是示出根據(jù)第四實施例的用戶終端3的總體配置的方框圖;圖24是要由加密和解密請求生成器138使用以確定是否進行加密或解密的規(guī)則的示意圖;圖25是示出根據(jù)第四實施例的將信息讀入到用戶終端3內(nèi)的處理器核心110中的處理的流程圖;圖26是示出當(dāng)在由處理器核心110輸出的信息讀取請求中指定了任務(wù)ID“3”和開始地址“X1”時所執(zhí)行的處理的流程圖;以及圖27是示出當(dāng)在由處理器核心110輸出的信息讀取請求中指定了任務(wù)ID“3”和開始地址“Y1”時所執(zhí)行的處理的流程圖。
具體實施例方式
以下參照附圖詳細(xì)說明根據(jù)本發(fā)明的微處理器的實施例。本發(fā)明不局限于這些實施例。
圖1是示出根據(jù)第一實施例的程序開發(fā)系統(tǒng)的總體的圖。程序開發(fā)系統(tǒng)4包括處理器開發(fā)銷售商1、軟件銷售商2和用戶終端3。處理器開發(fā)銷售商1將微處理器100銷售給軟件銷售商2和用戶終端3。
處理器開發(fā)銷售商1準(zhǔn)備在調(diào)試的時候由軟件銷售商2使用的開發(fā)密鑰700、第一產(chǎn)品密鑰711、第二產(chǎn)品密鑰712和第三產(chǎn)品密鑰。這些密鑰預(yù)先包括在微處理器100中。
開發(fā)密鑰是當(dāng)開發(fā)程序等時由軟件銷售商2使用的對稱密鑰。產(chǎn)品密鑰是當(dāng)向外界提供所開發(fā)的軟件時由軟件銷售商2使用的對稱密鑰。在本實施例中,分別準(zhǔn)備開發(fā)密鑰和產(chǎn)品密鑰,并且從相同程序獲得使用開發(fā)密鑰的開發(fā)密鑰加密程序和使用產(chǎn)品密鑰的產(chǎn)品密鑰加密程序。
處理器開發(fā)銷售商1向軟件銷售商2通知開發(fā)密鑰、預(yù)定產(chǎn)品密鑰以及與它們相關(guān)聯(lián)的密鑰ID。在本實施例中,處理器開發(fā)銷售商1向軟件銷售商2通知開發(fā)密鑰700、第一產(chǎn)品密鑰711以及與它們相關(guān)聯(lián)的密鑰ID 1和2。
通知哪些密鑰可以根據(jù)處理器開發(fā)銷售商1和軟件銷售商2之間簽定的合同來確定。具體地說,處理器開發(fā)銷售商1可以向預(yù)定軟件銷售商通知第一產(chǎn)品密鑰711及其關(guān)聯(lián)密鑰ID 2,并且向另一軟件銷售商通知第二產(chǎn)品密鑰712及其關(guān)聯(lián)密鑰ID 3。
通過如此提供根據(jù)軟件銷售商而不同的產(chǎn)品密鑰的消息,有可能防止另一軟件銷售商分析由特定軟件銷售商開發(fā)的軟件。
開發(fā)和產(chǎn)品密鑰的數(shù)目不局限于本實施例??梢詼?zhǔn)備多個開發(fā)密鑰。產(chǎn)品密鑰的數(shù)目可以為一個。
軟件銷售商2包括系統(tǒng)10。系統(tǒng)10主要包括微處理器100和外部存儲器200。軟件銷售商2保存從處理器開發(fā)銷售商1獲取的開發(fā)密鑰700和第一產(chǎn)品密鑰711。
當(dāng)開發(fā)軟件時,軟件銷售商2通過將調(diào)試器500連接到系統(tǒng)10,對正在開發(fā)的軟件執(zhí)行調(diào)試。此時,軟件銷售商2通過使用從處理器開發(fā)銷售商1獲取的開發(fā)密鑰700,對軟件執(zhí)行加密和解密。
當(dāng)作為產(chǎn)品發(fā)行軟件時,軟件銷售商向用戶終端3提供與第一產(chǎn)品密鑰711相關(guān)聯(lián)的ID 2以及通過使用第一產(chǎn)品密鑰711而加密的程序。
通過設(shè)置由軟件銷售商2提供的ID 2,用戶終端3可執(zhí)行通過使用第一產(chǎn)品密鑰711而加密的程序。用戶終端3具有類似于軟件銷售商2的配置。
圖2是示出包括在軟件銷售商2中的系統(tǒng)10的總體配置的方框圖。系統(tǒng)10包括微處理器100、外部存儲器200、用戶接口300、外部總線400和調(diào)試器500。
微處理器100包括處理器核心110、總線接口單元(BIU)130、調(diào)試器接口140和調(diào)試器訪問控制器142。BIU 130包括密鑰ID寄存器132、密鑰表133、加密和解密單元134和保護屬性添加器135。
外部存儲器200保存成為處理器核心110的執(zhí)行對象的程序。外部存儲器200保存明文程序、開發(fā)密鑰加密程序或第一產(chǎn)品密鑰加密程序。
明文程序是未經(jīng)加密的程序。開發(fā)密鑰加密程序是通過使用開發(fā)密鑰700而加密的程序。第一產(chǎn)品密鑰加密程序是通過使用第一產(chǎn)品密鑰711而加密的程序。
BIU 130通過外部總線400從外部存儲器200獲取明文程序、開發(fā)密鑰加密程序或第一產(chǎn)品密鑰加密程序。如果BIU 130獲取加密程序,則BIU 130對加密程序進行解密,并且將經(jīng)過解密的程序作為明文程序發(fā)送到處理器核心110。如果BIU 130獲取明文程序,則BIU 130按原樣將其發(fā)送到處理器核心110。處理器核心110執(zhí)行從BIU 130獲取的明文程序。調(diào)試器接口140連接到外界的調(diào)試器500。調(diào)試器訪問控制器142控制來自調(diào)試器500的訪問。
BIU 130包括密鑰ID寄存器132、密鑰表133、加密和解密單元134、以及保護屬性添加器135。
標(biāo)識當(dāng)對從外部存儲器200讀出的程序進行解密時要使用的對稱密鑰的密鑰ID設(shè)置在密鑰ID寄存器132中。該密鑰ID的值通過用戶接口300由用戶設(shè)置。如果從外部存儲器200讀出的程序是未經(jīng)加密的明文程序,則在密鑰ID寄存器132中設(shè)置“0”。
根據(jù)本實施例的用戶接口300對應(yīng)于權(quán)利要求中的對稱密鑰指定單元。
密鑰表133相互關(guān)聯(lián)地保存密鑰ID和對稱密鑰。圖3示意性地示出密鑰表133的數(shù)據(jù)配置。密鑰表133相互關(guān)聯(lián)地保存標(biāo)識要在加密和解密時使用的對稱密鑰的密鑰ID和對稱密鑰。本實施例中的密鑰表133保存開發(fā)密鑰700、第一產(chǎn)品密鑰711、第二產(chǎn)品密鑰712和第三產(chǎn)品密鑰713。開發(fā)密鑰700與密鑰ID“1”相關(guān)聯(lián)。與設(shè)置在密鑰ID寄存器132中的密鑰ID相關(guān)聯(lián)的對稱密鑰可以通過利用密鑰表133來確定。
根據(jù)本實施例的密鑰表133對應(yīng)于權(quán)利要求中的對稱密鑰存儲單元和密鑰類型表。
保存在密鑰表133中的密鑰ID是不同于“0”的值。因此,可以根據(jù)設(shè)置在密鑰ID寄存器132中的值是否為“0”來確定對象程序是否是明文程序。
如果不同于“0”的值設(shè)置在密鑰ID寄存器132中,則從外部存儲器200獲取的程序是加密程序,因此加密和解密單元134通過使用密鑰表133來確定與設(shè)置在密鑰ID寄存器132中的密鑰ID相關(guān)聯(lián)的對稱密鑰。加密和解密單元134通過使用所確定的對稱密鑰對加密程序進行解密,并且獲得明文程序。如果密鑰ID寄存器132中設(shè)置了“0”,則對象程序是明文程序,因此加密和解密單元134不進行解密。
保護屬性添加器135添加從外部存儲器200獲取的程序的保護屬性。圖4示出當(dāng)保護屬性添加器135添加保護屬性時所使用的保護屬性確定表136。
如果密鑰ID寄存器132中設(shè)置了“0”,則保護屬性添加器135向?qū)?yīng)的程序添加表示無保護的保護屬性“0”,如圖4所示。如果密鑰ID寄存器132中設(shè)置了“1”,則保護屬性添加器135以相同的方式向?qū)?yīng)的明文程序添加表示保護的保護屬性“1”。
換句話說,保護屬性添加器135向產(chǎn)品密鑰加密程序添加表示保護的保護屬性,并且向未經(jīng)加密的明文程序和開發(fā)密鑰加密程序提供表示無保護的保護屬性。這樣,保護屬性添加器135可以僅向產(chǎn)品密鑰加密程序提供表示保護的保護屬性。
調(diào)試器訪問控制器142根據(jù)保護屬性控制從調(diào)試器接口140對程序的訪問。具體地說,調(diào)試器訪問控制器142禁止訪問關(guān)于添加了表示保護的保護屬性的程序的信息。
根據(jù)本實施例的軟件銷售商2可以保存相同的程序作為開發(fā)密鑰加密程序和產(chǎn)品密鑰加密程序。分別向開發(fā)密鑰加密程序和產(chǎn)品密鑰加密程序添加表示無保護和保護的保護屬性。換句話說,調(diào)試器訪問控制器142可以僅禁止對產(chǎn)品密鑰加密程序的訪問,而允許對開發(fā)密鑰加密程序的訪問。結(jié)果,調(diào)試器500可以僅對明文或通過使用開發(fā)密鑰而加密的程序進行調(diào)試。
圖5是示出當(dāng)軟件銷售商2將正被開發(fā)的程序從外部存儲器200讀入到微處理器100中時所執(zhí)行的讀取處理的流程圖。首先,用戶將要由處理器核心110執(zhí)行的程序存儲到外部存儲器200中。在程序執(zhí)行之前,用戶在BIU 130內(nèi)的密鑰ID寄存器132中設(shè)置密鑰ID(步驟S100和S102)。這里,在通過用戶接口300由用戶發(fā)出的命令下執(zhí)行對稱密鑰設(shè)置。
處理器核心110通過利用取指令而將對地址X中的數(shù)據(jù)的讀取請求發(fā)送到BIU 130(步驟S104)。
BIU 130從外部存儲器200讀出與地址X相關(guān)聯(lián)的程序E2[C(X)]。如果此時密鑰ID寄存器132中設(shè)置了不同于“0”的值(步驟S108為否),則加密和解密單元134通過使用從密鑰表133獲得的對稱密鑰對所讀出的加密程序E2[C(X)]執(zhí)行解密處理,并且獲得明文程序C(X)(步驟S110)。這樣,如果密鑰ID寄存器132中設(shè)置了不同于“0”的值,則對象程序采取加密的形式,因此通過解密來獲得明文程序。
另一方面,如果密鑰ID寄存器132中設(shè)置了值“0”(步驟S108為是),則不執(zhí)行解密處理,并且處理進入后述步驟S112。這樣,如果密鑰ID寄存器132中設(shè)置了值“0”,則對象程序是明文程序,因此沒有必要進行解密。
另一方面,保護屬性添加器135根據(jù)密鑰ID寄存器132中的值向要保存在內(nèi)部存儲器120中的明文程序添加保護屬性(步驟S112)。
具體地說,如果密鑰ID寄存器132中設(shè)置了值“0”,即如果對象是明文程序,則保護屬性添加器135向明文程序添加表示無保護的保護屬性“0”。如果密鑰ID寄存器132中設(shè)置了值“1”,即如果對象是作為開發(fā)密鑰加密程序而獲得的程序,則保護屬性添加器135以相同的方式向該程序添加表示無保護的保護屬性“0”。如果密鑰ID寄存器132中設(shè)置了既不是“0”也不是“1”的值,即如果對象是產(chǎn)品密鑰加密程序,則保護屬性添加器135向該程序添加表示保護的保護屬性“1”。
加密和解密單元134將明文程序發(fā)送到處理器核心110(步驟S114)。由于前述處理器,使處理器核心110進入可執(zhí)行程序的狀態(tài)。
具體地說,當(dāng)使用調(diào)試功能開發(fā)產(chǎn)品時,軟件銷售商首先存儲通過使用專用于調(diào)試的開發(fā)密鑰700而加密的開發(fā)密鑰加密程序。另一方面,在不同于產(chǎn)品開發(fā)的其他時候,例如程序發(fā)行,軟件銷售商存儲通過使用第一產(chǎn)品密鑰711而加密的產(chǎn)品密鑰加密程序。
對于開發(fā)密鑰加密程序,用戶在密鑰ID寄存器132中設(shè)置密鑰ID“1”(步驟S102)。因此,加密和解密單元134對開發(fā)密鑰加密程序進行解密,并且獲得明文程序(步驟S108為否,以及步驟S110)。保護屬性添加器135向明文程序添加表示無保護的保護屬性(步驟S112)。
對于第一產(chǎn)品密鑰加密程序,用戶在密鑰ID寄存器132中設(shè)置密鑰ID“2”(步驟S102)。因此,加密和解密單元134對第一產(chǎn)品密鑰加密程序進行解密,并且獲得明文程序(步驟S108為否,以及步驟S110)。保護屬性添加器135向明文程序添加表示保護的保護屬性(步驟S112)。
圖6是示出當(dāng)調(diào)試器500讀取通過參照圖5所述的處理而發(fā)送到處理器核心110的明文程序時所執(zhí)行的讀取處理的流程圖。
調(diào)試器500通過調(diào)試器接口140將對保存在處理器核心110中的寄存器信息的讀取請求發(fā)送到調(diào)試器訪問控制器142。當(dāng)通過調(diào)試器接口140從調(diào)試器500接收到該讀取請求(步驟S200)時,調(diào)試器訪問控制器142從保護屬性添加器135獲取與讀取請求對應(yīng)的程序的保護屬性。
如果該程序未被添加表示無保護的保護屬性(步驟S202為否),則調(diào)試器訪問控制器142將寄存器信息讀取請求輸出到處理器核心110(步驟S204)。調(diào)試器訪問控制器142從處理器核心110獲取寄存器信息作為對讀取請求的回復(fù)(步驟S206)。調(diào)試器訪問控制器142通過調(diào)試器接口140向調(diào)試器500添加從處理器核心110獲取的程序(步驟S208)。
另一方面,如果有關(guān)讀取請求的程序添加了表示保護的保護屬性(步驟S202為是),則調(diào)試器訪問控制器142使來自調(diào)試器500的請求無效(步驟S210)。這樣,完成讀取處理。
作為另一個例子,調(diào)試器訪問控制器142可以輸出錯誤信號到調(diào)試器500,而不是使來自調(diào)試器500的請求無效。
作為另一個例子,調(diào)試器訪問控制器142可以對程序進行加密,然后添加它。具體地說,由于開發(fā)密鑰加密程序添加了表示無保護的保護屬性(步驟S202為否),則調(diào)試器訪問控制器142允許對寄存器信息的讀出,并且將明文的寄存器值輸出到調(diào)試器500(步驟S204到S210)。另一方面,由于第一產(chǎn)品密鑰加密程序添加了表示保護的保護屬性(步驟202為是),則調(diào)試器訪問控制器142讀出寄存器信息,通過使用第一產(chǎn)品密鑰對寄存器信息進行加密,并且將經(jīng)過加密的寄存器信息輸出到調(diào)試器500。
這樣,調(diào)試器訪問控制器142禁止在調(diào)試器500中讀出由添加了表示保護的保護屬性的程序使用的寄存器信息。因此,有可能防止第三人通過使用調(diào)試器500來非法分析明文程序。應(yīng)當(dāng)注意的是,第三人表示與開發(fā)受保護軟件的開發(fā)者不同的另一用戶或另一軟件開發(fā)者。
通過使用開發(fā)密鑰而加密的開發(fā)密鑰加密程序是假定它通過調(diào)試器500進行分析而準(zhǔn)備的程序。開發(fā)密鑰加密程序添加了表示無保護的保護屬性。調(diào)試器500可獲取開發(fā)密鑰加密程序。
禁止通過調(diào)試器500分析程序的第一產(chǎn)品密鑰加密程序。另一方面,允許調(diào)試器500分析同一程序的開發(fā)密鑰加密程序。結(jié)果,有可能防止第三人通過使用調(diào)試器500來非法分析程序,而不限制調(diào)試器500分析該程序。
頻繁地,軟件銷售商2對由其開發(fā)的程序進行加密,然后發(fā)行。因此,在程序開發(fā)的時候,也希望以加密程序作為處理對象。因為這使得有可能進行開發(fā)同時適當(dāng)?shù)乜紤]解密處理中的延遲。
根據(jù)本發(fā)明實施例的軟件銷售商2使用第一產(chǎn)品密鑰加密程序來開發(fā)軟件。因此,這使得有可能進行開發(fā)同時適當(dāng)?shù)乜紤]解密處理中的延遲。
對在用戶終端3中執(zhí)行的處理加以說明。在用戶終端3中執(zhí)行的處理類似于在軟件銷售商2中執(zhí)行且參照圖5和6所述的處理。
以下具體說明將從軟件銷售商2獲取的程序讀入到由用戶終端3執(zhí)行的微處理器100中的讀取處理。
首先,用戶終端3從軟件銷售商2獲取在軟件銷售商2中開發(fā)的程序作為通過使用第一產(chǎn)品密鑰711而加密的第一產(chǎn)品密鑰加密程序,并且將第一產(chǎn)品密鑰加密程序存儲在外部存儲器200中。
在執(zhí)行第一產(chǎn)品密鑰加密程序之前,用戶終端3在BIU 130內(nèi)的密鑰ID寄存器132中設(shè)置密鑰ID(步驟S100和S102)。從軟件銷售商2獲取的程序是通過使用第一產(chǎn)品密鑰711而加密的第一產(chǎn)品密鑰加密程序。因此,加密和解密單元134對第一產(chǎn)品密鑰加密程序進行解密,并且獲得明文程序(步驟108為否,以及步驟S110)。在步驟S112,保護屬性添加器135向明文程序添加表示保護的保護屬性。
當(dāng)用戶終端3獲取程序時所執(zhí)行的其他處理類似于在軟件銷售商2中執(zhí)行且參照圖5所述的處理。
參照圖6說明用戶終端3中的調(diào)試器500讀出正在執(zhí)行的程序的寄存器信息所執(zhí)行的讀取處理。
當(dāng)通過調(diào)試器接口140從調(diào)試器500獲取讀取請求(步驟S200)時,調(diào)試器訪問控制器142從保護屬性添加器135獲取對應(yīng)于讀取請求的程序的保護屬性。對應(yīng)于讀取請求的程序是第一產(chǎn)品密鑰加密程序,并且添加了表示保護的保護屬性(步驟202為是)。因此,處理進入步驟S210。換句話說,使來自調(diào)試器500的請求無效。
這樣,向用戶終端3提供通過使用第一產(chǎn)品密鑰711而加密的第一產(chǎn)品密鑰加密程序。因此,有可能防止通過使用用戶終端3中的調(diào)試器500來非法分析程序。
本發(fā)明已參照實施例進行了說明。各種更改或改進可應(yīng)用于該實施例。
在第一實施例中,由軟件銷售商2和用戶終端3保存的開發(fā)密鑰700和第一產(chǎn)品密鑰711由處理器開發(fā)銷售商1發(fā)布。在第一變型例子中,開發(fā)密鑰700的值可由軟件銷售商2和用戶終端3的用戶改變。此時,用戶通過用戶接口300設(shè)置任意開發(fā)密鑰。此時,可以分別提供開發(fā)密鑰的密鑰表和產(chǎn)品密鑰的密鑰表。
根據(jù)本實施例的用戶接口300對應(yīng)于權(quán)利要求中的開發(fā)密鑰生成器。
因此,即使當(dāng)對加密程序進行解密時所產(chǎn)生的延遲根據(jù)對稱密鑰的值而不同,開發(fā)者也可自由地設(shè)置對稱密鑰的值。結(jié)果,有可能更準(zhǔn)確地進行因延遲而引起的錯誤的分析。
開發(fā)者可以設(shè)置與產(chǎn)品密鑰相同的密鑰值。通過如此設(shè)置相同于產(chǎn)品密鑰的值,可以在相同于作為產(chǎn)品發(fā)行程序時的條件下進行軟件開發(fā)。
即使設(shè)置相同于產(chǎn)品密鑰的密鑰值,通過防止由用戶3保存的處理器內(nèi)的產(chǎn)品密鑰為相同的密鑰,也不由于設(shè)置相同的密鑰值而引起安全性問題。
在第一實施例中,保護屬性添加器135向程序添加作為保護屬性的“0”或“1”。用于此目的的處理不限于此,只要可確定程序的保護屬性即可。在第二變型例子中,例如,可使用在密鑰ID寄存器132中設(shè)置的值作為保護屬性。此時,調(diào)試器訪問控制器142執(zhí)行根據(jù)密鑰ID的值識別保護屬性的處理。作為另一例子,可使用對稱密鑰的值作為保護屬性。
在第一實施例中,與處理器核心110分開且獨立地提供調(diào)試器訪問控制器142。然而,在第三變型例子中,可以在處理器核心110中提供調(diào)試器訪問控制器142。
圖7示出根據(jù)第二實施例的軟件銷售商2中的系統(tǒng)10。根據(jù)第二實施例的軟件銷售商2中的系統(tǒng)10包括DMA控制器600、內(nèi)部存儲器120、處理器核心110和調(diào)試器接口140。
調(diào)試器接口140連接到外界的調(diào)試器500。響應(yīng)來自調(diào)試器的請求,調(diào)試器接口140在處理器核心110、內(nèi)部存儲器120和DMA控制器600之間分配這些請求。當(dāng)接收到與這些請求相關(guān)聯(lián)的執(zhí)行結(jié)果時,調(diào)試器接口將執(zhí)行結(jié)果返回給調(diào)試器500。
DMA控制器600包括密鑰ID寄存器132、密鑰表133、加密和解密單元134、以及保護屬性添加器135。DMA控制器600中的各個單元具有與根據(jù)第一實施例的BIU 130中的各個單元類似的功能配置。換句話說,DMA控制器600中的密鑰表133保存開發(fā)密鑰700、第一產(chǎn)品密鑰711、第二產(chǎn)品密鑰712和第三產(chǎn)品密鑰713。
加密和解密單元134使內(nèi)部存儲器120保存經(jīng)過解密的明文程序。處理器核心110讀出并執(zhí)行保存在內(nèi)部存儲器120中的明文程序。
內(nèi)部存儲器120包括保存程序的指令存儲器單元121和保存數(shù)據(jù)的數(shù)據(jù)存儲器單元125。指令存儲器單元121包括保護屬性存儲器122、指令存儲器123和指令存儲器訪問控制器124。
指令存儲器123保存從加密和解密單元134獲取的明文程序。保護屬性存儲器122保存添加到保存在指令存儲器123中的明文程序的保護屬性。指令存儲器訪問控制器124控制從外界對指令存儲器123的訪問。
圖8示意性地示出指令存儲器訪問控制器124中的訪問控制規(guī)則。如果請求類型是由處理器核心110執(zhí)行的取指令,并且所請求的程序添加了表示保護的保護屬性,則如圖8所示允許訪問。如果請求類型是不同于由處理器核心110執(zhí)行的取指令的其他訪問請求,并且所請求的程序添加了表示保護的保護屬性,則限制訪問。換句話說,輸出錯誤信號。如果所請求的程序添加了表示無保護的保護屬性,則限制訪問而不管請求類型。
因此,通過限制來自不同于特定請求類型的其他請求類型的訪問,有可能防止第三人非法讀出明文程序。
通過限制對添加了表示保護的保護屬性的程序的訪問,有可能防止非法讀出通過使用產(chǎn)品密鑰而加密的程序。
圖9是示出當(dāng)軟件銷售商2從外部存儲器200獲取正被開發(fā)的程序時所執(zhí)行的處理的流程圖。首先,用戶將要由處理器核心110執(zhí)行的程序存儲在外部存儲器200中?,F(xiàn)在假定,該程序存儲在外部存儲器200上的地址X到Y(jié)中。
在執(zhí)行程序之前,密鑰ID設(shè)置在DMA控制器600內(nèi)的密鑰ID寄存器132中(步驟S100和S102)。根據(jù)通過用戶接口300由用戶給出的命令來執(zhí)行對稱密鑰的設(shè)置。
處理器核心110將DMA傳輸請求發(fā)送到DMA控制器600(步驟S104)。DMA傳輸請求是請求將外部存儲器200的地址X到Y(jié)中的數(shù)據(jù)傳輸?shù)絻?nèi)部存儲器的信息。
DMA控制器600從外部存儲器200讀出與地址X-Y相關(guān)聯(lián)的程序E2[C(X-Y)](步驟S106)。以下,在步驟S108到S112執(zhí)行的處理類似于根據(jù)第一實施例的軟件銷售商2中在步驟S108到S112執(zhí)行的處理。
當(dāng)在步驟S112添加了保護屬性時,加密和解密單元134將明文程序發(fā)送到內(nèi)部存儲器120(步驟S150)。另外,保護屬性添加器135將添加到明文程序的保護屬性發(fā)送到內(nèi)部存儲器120(步驟S152)。
內(nèi)部存儲器120使指令存儲器123保存明文程序C(X-Y),其是從DMA控制器600發(fā)送的解密結(jié)果(步驟S154)。內(nèi)部存儲器120使保護屬性存儲器122保存保護屬性(步驟S156)。
如果完成了將明文程序從DMA控制器600傳輸?shù)絻?nèi)部存儲器120,則DMA控制器600向處理器核心110通知完成了DMA傳輸(S158)。作為直到此時所述的處理的結(jié)果,程序保存在內(nèi)部存儲器120中,并且處理器核心110進入可執(zhí)行程序的狀態(tài)。
處理器核心110通過利用取指令來請求程序讀出(步驟S160)。當(dāng)獲取讀取請求時,內(nèi)部存儲器120將所請求的程序輸出到處理器核心110(步驟S162)。
如果對象是開發(fā)密鑰加密程序,則軟件銷售商2在密鑰ID寄存器132中設(shè)置密鑰ID“1”(步驟S102)。因此,加密和解密單元134執(zhí)行解密處理,并且獲得明文程序(步驟S108為否,以及步驟S110)。保護屬性添加器135向明文程序添加表示無保護的保護屬性(步驟S112)。
另一方面,如果對象是第一產(chǎn)品密鑰加密程序,則軟件銷售商2在密鑰ID寄存器132中設(shè)置密鑰ID“2”(步驟S102)。此時,加密和解密單元134也執(zhí)行解密處理,并且獲得明文程序(步驟S108為否,以及步驟S110)。保護屬性添加器135向明文程序添加表示保護的保護屬性(步驟S112)。
圖10是示出當(dāng)讀出通過執(zhí)行參照圖8所述的處理而保存在內(nèi)部存儲器120中的程序時所執(zhí)行的讀取處理的流程圖。當(dāng)獲取指示讀出保存在指令存儲器123中的程序的讀取請求(步驟S200)時,內(nèi)部存儲器120中的指令存儲器訪問控制器124確定讀取請求輸出的請求類型是否是由處理器核心110執(zhí)行的取指令。具體地說,請求類型可根據(jù)例如物理布線(physical wiring)來確定。如果請求類型是由處理器核心110執(zhí)行的取指令(步驟S202為是),則指令存儲器訪問控制器124將保存在指令存儲器123中的明文程序輸出到處理器核心110(步驟S212)。
如果請求類型不是由處理器核心110執(zhí)行的取指令(步驟S202為否),則加密和解密單元134確定所請求的明文程序的保護屬性(步驟S204)。如果所請求的明文程序添加了表示保護的保護屬性(步驟S206為是),則輸出錯誤信號(步驟S210)。另一方面,如果所請求的明文程序添加了表示無保護的保護屬性(步驟S206為否),則輸出明文程序(步驟S212)。這樣,完成讀取處理。
對當(dāng)處理器核心110通過利用取指令發(fā)出對內(nèi)部存儲器120的讀取請求時所執(zhí)行的操作加以具體說明。如果內(nèi)部存儲器120中的指令存儲器訪問控制器124判斷請求是來自核心的取指令請求,則指令存儲器訪問控制器124根據(jù)參照圖8所述的規(guī)則將從指令存儲器123讀出的明文程序C(X-Y)發(fā)送到處理器核心110(步驟S202為是,以及步驟S212)。處理器核心110執(zhí)行所獲取的明文程序。
如果請求類型不是由處理器核心110執(zhí)行的取指令(步驟S202為否),并且保護屬性是表示無保護的“0”(步驟S206為否),則輸出明文程序(步驟S212)。
如果請求類型不是由處理器核心110執(zhí)行的取指令(步驟S202為否),并且保護屬性是表示保護的“1”(步驟S206為是),則輸出錯誤信號(步驟S210)。
如果對象是開發(fā)密鑰加密程序,則它添加了表示無保護的保護屬性(步驟S202為否),因此指令存儲器訪問控制器124允許訪問通過對開發(fā)密鑰加密程序進行解密而獲得的明文程序(步驟S204到S208)。
另一方面,如果對象是第一產(chǎn)品密鑰加密程序,則它添加了表示保護的保護屬性(步驟S202為是),因此指令存儲器訪問控制器124使該請求無效(步驟S210)。
因此,對于與由處理器核心110執(zhí)行的取指令不同的其他請求類型,內(nèi)部存儲器120中的指令存儲器訪問控制器124可以禁止讀出添加了表示保護的保護屬性的明文程序。換句話說,可以禁止讀出產(chǎn)品密鑰加密程序。
另一方面,開發(fā)密鑰加密程序添加了表示無保護的保護屬性,因此調(diào)試器500可獲取開發(fā)密鑰加密程序。因此,可以通過使用開發(fā)密鑰加密程序來進行程序開發(fā)。
因此,通過準(zhǔn)備產(chǎn)品密鑰加密程序和開發(fā)密鑰加密程序,有可能防止第三人非法讀出程序而不限制程序開發(fā)。
作為通過使用調(diào)試器500來分析軟件的方法之一,可以考慮執(zhí)行通過調(diào)試器接口140從調(diào)試器500對保存在內(nèi)部存儲器120中的明文程序的讀取請求的方法。
然而,此時,請求類型不是由處理器核心執(zhí)行的取指令。根據(jù)參照圖10所述的讀取處理,讀取添加了表示保護的保護屬性的明文程序受到限制。換句話說,指令存儲器訪問控制器124輸出錯誤信號到調(diào)試器接口140。因此,可以防止通過調(diào)試器500讀出明文程序。
作為另一種方法,可以考慮由第三人執(zhí)行的通過DMA控制器600非法讀出明文程序的方法。例如,它可以通過調(diào)試器500將DMA傳輸請求發(fā)布到DMA控制器600來實現(xiàn)。該DMA傳輸請求請求將保存在內(nèi)部存儲器120中的程序從內(nèi)部存儲器120中的區(qū)域傳輸?shù)酵獠看鎯ζ?00中的合適區(qū)域。
此時,響應(yīng)來自調(diào)試器500的DMA傳輸請求,DMA控制器600將傳輸請求發(fā)布到內(nèi)部存儲器120。具體地說,DMA控制器600請求從內(nèi)部存儲器120中的指令存儲器123到外部存儲器200的傳輸。
然而,此時,請求類型不是由處理器核心110執(zhí)行的取指令。因此,根據(jù)參照圖10所述的讀取處理,讀出添加了表示保護的保護屬性的程序受到限制。換句話說,輸出錯誤信號。
這樣,調(diào)試器500可以不僅通過調(diào)試器接口140而且通過DMA控制器600來訪問。然而,即使在此時,也可防止第三人非法讀出程序。
圖11是示出當(dāng)命令在明文程序已經(jīng)保存在指令存儲器123中的狀態(tài)下寫入新明文程序時,即當(dāng)命令覆寫時所執(zhí)行的寫入處理的流程圖。
當(dāng)獲取寫入請求(步驟S300)時,內(nèi)部存儲器120確定添加到已經(jīng)保存的明文程序的保護屬性(步驟S302)。如果明文程序添加了表示保護的保護屬性“1”(步驟S304為是),則內(nèi)部存儲器120清除已經(jīng)保存了程序的指令存儲器123中的所有內(nèi)容(步驟S306)。內(nèi)部存儲器120將由寫入請求指示的程序?qū)懭氲街噶畲鎯ζ?23中(步驟S308)。
另一方面,如果明文程序添加了表示無保護的保護屬性“0”(步驟S304為否),則處理進入步驟S308。換句話說,將新明文程序?qū)懭氲街噶畲鎯ζ?23中而不清除指令存儲器123的內(nèi)容(步驟S308)。因此,完成寫入處理。在步驟S308執(zhí)行的寫入處理類似于在獲取程序時執(zhí)行且參照圖9所述的處理。
如果內(nèi)部存儲器120已經(jīng)存儲具有表示保護的保護屬性的程序,并且如果允許對程序的覆寫,則有可能訪問已經(jīng)存儲了該程序的區(qū)域,因此有可能讀取已經(jīng)保存的程序??梢钥紤]第三人通過利用該事實來非法讀出明文程序。
然而,如果已經(jīng)保存添加了表示保護的保護屬性的程序,則在開始將程序?qū)懭氲街噶畲鎯ζ?23中的處理之前,清除已經(jīng)保存在指令存儲器123中的所有程序,然后寫入新的明文程序,如參照圖11所述。因此,有可能防止非法讀出已經(jīng)保存的程序。由于每個產(chǎn)品密鑰加密程序添加了表示保護的保護屬性,因此有可能防止非法讀出產(chǎn)品密鑰加密程序。
軟件銷售商2中的其余配置和處理類似于根據(jù)第一實施例的軟件銷售商2中的配置和處理。根據(jù)第二實施例的用戶終端3中的配置和處理類似于根據(jù)第二實施例的軟件銷售商2中的配置和處理。
參照圖10說明當(dāng)調(diào)試器500讀出程序時在用戶終端3中執(zhí)行的處理。調(diào)試器接口140從調(diào)試器500獲取讀取請求(步驟S200)。指令存儲器訪問控制器124確定程序的保護屬性。保存在用戶終端3內(nèi)的指令存儲器123中的程序是第一產(chǎn)品密鑰加密程序。該程序添加了表示保護的保護屬性。因此,與請求類型無關(guān),處理進入步驟S210,并且輸出錯誤信號。
本發(fā)明已參照本實施例進行了說明。各種更改或改進可應(yīng)用于本實施例。
在第一變型例子中,還有可能指令存儲器123保存多個明文程序并且以明文程序為單元來限制訪問。圖12示意性地示出此時保護屬性存儲器122的數(shù)據(jù)配置。如圖12所示,保護屬性存儲器122相互關(guān)聯(lián)地保存標(biāo)識明文程序的程序ID和保護屬性。每個程序ID是表示存儲了特定明文程序的地址范圍的標(biāo)識符。結(jié)果,可以通過以程序為單元來限制訪問。
在第一變型例子中,指令存儲器訪問控制器124通過以保存了每個明文程序的區(qū)域為單元,根據(jù)保護屬性存儲器122中的關(guān)聯(lián)關(guān)系限制對指令存儲器123的訪問。
例如,假定獲取對與程序ID“0001”相關(guān)聯(lián)的區(qū)域的讀取請求。如圖12所示,由程序ID“0001”標(biāo)識的明文程序添加了表示保護的保護屬性。因此,指令存儲器123限制對由程序ID“0001”標(biāo)識的明文程序的訪問。另一方面,允許對由程序ID“0002”標(biāo)識的受保護程序的訪問。具體地說,如果獲取具有程序ID“0001”的讀取請求,則根據(jù)圖10所示的讀取處理來確定是輸出明文程序還是輸出錯誤信號,因為由程序ID“0001”標(biāo)識的明文程序添加了表示保護的保護屬性。
另一方面,如果獲取具有程序ID“0002”的讀取請求,則根據(jù)圖10所示的讀取處理輸出錯誤信號,因為由程序ID“0002”標(biāo)識的明文程序添加了表示無保護的保護屬性。
如果獲取具有程序ID“0001”的寫入請求,則根據(jù)圖11所示的寫入處理,在將新程序?qū)懭氲揭呀?jīng)保存了明文程序的區(qū)域中之前清除已經(jīng)保存的明文程序,因為由程序ID“0001”標(biāo)識的明文程序添加了表示保護的保護屬性。
另一方面,如果獲取具有程序ID“0002”的寫入請求,則根據(jù)圖11所示的寫入處理,將新程序?qū)懭氲揭呀?jīng)保存了明文程序的區(qū)域中,而不清除已經(jīng)保存的明文程序,因為由程序ID“0002”標(biāo)識的明文程序添加了表示無保護的保護屬性。
這樣,即使同時保存添加了表示保護的保護屬性的明文程序和添加了表示無保護的保護屬性的明文程序,也可以僅限制對添加了表示保護的保護屬性的明文程序的訪問。因此,有可能防止第三人非法讀出預(yù)定明文程序。
在第一變型例子中,保護屬性存儲器122相互關(guān)聯(lián)地保存程序ID和保護屬性。相反,作為第二變型例子,保護屬性存儲器122可以相互關(guān)聯(lián)地保存指令存儲器123中的存儲體位置和保護屬性。
圖13示意性地第二變型例子中的保護屬性存儲器122的數(shù)據(jù)配置。如圖13所示,保護屬性存儲器122相互關(guān)聯(lián)地保存指令存儲器123中的存儲體位置和向保存在相應(yīng)存儲體位置中的明文程序添加的保護屬性。在第二變型例子中,指令存儲器訪問控制器124根據(jù)存儲體位置與保護屬性之間的關(guān)聯(lián)關(guān)系,通過以保存每個程序的區(qū)域為單元來控制對指令存儲器123的訪問。
例如,如果存儲體1與表示保護的保護屬性相關(guān)聯(lián)并且由程序ID“0001”的明文程序保存在存儲體1中,則限制對由ID“0001”標(biāo)識的明文程序的訪問。如果由程序ID“0002”標(biāo)識的明文程序保存在存儲體2中,則允許對由程序ID“0002”標(biāo)識的明文程序的訪問。
這樣,即使指令存儲器123同時保存多個程序,也有可能根據(jù)第二變型例子通過以存儲體為單元來防止第三人非法讀出明文程序。
在第二實施例中,說明了對程序的訪問控制。然而,相反,作為第三變型例子,可以執(zhí)行對數(shù)據(jù)的訪問控制。圖14是示出根據(jù)第三變型例子的系統(tǒng)10的總體配置的圖。數(shù)據(jù)存儲器單元125以與指令存儲器單元121相同的方式包括保護屬性存儲器126、數(shù)據(jù)存儲器127和數(shù)據(jù)存儲器訪問控制器128。
保護屬性存儲器126在配置和處理上類似于保護屬性存儲器122。數(shù)據(jù)存儲器127在配置和處理上類似于指令存儲器123。數(shù)據(jù)存儲器訪問控制器128在配置和處理上類似于指令存儲器訪問控制器124。
作為另一例子,可以執(zhí)行對程序的訪問控制和對數(shù)據(jù)的訪問控制。這樣,訪問控制的對象不限于這些實施例中的對象。
如果如同在第三變型例子中一樣執(zhí)行對數(shù)據(jù)的訪問控制,則如圖11所示,根據(jù)添加到數(shù)據(jù)的保護屬性,在寫入處理中確定是否在寫入數(shù)據(jù)之前清除已經(jīng)保存的數(shù)據(jù)。然而,作為第四變型例子,除了保護屬性之外,還可以根據(jù)請求源來確定是否清除數(shù)據(jù)。
圖15是示出根據(jù)第四實施例的寫入處理的流程圖。如果所獲取的寫入請求的請求類型是來自處理器核心的寫入請求(步驟S320為是),則如圖15所示處理進入步驟S308。換句話說,如果請求類型是來自處理器核心110的寫入請求,則寫入新的明文程序而不執(zhí)行清除處理。
因此,通過根據(jù)請求類型控制訪問,可以高效地控制僅僅來自預(yù)定請求類型的訪問,而不控制來自其他請求類型的訪問。
在第二實施例中,當(dāng)獲取對添加了表示保護的保護屬性的明文程序的讀取請求時,作為訪問控制禁止讀出。然而,相反,作為第五變型例子,可以對程序進行加密和添加。因此,當(dāng)執(zhí)行訪問控制時,不作為明文讀取任何程序。結(jié)果,有可能防止第三人非法讀出明文程序。
當(dāng)覆寫已經(jīng)保存明文程序的區(qū)域中的程序時,在第二實施例中根據(jù)程序的保護屬性確定是否在覆寫處理之前清除已經(jīng)保存的程序。然而,另外,可以根據(jù)來自用戶的命令來確定是否清除程序。
具體地說,在對已經(jīng)保存的明文程序執(zhí)行訪問控制時,只有當(dāng)通過用戶接口300從用戶接受指示清除已經(jīng)保存的明文程序的命令時,才可清除明文程序。否則,可以輸出錯誤信號。結(jié)果,除非用戶清除明文程序,否則不能執(zhí)行寫入,并且可以保護明文程序。
在第二實施例中,DMA控制器600包括保護屬性添加器135。相反,作為第七變型例子,內(nèi)部存儲器120可以包括保護屬性添加器135。此時,DMA控制器600將保存在密鑰ID寄存器132中的密鑰ID輸出到內(nèi)部存儲器120。在內(nèi)部存儲器120中,保護屬性添加器135根據(jù)從密鑰ID寄存器132獲取的密鑰ID添加保護屬性。保護屬性添加器135使保護屬性存儲器122保存所添加的保護屬性。
圖16是示出根據(jù)第三實施例的用戶終端3的總體配置的方框圖。用戶終端3包括微處理器100、外部存儲器200、用戶接口300、外部總線400和調(diào)試器500。
微處理器100包括處理器核心110、調(diào)試器接口140、公開密鑰處理器170、BIU 602、高速緩存控制器180和安全上下文切換單元190。
公開密鑰處理器170包括秘密密鑰表172和分發(fā)密鑰(distributedkey)解密單元174。圖17是示出秘密密鑰表172的數(shù)據(jù)配置的示意圖。秘密密鑰表172相互關(guān)聯(lián)地保存多個秘密密鑰和公開密鑰。另外,秘密密鑰表172與公開密鑰相關(guān)聯(lián)地保存標(biāo)識公開密鑰的公開密鑰ID。
在本實施例中,與公開密鑰ID“1”相關(guān)聯(lián)地保存開發(fā)公開密鑰和開發(fā)秘密密鑰,并且與公開密鑰ID“2”相關(guān)聯(lián)地保存產(chǎn)品公開密鑰和產(chǎn)品秘密密鑰。
分發(fā)密鑰解密單元174通過使用由用戶提供的基于用戶保存在秘密密鑰表172中的秘密密鑰對分發(fā)密鑰進行解密,并且獲得公開密鑰。用戶終端獲取公開密鑰作為分發(fā)密鑰。
以下,使用通過使用開發(fā)公開密鑰而加密的分發(fā)密鑰作為開發(fā)分發(fā)密鑰,并且使用通過使用產(chǎn)品公開密鑰而加密的分發(fā)密鑰作為產(chǎn)品分發(fā)密鑰。使用通過使用包括在開發(fā)分發(fā)密鑰中的公開密鑰而加密的程序作為開發(fā)密鑰加密程序,并且使用通過使用包括在產(chǎn)品分發(fā)密鑰中的公共密鑰而加密的程序作為產(chǎn)品密鑰加密程序。
BIU 602包括公共密鑰表139、公開密鑰ID確定器137、保護屬性添加器135、以及加密和解密單元134。
圖18是示出公共密鑰表139的數(shù)據(jù)配置的示意圖。公共密鑰表139相互關(guān)聯(lián)地保存任務(wù)ID、公開密鑰ID和公共密鑰。公開密鑰處理器170提供任務(wù)ID的消息。
當(dāng)從公開密鑰處理器170接收到指定的任務(wù)ID時,加密和解密單元134通過使用在公共密鑰表139中與指定的任務(wù)ID相關(guān)聯(lián)的公共密鑰對加密程序進行解密,并且獲得明文程序。加密和解密單元134將明文程序輸出到高速緩存控制器180。
當(dāng)從公開密鑰處理器170接收到指定的任務(wù)ID時,公開密鑰ID確定器137確定與指定的任務(wù)ID相關(guān)聯(lián)的公開密鑰ID。
保護屬性添加器135根據(jù)由公開密鑰ID確定器137確定的公開密鑰ID來添加保護屬性。具體地說,保護屬性添加器135向明文程序添加表示無保護的保護屬性“0”。保護屬性添加器135也向?qū)?yīng)于開發(fā)公開密鑰ID的程序添加表示無保護的保護屬性“0”。保護屬性添加器135向?qū)?yīng)于產(chǎn)品公開密鑰ID的程序添加表示保護的保護屬性“1”。保護屬性添加器135將保護屬性輸出到高速緩存控制器180。
高速緩存控制器180包括指令高速緩存182、指令高速緩存訪問控制器184、數(shù)據(jù)高速緩存186和數(shù)據(jù)高速緩存訪問控制器188。
圖19示意性地示出指令高速緩存182的數(shù)據(jù)配置。指令高速緩存182具有保存地址標(biāo)記、程序和保護屬性的區(qū)域。指令高速緩存訪問控制器184控制從外界對指令高速緩存182的訪問。換句話說,指令高速緩存訪問控制器184控制對保存在指令高速緩存182中的程序的讀取和寫入。
處理器核心110包括當(dāng)前任務(wù)ID寄存器112和通用寄存器114。當(dāng)前任務(wù)ID寄存器112保存正在執(zhí)行的任務(wù)的任務(wù)ID。通用寄存器114保存正在執(zhí)行的程序。
安全上下文切換單元190包括保存上下文的上下文緩沖器192和在處理器核心110和上下文緩沖器192之間執(zhí)行控制的上下文控制器194。當(dāng)發(fā)出中斷時,上下文控制器194讀出處理器核心110中的通用寄存器114的內(nèi)容,將這些內(nèi)容寫入到上下文緩沖器192中,并且清除通用寄存器114的內(nèi)容。當(dāng)發(fā)出指令以恢復(fù)任務(wù)時,上下文控制器194將存儲在上下文緩沖器192中的上下文恢復(fù)到通用寄存器114。
圖20示意性地示出用于指令高速緩存訪問控制器184中的訪問控制的規(guī)則。如果保護屬性表示無保護,即如果程序是作為明文程序從外部存儲器200獲取的程序或者作為開發(fā)密鑰加密程序從外部存儲器200獲取的程序,則允許對程序的訪問。如果請求類型是由處理器核心110執(zhí)行的取指令并且保護屬性表示保護,即如果程序是作為產(chǎn)品密鑰加密程序從外部存儲器200獲取的程序,則允許對程序的訪問。
另一方面,如果請求類型不是由處理器核心110執(zhí)行的取指令,并且保護屬性表示保護,則限制對程序的訪問。換句話說,輸出錯誤信號。
圖21是當(dāng)在軟件開發(fā)的時候執(zhí)行調(diào)試時在根據(jù)第三實施例的軟件銷售商2中執(zhí)行的處理的流程圖。當(dāng)執(zhí)行調(diào)試時,要保護的程序P先前通過使用唯一公共密鑰Kx進行過加密,以獲得開發(fā)密鑰加密程序E(Kx,P)。通過使用開發(fā)公開密鑰Kp1對包括Kx的K進行加密,以獲得開發(fā)分發(fā)密鑰E(Kp1,K)。將開發(fā)密鑰加密程序E(Kx,P)保存在外部存儲器200中。將開發(fā)分發(fā)密鑰E(Kp1,K)保存在外部存儲器200中。這里,E(X,Y)表示通過使用密鑰X對數(shù)據(jù)Y進行加密而獲得的數(shù)據(jù)。
軟件銷售商2將所創(chuàng)建的程序E(Kx,P)和開發(fā)分發(fā)密鑰E(Kp1,K)保存在外部存儲器200中。軟件銷售商2指定合適的任務(wù)ID和合適的開發(fā)分發(fā)密鑰E(Kp1,K),并且發(fā)出密鑰登記指令(步驟S400)。
此時,處理器核心110還向公開密鑰處理器170發(fā)出密鑰登記指令(步驟S402)。公開密鑰處理器170確定在秘密密鑰表172中與在密鑰登記指令中表示的公開密鑰ID相關(guān)聯(lián)的秘密密鑰(步驟S404)。分發(fā)密鑰解密單元174通過使用秘密密鑰對開發(fā)分發(fā)密鑰E(Kp1,K)進行解密,以獲得公共密鑰Kx(步驟S406)。從外部存儲器200獲取開發(fā)分發(fā)密鑰E(Kp1,K)。因此,在本實施例中,作為開發(fā)分發(fā)密鑰E(Kp1,K)從外部存儲器200獲取公共密鑰。
公開密鑰處理器170將公共密鑰Kx、任務(wù)ID和公開密鑰ID的消息提供給BIU 602(步驟S408)。
BIU 602在公共密鑰表139中登記作為消息提供的信息(步驟S410)。BIU 602向處理器核心110通知登記完成(步驟S412)。
處理器核心110通過向高速緩存控制器180發(fā)出指定了當(dāng)前任務(wù)ID和程序開始地址的程序開始指令來開始程序的執(zhí)行。例如,在程序開始指令中,指定當(dāng)前任務(wù)ID“3”和程序開始地址“X1”。
在發(fā)出程序開始指令之后,處理器核心110使當(dāng)前任務(wù)ID寄存器112保存指定的當(dāng)前任務(wù)ID。處理器核心110將指定了任務(wù)ID和讀取開始地址的程序讀取請求發(fā)送到高速緩存控制器180(步驟S414)。
如果在讀取請求中指定的程序未保存在指令高速緩存中(步驟S416為否),則高速緩存控制器180將對程序的讀取請求發(fā)送到BIU 130(步驟S418)。發(fā)送到BIU 602的讀取請求包括表示對象是程序的標(biāo)志、任務(wù)ID和開始地址。
響應(yīng)來自高速緩存控制器180的讀取請求,BIU 602從外部存儲器200讀出位于開始地址的程序(步驟S420)。加密和解密單元134從公共密鑰表139選擇對應(yīng)于任務(wù)ID的公共密鑰Kx,并且對從外部存儲器200讀出的程序進行解密(步驟S422)。
加密和解密單元134將經(jīng)過解密的程序輸出到高速緩存控制器180(步驟S424)。公開密鑰ID確定器137根據(jù)任務(wù)ID確定公開密鑰ID。保護屬性添加器135根據(jù)由公開密鑰ID確定器137確定的公開密鑰ID向經(jīng)過解密的程序添加保護屬性。保護屬性添加器135將所添加的保護屬性輸出到高速緩存控制器180(步驟S426)。
高速緩存控制器180將從BIU 602獲取的程序和保護屬性保存在指令高速緩存182中(步驟S428)。高速緩存控制器180將程序輸出到處理器核心110(步驟S430)。
如果在步驟S416在讀取請求中指定的程序保存在高速緩存控制器180內(nèi)的指令高速緩存182中(步驟S416為是),則處理進入步驟S430。這樣,完成讀取程序的處理。
圖22是示出當(dāng)獲取對程序的讀取請求時由高速緩存控制器執(zhí)行的讀取處理的流程圖。當(dāng)獲取表示讀出保存在指令高速緩存182中的程序的讀取請求(步驟S500)時,指令高速緩存182中的指令高速緩存訪問控制器184確定請求類型是否是由處理器核心110執(zhí)行的取指令。具體地說,請求類型可以由例如物理布線來確定。如果請求類型是由處理器核心110執(zhí)行的取指令(步驟S501為是),則指令高速緩存訪問控制器184將保存在指令高速緩存182中的明文程序輸出到處理器核心110(步驟S508)。如果請求類型不是由處理器核心110執(zhí)行的取指令(步驟S501為否),則指令高速緩存訪問控制器184確定保存在指令高速緩存182中的程序的保護屬性(步驟S502)。如果添加了表示保護的保護屬性(步驟S504為是),則指令高速緩存訪問控制器184輸出錯誤信號(步驟S510)。
另一方面,如果添加了表示無保護的保護屬性(步驟S504為否),則指令高速緩存訪問控制器184添加保存在指令高速緩存182中的程序(步驟S506)。這樣,完成由高速緩存控制器執(zhí)行的讀取處理。
如果對象是開發(fā)密鑰加密程序,則該程序添加了表示無保護的保護屬性。因此,當(dāng)從調(diào)試器500獲取對該程序的讀取請求時,高速緩存控制器180向調(diào)試器500添加該程序(步驟S504為否,以及步驟S506)。
另一方面,如果對象是產(chǎn)品密鑰加密程序,則該程序添加了表示保護的保護屬性。因此,當(dāng)從調(diào)試器500獲取對該程序的讀取請求時,高速緩存控制器180輸出錯誤信號(步驟S504為是,以及步驟S510)。
通過如此提供具有不同公開密鑰ID的開發(fā)公開密鑰和產(chǎn)品公開密鑰,并且根據(jù)公開密鑰ID的值來提供保護屬性,可以在分析時僅限制產(chǎn)品密鑰加密程序。
在第三實施例中,控制對保存在指令高速緩存182中的程序的訪問。作為第三實施例的第一變型例子,可以以相同的方式控制對保存在數(shù)據(jù)高速緩存186中的數(shù)據(jù)的訪問。此時,在數(shù)據(jù)高速緩存186和數(shù)據(jù)高速緩存訪問控制器188中執(zhí)行的處理類似于在指令高速緩存182和指令高速緩存訪問控制器184中執(zhí)行的處理。
對根據(jù)第四實施例的用戶終端3加以說明。根據(jù)第四實施例的用戶終端3在配置上類似于根據(jù)第三實施例的用戶終端3。
根據(jù)第四實施例的用戶終端3從外部存儲器200讀出多種類型的信息,并且根據(jù)信息類型確定是否對信息進行解密。在這一方面,根據(jù)第四實施例的用戶終端3不同于根據(jù)其他實施例的用戶終端3。
圖23是示出根據(jù)第四實施例的用戶終端3的總體配置的方框圖。除了第三實施例中的BIU 602的配置之外,根據(jù)第四實施例的用戶終端3中的BIU 604還包括加密和解密請求生成器138。加密和解密請求生成器138向加密和解密單元134發(fā)出關(guān)于是否在加密和解密單元134中進行加密和解密的請求。
圖24示意性地示出要由加密和解密請求生成器138使用以確定是否進行加密和解密的規(guī)則。例如,如果公開密鑰ID是“0”并且對象信息是程序,則加密和解密請求生成器138生成通過請求。換句話說,對于通過使用由公開密鑰ID“0”標(biāo)識的公開密鑰而加密的程序,加密和解密單元134不進行加密和解密。如果公開密鑰ID是“2”并且對象信息是程序,則加密和解密請求生成器138生成加密和解密請求。換句話說,對于通過使用由公開密鑰ID“2”標(biāo)識的公開密鑰而加密的程序,加密和解密單元134執(zhí)行加密和解密。
這樣,可以根據(jù)與任務(wù)ID相關(guān)聯(lián)的公開密鑰ID和成為對象的信息的類型來控制加密和解密單元134中的處理。具體地說,可以確定是否在加密和解密單元134中執(zhí)行加密處理和解密處理。
圖25是示出根據(jù)第四實施例的將信息讀入到用戶終端3內(nèi)的處理器核心110中的處理的流程圖。登記密鑰的處理類似于由根據(jù)第三實施例的軟件銷售商2執(zhí)行且參照圖21所述的登記密鑰的處理。
在登記了密鑰之后,處理器核心110將信息讀取請求輸出到高速緩存控制器180(步驟S600)。當(dāng)獲取信息讀取請求時,高速緩存控制器180確定是否保存了由信息讀取請求請求的信息。如果保存了所請求的信息(步驟S602為是),則高速緩存控制器180將信息讀取請求輸出到BIU 604(步驟S604)。
BIU 604將信息讀取請求輸出到外部存儲器200,并且通過外部存儲器200獲取所請求的信息(步驟S606)。加密和解密請求生成器138根據(jù)參照圖24所述的規(guī)則生成要輸出到加密和解密單元134的請求(步驟S608)。
如果加密和解密請求生成器138生成解密請求,并且將解密請求輸出到加密和解密單元134(步驟S610為是),則加密和解密單元134對從外部存儲器200獲取的信息進行解密(步驟S612),并且將經(jīng)過解密的信息輸出到高速緩存控制器180(步驟S614)。
另一方面,如果加密和解密請求生成器138生成通過請求,并且輸出通過請求(步驟S610為否),則加密和解密單元134將從外部存儲器200獲取的信息輸出到高速緩存控制器180而不對其進行解密(步驟S614)。
高速緩存控制器180使指令高速緩存182或數(shù)據(jù)高速緩存186保存從BIU 604獲取的信息(步驟S616)。高速緩存控制器180將從BIU 604獲取的信息輸出到處理器核心110(步驟S618)。這樣,完成將信息讀入到處理器核心110中的處理。
參照圖26說明當(dāng)在由處理器核心110輸出的信息讀取請求中指定了任務(wù)ID“3”和開始地址“X1”時所執(zhí)行的處理。讀取請求的對象信息是程序。
如果發(fā)出程序開始指令,則處理器核心110將所輸入的任務(wù)ID保存在當(dāng)前任務(wù)ID寄存器112中,并且將信息讀取請求輸出到高速緩存控制器180(步驟S600)。
由于有效且相關(guān)的程序未保存在指令高速緩存182中(步驟S602為否),因此高速緩存控制器180將信息讀取請求輸出到BIU 604,其中該信息讀取請求包括表示對象是程序的標(biāo)志、任務(wù)ID“3”和開始地址“X1”(步驟S604)。通過將包括開始地址“X1”的信息讀取請求輸出到外部存儲器200,BIU 604從外部存儲器200獲取作為請求對象的程序C(X1)(步驟S606)。
公開密鑰ID確定器137根據(jù)任務(wù)ID“3”和公共密鑰表139確定公開密鑰ID“1”。加密和解密請求生成器138根據(jù)由公開密鑰ID確定器137確定的公開密鑰ID“1”和參照圖24所述的規(guī)則生成要輸出到加密和解密單元134的請求。由于公開密鑰ID是“1”,并且對象信息是程序,因此加密和解密請求生成器138根據(jù)圖24所示的規(guī)則生成通過請求(步驟S608)。
當(dāng)從加密和解密請求生成器138獲取通過請求時,加密和解密單元134將程序C(X1)和任務(wù)ID“3”輸出到高速緩存控制器180(步驟S614),而不對從外部存儲器200獲取的程序執(zhí)行解密處理(步驟S610為否)。高速緩存控制器180使指令高速緩存182保存從外部存儲器200讀出的程序C(X1)和任務(wù)ID“3”,并且將程序C(X1)輸出到處理器核心110(步驟S616)。這樣,完成當(dāng)指定了任務(wù)ID“3”和開始地址“X1”時要執(zhí)行的處理。
參照圖27說明當(dāng)在由處理器核心110輸出的信息讀取請求中指定了任務(wù)ID“3”和開始地址“Y1”時所執(zhí)行的處理。讀取請求的對象信息是數(shù)據(jù)。
處理器核心110將信息讀取請求輸出到高速緩存控制器180(步驟S600)。由于有效且相關(guān)的數(shù)據(jù)未保存在指令高速緩存182中(步驟S602為否),因此高速緩存控制器180將信息讀取請求輸出到BIU 604,其中該信息讀取請求包括表示對象是數(shù)據(jù)的標(biāo)志、任務(wù)ID“3”和開始地址“Y1”(步驟S604)。
通過將包括地址“Y1”的信息讀取請求輸出到外部存儲器200,BIU604從外部存儲器200獲取作為請求對象的數(shù)據(jù)C(Y1)(步驟S606)。
公開密鑰ID確定器137根據(jù)任務(wù)ID“3”和公共密鑰表139確定公開密鑰ID“1”。加密和解密請求生成器138根據(jù)由公開密鑰ID確定器137確定的公開密鑰ID“1”和參照圖24所述的規(guī)則生成要輸出到加密和解密單元134的請求。由于公開密鑰ID是“1”,并且對象信息是數(shù)據(jù),因此加密和解密請求生成器138根據(jù)圖24所示的規(guī)則生成解密請求(步驟S608)。
當(dāng)從加密和解密請求生成器138獲取解密請求(步驟S610為是)時,加密和解密單元134對從外部存儲器200獲取的程序執(zhí)行解密處理(步驟S612)。加密和解密單元134將數(shù)據(jù)C(Y1)和任務(wù)ID“3”輸出到高速緩存控制器180(步驟S614)。
高速緩存控制器180使指令高速緩存182保存從外部存儲器200讀出的數(shù)據(jù)C(Y1)和任務(wù)ID“3”,并且將數(shù)據(jù)C(Y1)輸出到處理器核心110(步驟S616)。這樣,完成當(dāng)指定了任務(wù)ID“3”和開始地址“Y1”時要執(zhí)行的處理。
這樣,根據(jù)第四實施例的用戶終端3可以根據(jù)公開密鑰ID和信息類型來確定是否進行加密和解密。
為了最小化因使用加密功能而引起的加密延遲,并且使軟件以低成本處理能力運行,期望僅把程序作為加密和解密對象來處理,而把數(shù)據(jù)和上下文作為明文來處理。在根據(jù)本實施例的用戶終端中,通過上述處理,可以僅對程序執(zhí)行加密和解密。
根據(jù)第四實施例的用戶終端3在其余配置上類似于根據(jù)第三實施例的用戶終端3。
在第四實施例中,根據(jù)公開密鑰ID確定是否執(zhí)行加密和解密處理。相反,在第一變型例子中,可以根據(jù)公開密鑰ID來控制安全上下文切換單元190中的功能。具體地說,可以控制是否在上下文緩沖器192中保存上下文??梢钥刂剖欠駥⒈4嬖谏舷挛木彌_器192中的上下文恢復(fù)到處理器核心110。
作為第二變型例子,可以根據(jù)公開密鑰ID來控制高速緩存控制器180的功能。具體地說,可以控制是否在對高速緩存控制器180的程序和數(shù)據(jù)訪問控制中使用任務(wù)ID。
其他優(yōu)點和修改對于本領(lǐng)域的技術(shù)人員而言將是清楚的。因此,本發(fā)明在其更寬方面不限于這里所示和所述的特定細(xì)節(jié)和代表性實施例。從而,在不脫離由所附權(quán)利要求及其等價物限定的一般發(fā)明概念的精神或范圍的情況下,可以進行各種修改。
權(quán)利要求
1.一種微處理器,包括處理器核心;信息獲取單元,從外界獲取要由處理器核心使用的加密信息;解密單元,采用對稱密鑰對該信息進行解密,以獲得明文;以及控制器,根據(jù)該對稱密鑰控制對由信息獲取單元獲取的信息的處理。
2.根據(jù)權(quán)利要求1所述的微處理器,其中信息獲取單元獲取采用用于作為產(chǎn)品提供信息的產(chǎn)品密鑰加密的信息,其中產(chǎn)品密鑰是對稱密鑰,并且控制器限制對采用產(chǎn)品密鑰加密的信息的處理。
3.根據(jù)權(quán)利要求1所述的微處理器,其中信息獲取單元獲取采用用于開發(fā)信息的開發(fā)密鑰加密的信息,其中開發(fā)密鑰是對稱密鑰,并且控制器允許對采用開發(fā)密鑰加密的信息的處理。
4.根據(jù)權(quán)利要求3所述的微處理器,還包括開發(fā)密鑰生成器,其生成開發(fā)密鑰,其中控制器允許對采用由開發(fā)密鑰生成器生成的開發(fā)密鑰加密的信息的處理。
5.根據(jù)權(quán)利要求4所述的微處理器,其中信息獲取單元獲取采用用于作為產(chǎn)品提供信息的產(chǎn)品密鑰加密的信息,其中產(chǎn)品密鑰是對稱密鑰,開發(fā)密鑰生成器生成表示與產(chǎn)品密鑰相同的值的開發(fā)密鑰,并且控制器限制對采用產(chǎn)品密鑰加密的信息的處理,并且允許對采用由開發(fā)密鑰生成器生成的開發(fā)密鑰加密的信息的處理。
6.根據(jù)權(quán)利要求1所述的微處理器,還包括對稱密鑰存儲單元,存儲用于作為產(chǎn)品提供信息的產(chǎn)品密鑰,以及用于開發(fā)信息的開發(fā)密鑰,其中產(chǎn)品密鑰和開發(fā)密鑰是由解密單元使用的對稱密鑰;密鑰類型表,在其中登記用于標(biāo)識存儲在對稱密鑰存儲單元中的對稱密鑰的密鑰標(biāo)識信息以及表示對稱密鑰之一是開發(fā)密鑰還是產(chǎn)品密鑰的密鑰類型信息,其中密鑰標(biāo)識信息與密鑰類型信息相互關(guān)聯(lián),其中控制器確定在密鑰類型表中與對稱密鑰之一相關(guān)聯(lián)的密鑰類型信息,并且根據(jù)密鑰類型信息控制對由信息獲取單元獲取的信息的處理。
7.根據(jù)權(quán)利要求1所述的微處理器,還包括對稱密鑰指定單元,其被配置成指定由解密單元使用的對稱密鑰,其中解密單元采用由對稱密鑰指定單元指定的對稱密鑰對該信息進行解密,并且控制器根據(jù)由對稱密鑰指定單元指定的對稱密鑰控制對由信息獲取單元獲取的信息的處理。
8.根據(jù)權(quán)利要求1所述的微處理器,其中信息獲取單元獲取加密信息和對稱密鑰,解密單元采用由信息獲取單元獲取的對稱密鑰對該信息進行解密,并且控制器根據(jù)由信息獲取單元獲取的對稱密鑰控制對由信息獲取單元獲取的信息的處理。
9.根據(jù)權(quán)利要求1所述的微處理器,還包括明文存儲單元,存儲由解密單元獲得的明文;訪問請求獲取單元,獲取對存儲在明文存儲單元中的明文的訪問請求;以及請求類型確定器,確定該訪問請求的請求類型,其中控制器根據(jù)請求類型和對稱密鑰控制對要由處理器執(zhí)行的明文的訪問。
10.根據(jù)權(quán)利要求9所述的微處理器,其中當(dāng)由請求類型確定器確定的請求類型是與先前登記的請求類型不同的請求類型時,控制器限制對明文的訪問。
11.根據(jù)權(quán)利要求9所述的微處理器,其中當(dāng)由請求類型確定器確定的請求類型是與先前登記的請求類型不同的請求類型時,控制器控制對明文的訪問。
12.根據(jù)權(quán)利要求9所述的微處理器,其中控制器根據(jù)請求類型和對稱密鑰禁止對明文的訪問。
13.根據(jù)權(quán)利要求9所述的微處理器,其中控制器根據(jù)請求類型和對稱密鑰,確定是輸出明文還是輸出通過對明文進行加密而獲得的信息。
14.根據(jù)權(quán)利要求9所述的微處理器,其中控制器根據(jù)請求類型和對稱密鑰限制對明文的覆寫。
15.根據(jù)權(quán)利要求9所述的微處理器,其中在內(nèi)部存儲器中提供明文存儲單元,作為登記請求類型登記由處理器核心執(zhí)行的取指令,并且當(dāng)由請求類型確定器確定的請求類型不是由處理器核心執(zhí)行的取指令時,訪問控制器限制訪問。
16.根據(jù)權(quán)利要求9所述的微處理器,其中控制器根據(jù)請求類型和對稱密鑰,限制對正在由處理器核心執(zhí)行的明文的訪問。
17.根據(jù)權(quán)利要求1所述的微處理器,其中控制器根據(jù)對稱密鑰來控制對由信息獲取單元獲取的信息的加密和解密。
18.根據(jù)權(quán)利要求1所述的微處理器,還包括高速緩沖存儲器,其存儲由信息獲取單元獲取的信息,其中控制器根據(jù)對稱密鑰控制對存儲在高速緩沖存儲器中的信息的讀出。
19.根據(jù)權(quán)利要求1所述的微處理器,還包括安全上下文切換單元,其管理由信息獲取單元獲取的信息的保存和恢復(fù),該保存和恢復(fù)由處理器核心執(zhí)行,其中控制器根據(jù)對稱密鑰控制上下文切換單元中的信息保存和恢復(fù)。
20.根據(jù)權(quán)利要求1所述的微處理器,還包括分發(fā)密鑰獲取單元,獲取采用公開密鑰加密的分發(fā)密鑰;以及密鑰解密單元,對分發(fā)密鑰進行解密,以獲得對稱密鑰,其中控制器根據(jù)當(dāng)密鑰解密單元獲得對稱密鑰時所使用的公開密鑰來控制對信息的處理。
全文摘要
本發(fā)明公開一種具有處理器核心的微處理器,包括信息獲取單元,從外界獲取要由處理器核心使用的加密信息;解密單元,采用對稱密鑰對該信息進行解密,以獲得明文;以及控制器,根據(jù)對稱密鑰控制對由信息獲取單元獲取的信息的處理。
文檔編號G06F1/00GK1713102SQ20051005307
公開日2005年12月28日 申請日期2005年3月7日 優(yōu)先權(quán)日2004年6月24日
發(fā)明者春木洋美, 橋本干生, 川端健 申請人:株式會社東芝
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
四子王旗| 南京市| 洪湖市| 黑水县| 阜阳市| 汕尾市| 扶绥县| 格尔木市| 中卫市| 萍乡市| 县级市| 凌海市| 肇州县| 梁平县| 博野县| 满洲里市| 象山县| 江津市| 汶川县| 西藏| 卢氏县| 日喀则市| 孟州市| 吕梁市| 武功县| 西昌市| 资源县| 获嘉县| 曲靖市| 大冶市| 柯坪县| 什邡市| 杂多县| 津市市| 南岸区| 亳州市| 长垣县| 米易县| 乌拉特中旗| 伊宁市| 罗江县|