專利名稱:電子數據處理設備和系統的制作方法
技術領域:
本發明涉及一個電子數據處理設備,其具有一個象微處理器一樣的處理單元,具有至少一個數據存儲器,并且具有延伸在數據存儲器和處理單元之間的總線。此外,本發明涉及一個電子數據處理系統,其具有一個如此的數據處理設備。
在嚴格要求安全的應用的情況下,經常使用上述的電子數據處理設備。對此在數據存儲器中存放秘密的數據、金額值和訪問許可,這些例如根據外部的請求進行處理。
因為存儲器包含盡可能不可以從外部存取的信息,使用與手操作相比該電子數據處理設備采取安全措施是必須的。
如果一個上述的電子數據處理設備作為集成電路實施,則該數據處理設備可以用不同的鈍化層覆蓋。對此,如此可以敷設鈍化層,清除鈍化層引起數據存儲器的破壞。此外可以在可以把數據存儲器埋在集成電路的深層,則將妨礙對數據存儲器的存取。
電子數據處理設備防止不希望的手操作的一個另外的可能在于傳感器的使用,其對電子數據處理設備的運行條件取樣。只要由一個傳感器取樣的值超出標準值,就觸發相應保護措施,其導致數據處理設備的去激活,或也導致數據存儲器的清除。
此外,也存在軟件傳感器,其根據禁止指令或根據對地址域的訪問監控處理設備的運行,其終止根據規定的運行。此外,根據其精度可以監控訪問指令序列。
最后公開了,通過特殊的硬件裝置、比如象可分開布置的連接線路限制在一個特殊的生產方式中允許的處理單元對數據存儲器的存儲器訪問。
盡管當前實施了的保護措施,可是偶爾還可能發生對上述的電子數據處理設備的不希望的手操作。
因此,本發明的任務是,準備提供一個上述的電子數據處理設備和一個電子數據處理系統,該設備或該系統具有對存儲內容的不希望的改變和/或偵查的一個改善的保護。
通過根據權利要求1或者權利要求7的一個電子數據處理設備解決了該任務。在從屬權利要求中說明了有益的改進。
對此,該電子數據處理設備具有一個處理單元,其通過總線與至少一個存儲器連接。給該處理單元分配一個編碼單元,對此,至少一個機密的密鑰存儲在存儲器或存儲器的一個中,并且至少所有的安全上相關的數據編碼地存儲在這個或這些存儲器中。一個用于存儲的秘密的密鑰與一個由用戶輸入的密鑰字比較的比較器控制一個控制編碼單元的聯鎖單元,因此僅僅在肯定比較的情況下可能對存儲的數據譯碼。
本發明基于發明重要的認識,即通過新技術方法簡化了剛好作為集成電路實施的數據處理設備的可操作性。因此,從一個操作者的角度電子數據處理設備不再完全看作芯片,而是看作一個包括在硅載體上的各個組分的系統,在這種情況下可以分別訪問這些組分。
因此存在這樣的可能性,通過監視數據總線上的數據交換或通過讀出數據存儲器推斷在數據存儲器中存儲的信息,因此簡化了手操作,或者可以通過這種方式存取真正要保守秘密的存儲器內容。
根據一個另外的發明重要的認識,在按上述的電子數據處理設備上的多個手操作歸因于此,即在數據總線上“監聽”數據交換是少見的,因此,可能在處理單元中監視并不合理地理解程序運行。
在本發明的一個可能的構成中,如此構成編碼單元,借助于一個編碼算法可對數據總線上的數據交換編碼。一個如此構成的編碼單元帶來這樣的優點,在大量生產的情況下可以特別的低成本地生產。可是現在具有一個算法的編碼還要持續很長時間,因為對此在處理單元中必需大量的計算。
在本發明的一個另外的改進中,如此構成編碼單元,借助于硬件編碼可以對數據總線上的數據交換編碼。在硬件編碼的情況下已經以非常簡單的方式剛好實現根據本發明的數據處理設備的實時運行,更確切地說或者在讀訪問數據存儲器的情況下,或者在寫訪問數據存儲器的情況下。
根據本發明,以一個編碼單元實現一個硬件編碼,該單元是如此構成的,數據交換的各個位的優先權有選擇地改變。此后顯現位,這些位在存儲器中例如作為“低”存放,在數據總線上的數據交換中作為“高”存放。這例如通過一個編碼單元實現,其至少具有一個EXOR環節。
在本發明的一個另外可能的改進中,可以如此構成編碼單元,可以有選擇地改變數據總線的數據傳輸線的連接序列。從外部看這表現為,是否交叉連接數據總線的各個位線。
最后在根據本發明的數據處理設備中也可以通過一個編碼單元實施硬件編碼,如此構成該單元,至少可以有選擇地延遲在數據總線與處理單元之間和/或在數據總線與數據存儲器之間的數據交換。因此,在數據總線上偽裝數據交換,該交換不涉及根據本發明的電子數據處理設備的目前的運行狀態。
此外,根據本發明的數據處理設備的主要特征在于,如此構成編碼單元,有選擇的進行編碼。這不僅表明,可以有選擇地實現或停止編碼。此外,根據本發明這包含,可以在用于數據交換編碼的不同的密鑰之間更換。在這種情況中根據本發明的編碼單元的使用得到了一個動態響應。
在具有要更換的密鑰的根據本發明的數據處理設備中預先規定。一批生產的數據處理設備分別得到不同的并且特殊的密鑰。因此保證,在連接一個數據處理設備的密鑰的情況下,本身不能通過另外的數據處理設備的密鑰連接。此外,在存儲在ROM中的情況下對于例如每個ROM程序可以使用一個另外的密鑰。在存儲在一個可編程的只讀存儲器、比如一個EEPROM中或存儲在一個閃電存儲器中的情況下,對于每個數據處理設備可以輸入一個特殊的密鑰。理所當然,在存儲器中必須以任意的形式存放,那些屬于密鑰的數據存放在數據存儲器或者數據處理設備的那些地址。
在本發明的改進中,至少預先規定一個分配給編碼單元的寄存器,在該寄存器中或在多個寄存器的情況下在這些寄存器中暫時存儲這個或這些安全密鑰。可是,對此必須考慮,在斷開數據處理設備后重新清除寄存器。寄存器以有益的方式作為暫時的存儲器構成。
在本發明的特別有益的構成中,在以編碼的形式存儲這個或這些秘密的密鑰,對此借助于一個所謂的單向函數(one-way-function)實現編碼。這是一個這樣的編碼,其不可能解碼或僅僅可能非常費勁地解碼。在這個在其上面實現根據本發明的數據處理設備的半導體芯片上,因此僅僅存在秘密的密鑰的編碼形式,通過該密鑰不可能對編碼存儲的數據譯碼。因此也不可能通過一個非常費勁的詳細說明的半導體芯片的檢查獲得對于一個濫用來說的全部相關的信息。
首先在通過一個用戶輸入密鑰字、對這個密鑰字編碼后,借助于數據處理設備中的單向函數電路和編碼的密鑰字與編碼存儲的保密數字的肯定比較,在一個暫時的寄存器中寫入未編碼的密鑰字,并且借助于編碼單元提供該密鑰字用于數據處理設備的存儲內容的譯碼或編碼。在斷開數據處理設備后重新清除密鑰字。
在根據本發明的數據處理設備的改進中,對于存儲器的不同的地址域使用了不同的密鑰。對此,預先規定一個地址譯碼器,在該譯碼器中存儲相應的地址域和分配給地址域的密鑰寄存器。
如果使用了多個密鑰,為了能夠譯碼存儲的數據,也必須由用戶或在多用戶系統中的這些用戶輸入多個密鑰字。這些密鑰字在與存儲的編碼的密鑰肯定的并且后存在于寄存器中,并且例如可以借助于地址譯碼器從那選出這些密鑰。
根據本發明的數據處理設備的一個根據規定的功能僅僅能夠結合一個讀裝置,在該讀裝置中用戶-例如借助于一個鍵盤-可以輸入僅僅對于用戶已知的密鑰字。該密鑰字從讀裝置傳輸到數據處理設備,其以有益的方式布置在一個芯片卡中。
下面根據一個實施例借助于圖詳細闡述本發明。圖示
圖1一個根據本發明的數據處理設備的原理說明,和圖2根據本發明的電子數據處理設備的詳細說明。
圖1以非常概括的方式指出了一個根據本發明的數據處理系統,其具有一個讀裝置LG和一個插入在該裝置的芯片卡CK。可是本發明不局限于數據處理設備的卡的形式,而且同樣可以例如通過加密或手表實現。不僅可以有接觸地實現而且也可以無接觸地實現從讀裝置LG到芯片卡CK的信息傳輸。
該讀裝置LG具有一個鍵盤T,在該鍵盤中可以通過一個用戶輸入一個密鑰字SW。然后該密鑰字SW從讀裝置LG傳輸到芯片卡CK。
在該芯片卡CK中布置一個半導體芯片,在該半導體芯片中實現一個根據本發明的數據處理設備。該數據處理設備具有一個CPU,其通過總線與存儲器ROM、EEPROM連接。當然,另外的對于微型計算機的功能所必需的或有益的電路與總線連接。分配給CPU一個編碼單元VE。在存儲器ROM、EEPROM中以編碼的方式至少存放對于電子數據處理設備的安全來說相關的數據。為了可以在CPU中處理這些數據,首先必須由編碼單元VE借助于一個秘密的密鑰對這些數據解碼。在存儲器ROM、EEPROM中存放的數據可以在存儲前由編碼單元VE編碼。
編碼單元VE借助于一個或多個秘密的密鑰Key1、Key2對數據編碼或譯碼。這些數據存儲在一個或多個存儲器ROM、EEPROM中。在密鑰字SW通過讀裝置LG的鍵盤T由用戶輸入并且傳輸到芯片卡CK的電子數據處理設備上之后,首先進行編碼或譯碼。電子數據處理設備具有一個比較器V,其不僅被分配了密鑰字,而且也通過一個傳輸線KL被分配了一個存儲的秘密的密鑰Key1、Key2。僅僅在肯定的比較的情況下,也就是說僅僅當輸入的密鑰字與秘密的密鑰Key1、Key2一致的時候,通過傳輸線SWL和一個由比較器V控制的開關裝置SE把密鑰字SW供給編碼裝置VE。可以通過CPU實現比較器V。
正如在圖2中說明的,給編碼單元VE分配寄存器R1...Rj,在該編碼單元中通過一個多路轉換器MUX給寄存器寫入一個密鑰字或多個分配給存儲的秘密的密鑰的密鑰字SW。對此,由比較器V控制該多路轉換器,并且該多路轉換器表示圖1的開關裝置SE的改進。在多個密鑰字SW的情況下,在根據本發明的改進中,借助于一個分配給CPU的地址譯碼器AD選出各當前的密鑰字。對此,把由CPU當前定址的存儲器位置的地址供給地址譯碼器AD,并且根據一個在地址譯碼器或任何別的地方存放的表選出相應的寄存器R1...Rj。然后,編碼單元VE考慮在選出的寄存器R1...Rj中存儲的密鑰字SW用于編碼或者解碼。
雖然秘密的密鑰Key1、key2可以是未編碼地存放,但以特別有益的方式、以編碼的形式存放這些密鑰。為了編碼,首先使用了一個所謂的單向函數。一個如此的單向函數有這樣的作用,即在了解功能和輸入值的結果的情況下,不能或僅僅可能非常費勁地確定本身。因為在這個根據本發明的電子數據處理設備實現的半導體芯片上僅僅存儲秘密的密鑰的編碼形式和編碼的數據,對于騙子來說不可能獲得原始數據。單向函數OWF同樣也可以通過CPU實現。
正如在圖2中同樣說明的,把一個由讀裝置LG傳輸的密鑰字SW通過一個單向函數實現的電路OWF供給比較器V。然后比較器V把存儲的安全密鑰R1...Rj與密鑰字SW的編碼形式一起比較,并且僅僅在肯定的比較結果的情況下通過傳輸線SWL和多路轉換器MUX在寄存器R1...Rj一個中寫入密鑰字的未編碼的形式。正如已經實施的,寄存器R1...Rj是暫時的,因此僅僅在芯片卡CK的授權運行中存儲密鑰字SW的未編碼的形式,并且在運行結束后清除。
通過根據本發明的電子數據處理設備或者根據本發明的數據處理系統這是可能的。即通過僅僅授權的編碼和譯碼,在不合理的訪問前保護在芯片卡的一個半導體芯片中存儲的數據。
權利要求
1.電子數據處理設備-具有一個處理單元(CPU),其通過總線與至少一個存儲器(ROM、EEPROM)連接,-具有一個分配給處理單元(CPU)的編碼單元(VE),-其中在存儲器或存儲器(ROM、EEPROM)之一中存放至少一個秘密的密鑰(Key1、Key2),-并且在這個或這些存儲器(ROM、EEPROM)中編碼地存儲至少所有安全上相關的數據,-具有一個比較器(V),其用于存儲的秘密的密鑰(Key1、Key2)與一個由用戶輸入的密鑰字(SW)的比較,和-具有一個由比較器(V)控制的、控制編碼單元(VE)的開關單元(SE;MUX),其僅在肯定的比較情況下能夠譯碼存儲的數據。
2.按照權利要求1的數據處理設備,其特征在于,用于這個或這些安全的密鑰(Key1、Key2)的存儲器是一個ROM、一個EEPROM,一個閃電存儲器或一個FRAM存儲器。
3.按照權利要求1或2的數據處理設備,其特征在于,至少含有一個分配給編碼單元(VE)的寄存器(R1...Rj),在肯定的比較結果后,在這個或這些寄存器中寫入這個或這些秘密的密鑰(Key1、Key2)。
4.按照權利要求1至3之一的數據處理設備,其特征在于,含有一個單向函數實現的電路(OWF),通過該電路把密鑰字(SW)供給比較器(V),并且以通過單向函數(OWF)編碼的形式存儲秘密的密鑰(Key1、Key2)。
5.按照權利要求1至4之一的數據處理設備,其特征在于,給編碼單元(VE)分配一個地址譯碼器(AD),其非獨立地對一個通過處理單元(CPU)指明的地址的數據進行編碼或者譯碼。
6.按照權利要求5的數據處理設備,其特征在于,在多個秘密的密鑰(Key1、Key2)的情況下,借助于地址譯碼器(AD)依賴于定址的存儲域可以選擇當前的密鑰。
7.具有一個按照上述權利要求之一的數據處理設備和一個用于與數據處理設備通信的讀裝置(LG)的數據處理系統,在該系統中通過一個用戶可以輸入密鑰字(SW)。
8.按照權利要求7的數據處理系統,其特征在于,數據處理設備是一個芯片卡(CK)的組成部分。
全文摘要
該電子數據處理設備具有一個處理單元(CPU),其通過總線與至少一個存儲器(ROM、EEPROM)連接。分配給該處理單元(CPU)一個編碼單元(VE),其中在這個存儲器或存儲器(ROM、EEPROM)的一個中存放至少一個秘密的密鑰(Key1、Key2),并且在這個或這些存儲器(ROM、EEPROM)中編碼地存儲至少所有的安全上相關的數據。用于比較存儲的秘密的密鑰(Key1、Key2)與一個由用戶輸入的密鑰字(SW)的比較器(V)控制一個控制處理單元(VE)的開關單元(SE;MUX),因此,僅僅在肯定的比較情況下能夠對存儲的數據譯碼。
文檔編號G06F21/34GK1254421SQ98804765
公開日2000年5月24日 申請日期1998年2月18日 優先權日1997年3月3日
發明者H·塞德拉克 申請人:西門子公司