芯片:USBKey 智能密碼鑰匙到底靠什么防住密鑰泄露(修訂))
做身份安全的人幾乎都繞不開(kāi)一個(gè)問(wèn)題密鑰到底存在哪把私鑰放在電腦磁盤(pán)上等于把家門(mén)鑰匙壓在門(mén)口腳墊下——攻擊者只要拿到機(jī)器反編譯、內(nèi)存 dump、配置文件讀取三下五除二就把私鑰扒出來(lái)了。于是「軟證書(shū)」方案在企業(yè)里反復(fù)翻車(chē)。USBKey 智能密碼鑰匙給出的答案很硬核把密鑰關(guān)進(jìn)一塊獨(dú)立的安全芯片里鑰匙生成在芯片內(nèi)、使用在芯片內(nèi)、永遠(yuǎn)不外傳。本文就拆開(kāi)這塊小金屬殼看看它到底靠什么把密鑰「鎖死」。一、USBKey 不是 U 盤(pán)是一臺(tái)微型安全計(jì)算機(jī)很多人望文生義以為 USBKey 就是個(gè)存證書(shū)的「加密 U 盤(pán)」。錯(cuò)。安當(dāng)智能密碼鑰匙基于一顆32 位 RISC 安全芯片內(nèi)置硬件密碼加速引擎和128KB EEPROM安全存儲(chǔ)。它不是被動(dòng)存儲(chǔ)設(shè)備而是能自己跑密碼運(yùn)算的微型計(jì)算機(jī)密鑰在這里生成簽名在這里算對(duì)外只吐結(jié)果。類(lèi)比軟證書(shū)是「把保險(xiǎn)箱鑰匙掛在門(mén)上」USBKey 是「把鑰匙焊死在保險(xiǎn)箱內(nèi)部鎖芯里你只能讓它替你開(kāi)門(mén)卻永遠(yuǎn)摸不到鑰匙」。二、四大機(jī)制把密鑰泄露堵死在硬件層1. 私鑰不可導(dǎo)出最核心密鑰對(duì)尤其是 SM2 私鑰在芯片內(nèi)部通過(guò)硬件真隨機(jī)數(shù)直接生成私鑰從生成那一刻起就只存在于芯片的安全存儲(chǔ)區(qū)任何 API 都不提供導(dǎo)出接口。哪怕你物理拆解、逆向固件、讀 EEPROM拿到的也只是被 MPU存儲(chǔ)保護(hù)單元隔離的密文區(qū)無(wú)法還原出可用私鑰。這是 USBKey 防破解的命根子。2. 簽名運(yùn)算在芯片內(nèi)執(zhí)行登錄或簽名時(shí)流程是服務(wù)端下發(fā)隨機(jī)數(shù)挑戰(zhàn) → USBKey 芯片內(nèi)私鑰對(duì)隨機(jī)數(shù)簽名 → 僅回傳簽名值注意私鑰全程不離開(kāi)芯片鏈路上跑的只是簽名結(jié)果。即便傳輸被抓包攻擊者拿到的也只是一次性的簽名值無(wú)法推導(dǎo)出私鑰也無(wú)法重放隨機(jī)數(shù)每次不同防重放攻擊。3. 硬件真隨機(jī)數(shù)發(fā)生器TRNG對(duì)稱(chēng)密鑰協(xié)商如 SM4 會(huì)話密鑰、挑戰(zhàn)隨機(jī)數(shù)都依賴(lài)隨機(jī)性。USBKey 內(nèi)置硬件真隨機(jī)數(shù)發(fā)生器生成不可預(yù)測(cè)的熵避免軟件隨機(jī)數(shù)「?jìng)坞S機(jī)可被預(yù)測(cè)」的致命缺陷讓每次會(huì)話密鑰都獨(dú)一無(wú)二。4. 敏感數(shù)據(jù) MPU 隔離 防暴力 PIN 鎖定芯片內(nèi)密鑰、證書(shū)、用戶(hù)數(shù)據(jù)分區(qū)存儲(chǔ)由 MPU 做物理隔離同時(shí)支持PIN 碼保護(hù) 連續(xù)錯(cuò)誤鎖定機(jī)制——輸錯(cuò)多次直接鎖死擋住暴力破解。三、國(guó)密全算法合規(guī)一張牌搞定USBKey 完整支持SM1/SM2/SM3/SM4 國(guó)密算法同時(shí)兼容 RSA、AES、ECC、SHA 等國(guó)際算法算法類(lèi)型支持項(xiàng)性能參考對(duì)稱(chēng)SM1、SM4、DES、AESSM4 約 6.96 Mbps非對(duì)稱(chēng)SM2、RSA、ECCSM2 簽名 83.33 次/秒哈希SM3、SHA-1、SHA-256SM3 約 5.44 Mbps這意味著它能同時(shí)滿(mǎn)足等保 2.0、密評(píng)對(duì)國(guó)密算法使用的硬性要求不必為了合規(guī)再單獨(dú)采購(gòu)密碼機(jī)。四、為什么「密鑰不出 Key」這么重要回到文章開(kāi)頭的軟證書(shū)困局。一旦私鑰能離開(kāi)設(shè)備就面臨三道無(wú)解風(fēng)險(xiǎn)內(nèi)存 dump進(jìn)程內(nèi)存里截取私鑰磁盤(pán)竊取配置文件、證書(shū)庫(kù)被拷走反向工程軟件被反編譯提取內(nèi)置密鑰。USBKey 的「私鑰不出芯片」從機(jī)制上把這三類(lèi)風(fēng)險(xiǎn)一次性歸零——你連私鑰的影子都摸不到自然無(wú)從泄露。這也是它做軟件授權(quán)保護(hù)一軟一 Key和CA 證書(shū)認(rèn)證時(shí)的安全基石。五、小結(jié)選硬件 Key本質(zhì)是選「信任錨」USBKey 智能密碼鑰匙的價(jià)值不在于它能存多少東西而在于它把信任錨牢牢焊死在硬件里私鑰不可導(dǎo)出、簽名在片內(nèi)、隨機(jī)數(shù)真隨機(jī)、存儲(chǔ)有隔離。對(duì)于身份鑒別、代碼簽名、軟件授權(quán)、通信加密這類(lèi)「私鑰即命門(mén)」的場(chǎng)景硬件 Key 幾乎是合規(guī)與安全的必選項(xiàng)。下一篇我們會(huì)聊密評(píng)和等保 2.0 里USBKey 具體在哪些條款上幫你拿分。參考資料安當(dāng) USBKey 智能密碼鑰匙產(chǎn)品頁(yè)andang.cn/product/productUkey安全芯片規(guī)格與密碼應(yīng)用接口規(guī)范。