安全性設(shè)計(jì)如何選擇可靠的隨機(jī)數(shù)加密方案?
發(fā)布時(shí)間:2015-06-01 責(zé)任編輯:sherry
【導(dǎo)讀】質(zhì)量不良的隨機(jī)隨機(jī)數(shù)不會(huì)成為加密系統(tǒng)的弱點(diǎn),只要采用標(biāo)準(zhǔn)化的解決方案,將可幫助設(shè)計(jì)工程師們一夜好眠。那么如何為安全設(shè)計(jì)選擇可靠的隨機(jī)數(shù)加密方案?
隨機(jī)數(shù)(random number)是密碼學(xué)的鑰匙(也是關(guān)鍵),它們會(huì)是加密系統(tǒng)的弱點(diǎn),因此也常變成受攻擊的目標(biāo);因此我總是嘗試讓我的腦袋繞著有關(guān)隨機(jī)性的主題轉(zhuǎn)。
我一直認(rèn)為二極管接面(diode junction)的熱噪聲(thermal noise)是隨機(jī)性的,但是現(xiàn)在,它似乎并不是那么隨機(jī)。密碼學(xué)家們總是在思考?jí)娜丝赡軙?huì)發(fā)動(dòng)的攻擊手法,然后要想出對(duì)抗的招數(shù);他們做的是好事,因?yàn)榇蠖鄶?shù)人(包括我自己)在進(jìn)行在線金融活動(dòng)或購物時(shí),都得仰賴安全性通訊。
有許多密碼學(xué)菁英任職于美國國家標(biāo)準(zhǔn)技術(shù)研究所 (National Institute of Standards and Technology,NIST);該組織公布了一套規(guī)格,有關(guān)于如何建立隨機(jī)比特流,以應(yīng)用于加密──其SP800-90A規(guī)格所提供的解決方案,是以一種決定性隨機(jī)位產(chǎn)生器(Deterministic Random Bit Generator ,DRBG)將比特流加密。
這種隨機(jī)數(shù)生成器(Random Number Generator,RNG)對(duì)我來說是有意義的,接下來我將先簡(jiǎn)短介紹DRBG的原理,然后談?wù)勅绾螌⑦@種RNG嵌入FPGA中;現(xiàn)在我需要先厘清一些會(huì)用到的專門術(shù)語,然后解釋其運(yùn)作過程。
任何一套加密系統(tǒng)會(huì)需要一組密鑰以及一組輸入的數(shù)據(jù)流,從這里事情開始變得比較復(fù)雜。用以編排密碼的、“或多或少隨機(jī)”的比特流,被稱做是Entropy (熵)輸入;為了確保每次RNG的產(chǎn)出是不同的,Entropy要結(jié)合叫做Nonce (隨機(jī)數(shù))的輸入;Nonce在通過DRBG的每一個(gè)周期,必須要改變或是增加。這是有道理的,因?yàn)槟阈枰蓝乱粋€(gè)可能會(huì)多次收集數(shù)據(jù)、嘗試預(yù)測(cè)下一個(gè)輸出比特流內(nèi)容的攻擊者。
但是為了防止Entropy本身被泄漏,還有一個(gè)選項(xiàng)是采用第三個(gè)變量──個(gè)人化字符串 (Personalization String);這里的巧妙之處在于,如果這個(gè)輸入是源自于一組編號(hào),就可以確保顯然正在監(jiān)視相同機(jī)器的攻擊者難以有進(jìn)展。SP800-90A規(guī)格還包含 另一個(gè)選擇性的額外輸入(Additional Input),其概念是它可以源自于第二個(gè)(獨(dú)立的) Entropy來源、也就是“腰帶又加上吊帶”的雙重保障。
到這里我的頭開始痛了…然后我讀到有關(guān)于Health Check的部分;Health Check一開始是做為例行檢查、確認(rèn)一切安好,或者是在使用者懷疑攻擊者可能竄改RNG時(shí)進(jìn)行。這個(gè)區(qū)塊惠隔離所有DRBG的外部輸入,然后饋入一組預(yù)設(shè)的刺激;輸出的結(jié)果是針對(duì)一組已知答案的驗(yàn)證,如果因?yàn)槿魏卧蚴。琀ealth Check就會(huì)釋出錯(cuò)誤消息、鎖住RNG ,避免輸出任何被破 解的比特流。
要將RNG嵌入幾乎任何一種FPGA都很容易,設(shè)計(jì)工程師只需要采用RNG IP核心以及簡(jiǎn)單的環(huán)形振蕩器與計(jì)數(shù)器做為Entropy的來源;這種常見規(guī)則適用于打造加密系統(tǒng),因?yàn)樵O(shè)計(jì)工程師必須確保FPGA內(nèi)部的敏感數(shù)據(jù),不能從組件的任何一個(gè)接腳被存取。
模擬、驗(yàn)證被隨機(jī)設(shè)計(jì)的電路可能聽起來很難,但因?yàn)槭峭耆_定性的,RNG核心有一套完整的驗(yàn)證測(cè)試基準(zhǔn);如果最后的加密系統(tǒng)需要聽過外部測(cè)試機(jī)構(gòu)的批準(zhǔn), 該測(cè)試基準(zhǔn)也同樣重要。我只能想象要測(cè)試比特流隨機(jī)特性會(huì)遇到的問題。FPGA的實(shí)作過程應(yīng)該是全數(shù)字化的,所以應(yīng)該很強(qiáng)韌、不會(huì)受到嘗試以改變電壓或溫度的攻擊者之竄改;自振蕩頻率有可能會(huì)變化,但那不應(yīng)該影響輸出比特流的隨機(jī)性質(zhì)量。
采用IP核心做為嵌入式AES加密引擎的一個(gè)好處是,該種電路區(qū)塊能在許多應(yīng)用中同時(shí)支持其他工作,為數(shù)據(jù)流提供多重加密解密,節(jié)省FPGA內(nèi)部空間。當(dāng)它需要透過不安全的連結(jié)傳送加密密鑰,另一個(gè)選項(xiàng)是在密鑰包裝中采用AES加密引擎。
質(zhì)量不良的隨機(jī)隨機(jī)數(shù)不會(huì)成為加密系統(tǒng)的弱點(diǎn),只要采用標(biāo)準(zhǔn)化的解決方案,將可幫助設(shè)計(jì)工程師們一夜好眠。
特別推薦
- 授權(quán)代理商貿(mào)澤電子供應(yīng)Same Sky多樣化電子元器件
- 使用合適的窗口電壓監(jiān)控器優(yōu)化系統(tǒng)設(shè)計(jì)
- ADI電機(jī)運(yùn)動(dòng)控制解決方案 驅(qū)動(dòng)智能運(yùn)動(dòng)新時(shí)代
- 倍福推出采用 TwinSAFE SC 技術(shù)的 EtherCAT 端子模塊 EL3453-0090
- TDK推出新的X系列環(huán)保型SMD壓敏電阻
- Vishay 推出新款采用0102、0204和 0207封裝的精密薄膜MELF電阻
- Microchip推出新款交鑰匙電容式觸摸控制器產(chǎn)品 MTCH2120
技術(shù)文章更多>>
- 更高精度、更低噪音 GMCC美芝電子膨脹閥以創(chuàng)新?lián)屨夹袠I(yè)“制高點(diǎn)”
- 本立租完成近億元估值Pre-A輪融資,打造AI賦能的租賃服務(wù)平臺(tái)
- 中微公司成功從美國國防部中國軍事企業(yè)清單中移除
- 華邦電子白皮書:滿足歐盟無線電設(shè)備指令(RED)信息安全標(biāo)準(zhǔn)
- 功率器件熱設(shè)計(jì)基礎(chǔ)(九)——功率半導(dǎo)體模塊的熱擴(kuò)散
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索