高性能32位微控制器具有安全監(jiān)控和加密功能
在電子支付終端、郵資發(fā)生器、安全通信等許多應(yīng)用中,都需要通過(guò)對(duì)密鑰進(jìn)行加密以保護(hù)使用者的利益。尤其是涉及到金融交易的時(shí)候,更是要求提供多種安全防范功能。
Maxim公司的高性能32位RISC微控制器MAXQ1103在MAXQ微控制器內(nèi)核外圍集成了安全監(jiān)控功能、先進(jìn)的加密加速器和1kB內(nèi)部非易失存儲(chǔ)器(NV SRAM),可幫助產(chǎn)品通過(guò)PCI、FIPS 140-2、通用認(rèn)證標(biāo)準(zhǔn)或其他安全認(rèn)證。
MAXQ1103中的經(jīng)過(guò)定制設(shè)計(jì)的電池備份非易失(NV) SRAM實(shí)現(xiàn)了高強(qiáng)度的密鑰保護(hù),能抵御旁路攻擊和物理攻擊,并為系統(tǒng)特有的篡改檢測(cè)提供多種選擇。MAXQ1103將所有功能(存儲(chǔ)密鑰的NV SRAM、實(shí)時(shí)時(shí)鐘和篡改檢測(cè)電路)集成到單個(gè)芯片中,大大改善了功耗情況。這些電路為工作在電池備份模式而設(shè)計(jì),其中的低功耗環(huán)形振蕩器為安全監(jiān)控電路提供時(shí)鐘,經(jīng)過(guò)專門設(shè)計(jì)的SRAM僅需很小的電流即可維持其狀態(tài)。這使MAXQ1103在最差的工作條件下(85℃時(shí),電池電流為2.55μA)仍然能夠提供完備的安全功能。如采用250mAh電池,壽命可達(dá)11年。
MAXQ1103集成了多個(gè)支持標(biāo)準(zhǔn)加密算法的高安全性硬件加速器,支持安全散列算法(SHA-1、SHA-224、SHA-256)、DES、3DES、RSA (密鑰高達(dá)2048位)、DSA以及橢圓曲線DSA (ECDSA)等加密算法。硬件3DES加速器執(zhí)行一個(gè)加密或解密操作僅需57個(gè)時(shí)鐘周期。因此,工作于20MHz時(shí),3DES算法能夠在短短2.8μs內(nèi)完成。此外,由于算法在硬件中完成,而非用軟件實(shí)現(xiàn),因而僅需加載小于100字節(jié)的指令以及執(zhí)行硬件引擎。MAXQ1103將原先執(zhí)行算法所需的千字節(jié)和毫秒量級(jí)資源轉(zhuǎn)變?yōu)樽止?jié)和微秒級(jí)。
在保護(hù)應(yīng)用程序時(shí),MAXQ1103通過(guò)專用的3DES引擎實(shí)現(xiàn)代碼加密,并由解密指令和4kB指令緩存保證系統(tǒng)性能。此外,每個(gè)MAXQ1103采用硬件隨機(jī)數(shù)發(fā)生器產(chǎn)生唯一的加密密鑰。這就導(dǎo)致了即使明文代碼相同,任意兩個(gè)器件存儲(chǔ)到外部存儲(chǔ)器的加密代碼也都不相同。代碼加密使得任何人都無(wú)法對(duì)代碼進(jìn)行反向破譯。每個(gè)器件獨(dú)有的加密密鑰使得代碼復(fù)制失去意義,復(fù)制的代碼無(wú)法在任何其它的MAXQ1103器件中工作。
如果只進(jìn)行了代碼加密,攻擊者仍可以插入任意指令修改代碼。盡管取得對(duì)微控制器的控制十分困難,但經(jīng)過(guò)足夠多的嘗試后,仍有可能找到有用的代碼將加密數(shù)據(jù)傳送至輸出端口。為防止上述可能性,MAXQ1103包含了代碼完整性校驗(yàn):存儲(chǔ)每個(gè)明文部分的求和校驗(yàn),并在解密該指令部分時(shí)進(jìn)行對(duì)比。如果完整性校驗(yàn)碼不匹配,器件將觸發(fā)篡改事件并銷毀密鑰,從而防止攻擊者修改微控制器的代碼。