內(nèi)置34K字節(jié)高密度EEPROM和模算術(shù)處理器(MAP)的智能卡集成電路
文章出處:http://5052h112.com
作者:意法半導(dǎo)體公司 陳德勇
人氣:
發(fā)表時(shí)間:2011年09月04日
[文章內(nèi)容簡(jiǎn)介]:內(nèi)置34K字節(jié)高密度EEPROM和模算術(shù)處理器(MAP)的智能卡集成電路
關(guān)鍵字: EEPROM 模算術(shù)處理器(MAP) 智能卡集成電路 |
在今天的數(shù)字社會(huì)里,非對(duì)稱加密算法的開(kāi)發(fā)為數(shù)字安全領(lǐng)域開(kāi)拓了一片新天地。有了這種加密技術(shù)后,各種密鑰管理的實(shí)現(xiàn)變得非常容易,電子數(shù)字簽名也正在成為可能。 另一方面,便攜式用戶友好物理數(shù)據(jù)存儲(chǔ)器安全技術(shù)的可行性,已經(jīng)在以芯片形式制成的卡片(智能卡)上得到驗(yàn)證。然而,由于智能卡加密算法的算術(shù)復(fù)雜性,安全數(shù)據(jù)交換的所有最優(yōu)工具至今還未實(shí)現(xiàn)全面融合。為解決這一問(wèn)題,全球掀起了對(duì)復(fù)雜控制器智能卡的研發(fā)浪潮。本文主要介紹影響今天微電子工業(yè)的物理因素和制約條件。在論述過(guò)程中,為了便于讀者理解,我們將引用ST基于ST19X系列平臺(tái)的最新加密智能卡集成電路。 以下兩個(gè)特性是引起智能卡加密復(fù)雜性的主要因素: (1)基于模算術(shù)的智能卡公用密鑰算法,目前,標(biāo)準(zhǔn)CPU并未為這項(xiàng)任務(wù)優(yōu)化。 (2)全部公用密鑰算法的安全性完全取決于算子的長(zhǎng)度。今天,512位算子是安全操作的基本條件,大多數(shù)運(yùn)營(yíng)商傾向于選擇1024位。對(duì)于32位處理器來(lái)說(shuō),這已經(jīng)是一個(gè)十分艱巨的計(jì)算任務(wù)了,對(duì)于8/16位處理器來(lái)說(shuō),其難度便可想而知了。 同時(shí)制約智能卡CPU性能還有另外兩個(gè)因素: (1)尺寸限制:ISO7816標(biāo)準(zhǔn)規(guī)定,芯片尺寸在一個(gè)IC卡上的模塊最大的尺寸不能超過(guò)25mm2. (2)電流消耗限制:電流消耗不僅受到ISO7816的限制,而且還受到移動(dòng)設(shè)備市場(chǎng)(如移動(dòng)電話)的影響,雖然ISO標(biāo)準(zhǔn)允許最大電流為200mA,但是,超過(guò)20mA的卡在市場(chǎng)上根本沒(méi)有銷路。 今天,廣泛使用的智能卡還是一個(gè)8位增強(qiáng)型的CPU,內(nèi)配一個(gè)處理算術(shù)計(jì)算的協(xié)處理器。因此,功能強(qiáng)大的32位CPU可望在來(lái)年具有廣泛的應(yīng)用前景。ST針對(duì)這一需求,專門研發(fā)了一個(gè)32位智能卡RISCCPU平臺(tái)SmartJ。我們將在下文中專門介紹這一平臺(tái)。 從性價(jià)比看,高性能CPU不能滿足用戶對(duì)性能的需求。實(shí)現(xiàn)主流非對(duì)稱加密算法RSA在5MHz時(shí)的可用計(jì)算次數(shù)之前,首先需要一個(gè)為算法而優(yōu)化的32位RISCCPU,以便實(shí)現(xiàn)不少于300ms典型加密/簽名次數(shù)。一個(gè)典型標(biāo)準(zhǔn)的8/16位CPU(采用0.6(m技術(shù))需要至少20mm2硅片,消耗大約50mA@5KHz電流。 顯而易見(jiàn),為執(zhí)行長(zhǎng)算子模算術(shù)計(jì)算而專門設(shè)計(jì)的高性能硬件或協(xié)處理器是解決這一問(wèn)題的最佳辦法。 基于這一方案,ST早在90年代初期就開(kāi)始采用模算術(shù)處理器(MAP-ModularArithmeticProcessor)作為外設(shè),以加強(qiáng)現(xiàn)有8位CPU(ST7平臺(tái))的性能。ST16CF54B和ST16CF68是利用這種方案在ST16平臺(tái)上開(kāi)發(fā)的第一個(gè)智能卡512位加密器件。 利用小型器件直接計(jì)算A*Bmoden是十分困難的。MAP在P或“Montgomery段”采用乘法操作,避開(kāi)了這種難度較大的計(jì)算過(guò)程,因此,P(P(A*B)n*H)n通過(guò)采用一個(gè)嘗試性的除法過(guò)程,減輕了模產(chǎn)品A*Bmoden的計(jì)算量。 數(shù)學(xué)家從直觀上就可以看出,這一基本思想與使用拉普拉斯交換表解微分方程的計(jì)算方法相似。計(jì)算時(shí)需要兩個(gè)常數(shù):H和J0,它們是n的函數(shù)。對(duì)P的計(jì)算采用迭代法,即通過(guò)嘗試性除法過(guò)程對(duì)A*Bmoden進(jìn)行“前向”計(jì)算。這種方法的優(yōu)點(diǎn)是成本效益好。 為了使模算術(shù)處理器使用簡(jiǎn)便,能夠充分發(fā)揮效率,ST為用戶提供一套固件子程序。這套子程序是為存取MAP的全部功能和執(zhí)行復(fù)雜、高效、安全算法而專門設(shè)計(jì)的。 這套子程序庫(kù)存儲(chǔ)在ROM的一個(gè)特殊位置,因此,可為操作系統(tǒng)設(shè)計(jì)人員節(jié)省底層函數(shù)的編碼時(shí)間,使他們能夠集中全部精力專注于算法、公用密鑰加密和私用密鑰加密協(xié)議的實(shí)現(xiàn)上。 隨著高效智能卡平臺(tái)的持續(xù)發(fā)展,ST公司推出ST19/X平臺(tái),進(jìn)一步提升了MAP對(duì)1088位算法的支持能力。ST19XL34是ST最新推出的加密器件。 ST19XL34是ST19平臺(tái)的一個(gè)組件。它是一個(gè)專門為大容量、經(jīng)濟(jì)型、安全便攜式對(duì)象而設(shè)計(jì)的串行存取微控制器。實(shí)現(xiàn)高性能公用密鑰和私用密鑰的算法,有助于提高系統(tǒng)安全性,降低這些設(shè)備的初期成本和通訊費(fèi)用。 下面是有關(guān)本器件的簡(jiǎn)要介紹: 1特性 ●增強(qiáng)型8位CPU,擴(kuò)展尋址方式 ●96KB用戶ROM,可分區(qū) ●4KB用戶RAM,可分區(qū) ●34KB用戶EEPROM,可分區(qū) ●高可靠性的CMOSEEPROM0.35μm亞微米技術(shù) ●單個(gè)位元錯(cuò)誤糾錯(cuò)碼 ●10年的數(shù)據(jù)保存能力 ●100,000次擦/寫循環(huán) ●糾正每個(gè)字節(jié)內(nèi)的單個(gè)位元錯(cuò)誤(ECC-ErrorCorrectionCode) ●在2ms內(nèi),實(shí)現(xiàn)1-64字節(jié)的擦除或編程 ●存儲(chǔ)器安全防火墻 ●超級(jí)安全性能,包括EEPROM閃存程序和時(shí)鐘管理 ●3x8位定時(shí)器,具有中斷功能 ●硬件DES加速器 ●1088位模算術(shù)處理器,內(nèi)含非對(duì)稱算法支持庫(kù) ●高達(dá)10MHz內(nèi)部工作頻率 ●芯片內(nèi)置唯一序列號(hào) ●待機(jī)省電模式 ●大于5000V的ESD保護(hù) ●3V10%,或5V10%電源電壓 ●加密庫(kù) 2非對(duì)稱算法 ●為實(shí)現(xiàn)高效編碼,軟件加密庫(kù)分別存儲(chǔ)在ROM不同的單元內(nèi) ●向MAP上加載或從MAP上卸載參數(shù)和運(yùn)算結(jié)果 ●計(jì)算Montgomery常數(shù) ●包括模乘方和各種長(zhǎng)度的乘法在內(nèi)的基本數(shù)學(xué) ●模取冪,可選擇使用中國(guó)余數(shù)定理(CRT) ●專用函數(shù),如表1所示。例如:RSA簽名、2176位模運(yùn)算長(zhǎng)度的身份驗(yàn)證、RSA密鑰生成。 ●1088位DSA數(shù)字簽名和身份驗(yàn)證 ●內(nèi)部簽名及驗(yàn)證密鑰的全面生成。這個(gè)功能可防止密鑰從芯片上泄露,有利于整個(gè)系統(tǒng)的安全性能 3對(duì)稱算法 ●DES、3DES、DESX計(jì)算和CBC鏈接模式 ●CRC計(jì)算塊 ●SHA-1 ●長(zhǎng)隨機(jī)號(hào)生成 ●寄存器數(shù)據(jù)加載和卸載保護(hù),預(yù)防SPA/DPA 備注: (1)速度是典型值,與外部時(shí)鐘頻率和電源電壓無(wú)關(guān)。 (2)CRT:中國(guó)余數(shù)定理 4硬件簡(jiǎn)介 ST19XL34是ST19平臺(tái)的產(chǎn)品之一,其電路設(shè)計(jì)如圖1所示。它是一種專門為大規(guī)模、低價(jià)位的保密應(yīng)用所設(shè)計(jì)的串行存取微控制器。可以用它開(kāi)發(fā)出高性能的公開(kāi)密鑰算法,以降低初期投資及通訊成本,提高系統(tǒng)的安全性。 表1專用函數(shù)表
芯片內(nèi)置DES加速器。對(duì)DES加速器的存取操作是通過(guò)系統(tǒng)ROM的函數(shù)庫(kù)來(lái)完成的。 該芯片還包括一個(gè)基于1088位處理器的模數(shù)學(xué)處理器(MAP)。它可以對(duì)最大為2176位的操作數(shù)進(jìn)行模乘、平方及其他運(yùn)算。 ST19XL34內(nèi)置的模數(shù)學(xué)處理器(MAP)和DES加速器是專門為提高公開(kāi)密鑰和私鑰算法計(jì)算速度所設(shè)計(jì)開(kāi)發(fā)的。 基于意法半導(dǎo)體(ST)8位CPU的ST19XL34包括三個(gè)存儲(chǔ)器:96K用戶ROM、4K用戶RAM和34K用戶EEPROM,每個(gè)存儲(chǔ)器都具有最先進(jìn)的安全特性。ROM、RAM和EEPROM都可以按照所定義的權(quán)限進(jìn)行分區(qū)處理。硬件防火墻控制從一個(gè)內(nèi)存區(qū)到另一個(gè)內(nèi)存區(qū)的訪問(wèn)權(quán)限。訪問(wèn)權(quán)限是由客戶定義的。它即可在用戶選項(xiàng)中定義,又可在發(fā)行時(shí)定義。 此外,用戶還可直接調(diào)用CRC。 ST19XL34是采用ST公司先進(jìn)的、高可靠的CMOSEEPROM技術(shù)制造的。 同其它ST19產(chǎn)品一樣,ST19XL34符合ISO7816智能卡標(biāo)準(zhǔn)。 5軟件開(kāi)發(fā)工具 用戶可通過(guò)ST19-HDSX開(kāi)發(fā)系統(tǒng),在WindowsNT或Windows98開(kāi)發(fā)環(huán)境下配合功能強(qiáng)大的C/C+++編譯器、Debugger和Simulator進(jìn)行軟件開(kāi)發(fā)和FIRMWARE的生成(ROM代碼/用戶選項(xiàng))。 6加密算法庫(kù) 意法半導(dǎo)體(ST)提供了一系列完整的子程序以使用戶方便而有效地使用模數(shù)學(xué)處理器。這個(gè)加密算法庫(kù)存放在一個(gè)特殊的ROM里。這個(gè)加密算法庫(kù)大大減輕了系統(tǒng)開(kāi)發(fā)人員的負(fù)擔(dān),他們不必開(kāi)發(fā)底層函數(shù)而可以專心于公開(kāi)密鑰和私鑰算法的實(shí)現(xiàn)。
圖1電路框圖 該加密算法庫(kù)用于: (1)非對(duì)稱算法 ●從MAP讀取,存放參數(shù)和結(jié)果; ●計(jì)算Montgomery常數(shù); ●基本的數(shù)學(xué)計(jì)算以及可變字長(zhǎng)的模乘/模開(kāi)方運(yùn)算; ●取模乘方運(yùn)算,可采用或不采用中國(guó)余數(shù)定理(CRT); ●專用的任意長(zhǎng)度(可達(dá)2176位)RSA,DSA簽名及確認(rèn)函數(shù); ●簽名及確認(rèn)的密鑰完全在芯片內(nèi)產(chǎn)生。這就保證了密鑰不會(huì)被泄露,從而提高了整個(gè)系統(tǒng)的安全性; ●長(zhǎng)隨機(jī)數(shù)生成功能; ●RSA:2176位 ●DSA:1088位 ●SHA-1 ●RSA密鑰生成 (2)對(duì)稱算法 ●DES、3DES、DESX運(yùn)算; ●CBC鏈接模式; ●防止DSP的安全寄存器訪問(wèn)。
|
本文關(guān)鍵詞:內(nèi)置34K字節(jié)高密度EEPROM和模算術(shù),置34K字節(jié)高密度EEPROM和模算術(shù)處,34K字節(jié)高密度EEPROM和模算術(shù)處理,4K字節(jié)高密度EEPROM和模算術(shù)處理器,K字節(jié)高密度EEPROM和模算術(shù)處理器M,字節(jié)高密度EEPROM和模算術(shù)處理器MA,節(jié)高密度EEPROM和模算術(shù)處理器MAP,高密度EEPROM和模算術(shù)處理器MAP的,密度EEPROM和模算術(shù)處理器MAP的智,度EEPROM和模算術(shù)處理器MAP的智能,EEPROM和模算術(shù)處理器MAP的智能卡,EPROM和模算術(shù)處理器MAP的智能卡集,P