專利名稱:具有加密的微處理裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種帶微處理器和外圍單元的微處理裝置,微處理器和外圍單元通過數(shù)據(jù)總線相連。該總線的終端側(cè)接線配置了密碼單元。
這種能對經(jīng)數(shù)據(jù)總線傳送的數(shù)據(jù)進行加密的微處理裝置通常用于需嚴(yán)格保密的應(yīng)用。例如,在某些移動數(shù)據(jù)載體卡、也即“芯片卡”中將這種微處理裝置用作控制電路。該微處理裝置的數(shù)據(jù)存儲器可存儲個人數(shù)據(jù)、貨幣值,或是存儲由讀取器讀出、并能使功能單元免遭非授權(quán)訪問操作的訪問授權(quán)。
由于在這種微處理裝置中的數(shù)據(jù)通信涉及那些未經(jīng)授權(quán)不能訪問的保密數(shù)據(jù),所以需要適當(dāng)?shù)谋Wo措施。通常利用探測的方法—在相應(yīng)的電路部分和線路上放置一些細(xì)針以便在操作期間分接出已處理過的信號流—便能實現(xiàn)對該裝置數(shù)據(jù)的存儲器進行非授權(quán)訪問或監(jiān)視該裝置中的數(shù)據(jù)通信。由于相當(dāng)大的寄生電容,所以在該電路中驅(qū)動總線所需的電流消耗也會隨之增加。借助于特征電流分布,總線訪問的操作在外部是可見的。所以,能夠用這一點來推斷出該電路的內(nèi)部操作步驟,在某些情況下甚至可以用來確定某一密碼單元的密鑰。
在DE 196 42 560 A1中對有關(guān)防止非授地權(quán)訪問芯片卡的微控制器的數(shù)據(jù)存儲器內(nèi)容的保護措施作了闡述。所述數(shù)據(jù)存儲器用加密的形式存儲那些保密數(shù)據(jù)。在存儲器與CPU之間的數(shù)據(jù)路徑包括一個解密裝置,以便在該CPU中能夠處理已解密的原始數(shù)據(jù)。當(dāng)將該數(shù)據(jù)寫回所述存儲器時,數(shù)據(jù)被再次加密。在另一實施方案中,所述加密和解密操作分兩個階段執(zhí)行。因此,在該存儲器及其外圍單元側(cè)以及所述CPU側(cè)分別設(shè)置加密和解密子單元。
問題在于,根據(jù)不同的實施方案,不管是以完全解密的形式還是以部分解密的形式在所述數(shù)據(jù)總線上均存在數(shù)據(jù)通信。而探測的應(yīng)用將使得對該總線上的數(shù)據(jù)通信的監(jiān)視變得相對簡單。另外,為了有效防止非授權(quán)訪問,采用諸如機械等附加方法將是必要的。
本發(fā)明的目的是要講述一種具有高安全性、能防止非授權(quán)地監(jiān)視芯片內(nèi)部操作的微處理裝置。
本發(fā)明用一種微處理裝置來實現(xiàn)此目的,該裝置包括一個中央處理單元和至少一個經(jīng)數(shù)據(jù)總線彼此相連的外圍單元;第一密碼單元,該單元設(shè)置在所述外圍單元中并與所述數(shù)據(jù)總線相連;第二密碼單元,該單元設(shè)置在所述中央處理單元中并也與所述數(shù)據(jù)總線相連;以及一個用于產(chǎn)生一系列數(shù)值的隨機數(shù)發(fā)生器,該裝置與第一和第二密碼單元相連,用于提供所述數(shù)值,而根據(jù)該隨機數(shù)發(fā)生器產(chǎn)生的這些數(shù)值便能控制第一和第二密碼單元的密碼操作。
本發(fā)明涉及對由微處理裝置的功能單元向數(shù)據(jù)總線輸出的數(shù)據(jù)通信進行加密,以及在接收單元的輸入端再對其進行解密。加密和解密均由隨機數(shù)發(fā)生器控制,這樣,便不能肯定地預(yù)見所述加密和解密方法的相應(yīng)工作狀態(tài)。由此提供了經(jīng)數(shù)據(jù)總線進行數(shù)據(jù)通信的安全性。這意味著,不再需要額外增設(shè)一些必要的機械裝置來保護總線免受探針影響。對所述加密/解密方法的隨機控制會產(chǎn)生相應(yīng)的隨機電流分布,因此不可能對經(jīng)過所述總線傳送的數(shù)據(jù)通信再以這種方式進行監(jiān)測。
理論上,本發(fā)明能用于其中央處理單元(CPU)通過總線與包括存儲器在內(nèi)的外圍單元進行數(shù)據(jù)及地址交換的任何微處理器系統(tǒng)。該裝置既能分立設(shè)計,也能整體地集成在單個半導(dǎo)體芯片—“微控制器”—上。
特別是,所述用于控制加密/解密的隨機數(shù)按時鐘同步地供給各單元。為此,用一條時鐘線路連接所有的加密/解密單元。而且,這些單元還通過一條傳送所述隨機數(shù)的線路彼此相連。為了提高安全性,建議使用機械屏蔽方法以防止探針對上述兩條線路的影響。但該總線中其他的許多數(shù)據(jù)線則無須保護。
還可以將所述作為密鑰的隨機數(shù)通過總線和一條控制線路傳給密碼單元。這樣就不再需要獨立的線路5。所以,不但允許數(shù)據(jù)總線,而且還允許控制信號—“總線狀態(tài)”—以加密的形式進行傳送。
所述加密/解密單元還優(yōu)選地包括一個帶反饋的移位寄存器,該寄存器由通用時鐘信號和連續(xù)產(chǎn)生的隨機數(shù)控制。所述移位寄存器其輸出端的數(shù)據(jù)字與將要輸出給總線或從總線接收的數(shù)據(jù)字進行邏輯組合,例如進行異或運算。該移位寄存器的反饋最好為線性。
下面將利用附圖
中的實施例對本發(fā)明作更詳細(xì)的闡述。圖中所示為一個CPU、一個存儲器和一個外圍單元的示意圖,這些部件均整體地集成在一個微控制器上。
圖中所示的微控制器包括一個中央處理單元CPU1、一個存儲器2和一個外圍單元3。例如,外圍單元3可以是輸入/輸出電路板。微控制器的所有這些元件均被集成在一個單獨的硅片上。CPU1負(fù)責(zé)數(shù)據(jù)的控制和運算功能,存儲器2則包含臨時存儲或永久存儲的數(shù)據(jù),外圍單元3承擔(dān)分配給他的相應(yīng)功能。通常,所述微控制器還包括其他一些功能單元。數(shù)據(jù)經(jīng)數(shù)據(jù)總線4在這些單元之間進行交換。數(shù)據(jù)總線包括多條能并行傳送數(shù)據(jù)的線路。該總線還包括用于控制所述數(shù)據(jù)傳送的相應(yīng)的控制線路。密碼單元11、21、31設(shè)置在單元1、2、3朝向數(shù)據(jù)總線方向的輸入和輸出端。經(jīng)數(shù)據(jù)總線的線路輸入或輸出到相應(yīng)單元的數(shù)據(jù)流由相應(yīng)的密碼單元進行解密或加密。
例如,CPU1向存儲器2請求一個數(shù)據(jù)字。并將該數(shù)據(jù)字從存儲器2的相應(yīng)存儲器單元中讀出,緩存于寄存器211中。密碼單元21的內(nèi)部電路將該數(shù)據(jù)字加密并輸出給總線4。CPU1的密碼單元11接收該數(shù)據(jù)字,以便對其進行解密并將其緩存于寄存器111中。當(dāng)該數(shù)據(jù)字在總線4上從存儲器2向CPU1傳送時,只可使用已加密的數(shù)據(jù)項。在單元21和11中依據(jù)隨機數(shù)發(fā)生器6產(chǎn)生的隨機數(shù)執(zhí)行加密和解密,所述隨機數(shù)發(fā)生器的輸出經(jīng)線路5與單元21、11相連。利用單元21、11產(chǎn)生的時鐘CLK,通過線路7將隨機數(shù)按時鐘同步地供給單元21、11。隨機數(shù)發(fā)生器5產(chǎn)生一個(偽)隨機的比特序列,并利用時鐘CLK將其按時鐘同步的供給密碼單元21、11。
用隨機的加密和解密控制能有效防止非授權(quán)的數(shù)據(jù)讀取,從而提高經(jīng)總線4傳送數(shù)據(jù)值的安全性。這種同步控制確保了在相同的時間間隔內(nèi)發(fā)送和接收單元中加密和解密的步驟是并協(xié)的。這種加密的隨機性意味著即使是重復(fù)發(fā)送數(shù)據(jù),總線上也會出現(xiàn)一個不同的比特樣式。該芯片上的電流分布會因此呈現(xiàn)出時間上的無關(guān)聯(lián)性和隨機性,即便根據(jù)總線上不充電的高容性負(fù)載能夠從外部對該電流分布做出相當(dāng)準(zhǔn)確的測量。這意味著在企圖讀取時,所述電流分布不能再作為識別微控制器的任何切換狀態(tài)的特征。
為進一步提高安全性,只要再對用于傳送隨機數(shù)和加密/解密時鐘的線路5和7進行保護以使其免受所述探針的影響和探測就足夠了。為此,已知的常規(guī)方法均能使用。例如,可以在這些線路的外面再覆蓋一層,如果將該層去掉便會使這些線路遭到破壞而并不能再使用。
所有這三個加密/解密單元11、21、31均采用相似的設(shè)計。舉例只對單元11作更詳細(xì)的說明。在CPU1側(cè)的寄存器111用于緩存那些CPU正要接收或發(fā)送的數(shù)據(jù)字。在通向所述數(shù)據(jù)總線的接線側(cè)為總線的每條數(shù)據(jù)線提供一個邏輯連接。在所示例中,所述邏輯連接是112、113、114、115的異或邏輯連接。每個所述異或門其輸入和輸出之一與數(shù)據(jù)總線的一條線路相連;而另一輸入則與譬如帶線性反饋的移位寄存器116的各一個輸出相連。移位寄存器116的輸入側(cè)與時鐘線路7和傳送隨機數(shù)的線路5相連。當(dāng)時鐘CLK產(chǎn)生時鐘控制時,隨機數(shù)發(fā)生器6產(chǎn)生的隨機數(shù)經(jīng)線路5連續(xù)地供給帶反饋的移位寄存器116。該移位寄存器116的反饋負(fù)責(zé)在每個時鐘脈沖內(nèi)在其輸出端均能提供一個不同的數(shù)據(jù)字,該數(shù)據(jù)字通過異或門112、...115與相應(yīng)的、將要向總線4輸出或?qū)⒁獜目偩€4接收的數(shù)據(jù)字進行邏輯組合。開始時用相同的值對這些移位寄存器進行初始化。由于其他密碼單元21、31的設(shè)計相似,且它們的外部接線也以相應(yīng)的方式連接,所以經(jīng)總線4傳送的數(shù)據(jù)字在發(fā)送點和接收點處被加密,或并協(xié)地進行相應(yīng)的解密。所述加密和解密彼此對稱。理論上,所述移位寄存器116也可以不帶反饋。反饋只是提高了保護性。基于原始多項式的線性反饋適用于所述反饋。根據(jù)并行性而把所述移位寄存器的相應(yīng)多的比特用于加密。在發(fā)送和接收側(cè)利用相同的隨機數(shù)按時鐘同步地執(zhí)行所述的加密和解密。傳輸因?qū)ΨQ的加密而沒有意義。
所述用于產(chǎn)生隨機數(shù)和時鐘的電路費用,以及帶線性反饋的移位寄存器、輸入/輸出寄存器和所述異或門的電路費用被證明是合理的。這在防止非授權(quán)地監(jiān)視經(jīng)總線傳送的數(shù)據(jù)以及非授權(quán)地測量所述電流分布方面的安全性卻有明顯提高。
權(quán)利要求
1.一種微處理裝置,其包括-一個中央處理單元(1)和至少一個通過總線(4)彼此相連的外圍單元(2,3),-第一密碼單元(21,31),該單元設(shè)置在外圍單元(2,3)中,并與總線(4)相連,-第二密碼單元(11),該單元設(shè)置在中央處理單元(1)中,并與總線(4)相連,以及-一個用于產(chǎn)生一系列隨機值的隨機數(shù)發(fā)生器(6),為了產(chǎn)生所述數(shù)據(jù)值,該發(fā)生器與第一和第二密碼單元(21,31;11)相連,其中-根據(jù)所述隨機數(shù)發(fā)生器(6)產(chǎn)生的數(shù)據(jù)值能控制所述第一和第二密碼單元(21,31;11)的密碼操作。
2.根據(jù)權(quán)利要求1的微處理裝置,其特征在于用于產(chǎn)生時鐘信號(CLK)的接線,該信號能夠按時鐘同步地控制所述第一和第二密碼單元(21,31;11)。
3.根據(jù)權(quán)利要求1或2的微處理裝置,其特征在于操作中,所述第一和第二密碼單元(21,31;11)構(gòu)成一對,其中一個為加密裝置,相應(yīng)地另一個為解密裝置。
4.根據(jù)權(quán)利要求1~3之一的微處理裝置,其特征在于所述密碼單元(11,21,31)之一包括-一個帶反饋的移位寄存器(116),所述隨機數(shù)發(fā)生器(6)能夠?qū)a(chǎn)生的數(shù)據(jù)值提供給該移位寄存器,以及-多條數(shù)據(jù)信號通道,其分別包括一個組合邏輯元件(112,113,114,115),該元件的輸入側(cè)與信號通道以及所述帶反饋的移位寄存器(116)的輸出相連,其輸出側(cè)與這些信號通道中的一條相連。
5.根據(jù)權(quán)利要求4的微處理裝置,其特征在于所述移位寄存器(116)具有線性反饋。
6.根據(jù)權(quán)利要求1~5之一的微處理裝置,其特征在于所述中央處理單元(1)和外圍單元(2,3)被整體地集成為一個集成電路。
7.根據(jù)權(quán)利要求1~6之一的微處理裝置,其特征在于所述外圍單元(2)包括一個存儲單元陣列。
8.根據(jù)權(quán)利要求1~7之一的微處理裝置,其特征在于布置在移動數(shù)據(jù)載體中。
全文摘要
一種微處理裝置,包括一條用于在功能單元(1,2,3)之間傳送數(shù)據(jù)的數(shù)據(jù)總線(4)。在總線側(cè),每個單元包括一個加密/解密單元(11,21,31),這些單元由隨機數(shù)發(fā)生器(6)同步地控制。這種裝置能防止對經(jīng)所述數(shù)據(jù)總線傳送的數(shù)據(jù)的監(jiān)視,從而實現(xiàn)相當(dāng)高級別的安全性,同時只適當(dāng)?shù)卦黾恿穗娐返膹?fù)雜程度。
文檔編號G06F21/60GK1402848SQ00816569
公開日2003年3月12日 申請日期2000年11月30日 優(yōu)先權(quán)日1999年12月2日
發(fā)明者B·加梅爾, O·克尼弗萊, H·塞德拉克 申請人:因芬尼昂技術(shù)股份公司