安全性設(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)或購(gòu)物時(shí),都得仰賴安全性通訊。
有許多密碼學(xué)菁英任職于美國(guó)國(guó)家標(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ì)我來(lái)說(shuō)是有意義的,接下來(lái)我將先簡(jiǎn)短介紹DRBG的原理,然后談?wù)勅绾螌⑦@種RNG嵌入FPGA中;現(xiàn)在我需要先厘清一些會(huì)用到的專門術(shù)語(yǔ),然后解釋其運(yùn)作過(guò)程。
任何一套加密系統(tǒng)會(huì)需要一組密鑰以及一組輸入的數(shù)據(jù)流,從這里事情開(kāi)始變得比較復(fù)雜。用以編排密碼的、“或多或少隨機(jī)”的比特流,被稱做是Entropy (熵)輸入;為了確保每次RNG的產(chǎn)出是不同的,Entropy要結(jié)合叫做Nonce (隨機(jī)數(shù))的輸入;Nonce在通過(guò)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來(lái)源、也就是“腰帶又加上吊帶”的雙重保障。
到這里我的頭開(kāi)始痛了…然后我讀到有關(guān)于Health Check的部分;Health Check一開(kāi)始是做為例行檢查、確認(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的來(lái)源;這種常見(jiàn)規(guī)則適用于打造加密系統(tǒng),因?yàn)樵O(shè)計(jì)工程師必須確保FPGA內(nèi)部的敏感數(shù)據(jù),不能從組件的任何一個(gè)接腳被存取。
模擬、驗(yàn)證被隨機(jī)設(shè)計(jì)的電路可能聽(tīng)起來(lái)很難,但因?yàn)槭峭耆_定性的,RNG核心有一套完整的驗(yàn)證測(cè)試基準(zhǔn);如果最后的加密系統(tǒng)需要聽(tīng)過(guò)外部測(cè)試機(jī)構(gòu)的批準(zhǔn), 該測(cè)試基準(zhǔn)也同樣重要。我只能想象要測(cè)試比特流隨機(jī)特性會(huì)遇到的問(wèn)題。FPGA的實(shí)作過(guò)程應(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)它需要透過(guò)不安全的連結(jié)傳送加密密鑰,另一個(gè)選項(xiàng)是在密鑰包裝中采用AES加密引擎。
質(zhì)量不良的隨機(jī)隨機(jī)數(shù)不會(huì)成為加密系統(tǒng)的弱點(diǎn),只要采用標(biāo)準(zhǔn)化的解決方案,將可幫助設(shè)計(jì)工程師們一夜好眠。
特別推薦
- X-CUBE-STL:支持更多STM32, 揭開(kāi)功能安全的神秘面紗
- 大聯(lián)大世平集團(tuán)的駕駛員監(jiān)控系統(tǒng)(DMS)方案榮獲第六屆“金輯獎(jiǎng)之最佳技術(shù)實(shí)踐應(yīng)用”獎(jiǎng)
- 貿(mào)澤推出針對(duì)基礎(chǔ)設(shè)施和智慧城市的工程技術(shù)資源中心
- 大普技術(shù)自主可控、高精度、小型化TCXO——對(duì)講機(jī)應(yīng)用
- Melexis創(chuàng)新推出集成喚醒功能的汽車制動(dòng)踏板位置傳感器芯片方案
- Vishay推出的新款高能浪涌限流PTC熱敏電阻,可提高有源充放電電路性能
- 美芯晟推出支持ALS和Flicker的小尺寸閃爍光傳感器芯片
技術(shù)文章更多>>
- 車用開(kāi)關(guān)電源的開(kāi)關(guān)頻率定多高才不影響EMC?
- 貿(mào)澤推出針對(duì)基礎(chǔ)設(shè)施和智慧城市的工程技術(shù)資源中心
- “扒開(kāi)”超級(jí)電容的“外衣”,看看超級(jí)電容“超級(jí)”在哪兒
- DigiKey 誠(chéng)邀各位參會(huì)者蒞臨SPS 2024?展會(huì)參觀交流,體驗(yàn)最新自動(dòng)化產(chǎn)品
- 提前圍觀第104屆中國(guó)電子展高端元器件展區(qū)
技術(shù)白皮書(shū)下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
Cirrus Logic
CNR
CPU
CPU使用率高
Cree
DC/AC電源模塊
dc/dc
DC/DC電源模塊
DDR2
DDR3
DIY
DRAM
DSP
DSP
D-SUB連接器
DVI連接器
EEPROM
Element14
EMC
EMI
EMI濾波器
Energy Micro
EPB
ept
ESC
ESD
ESD保護(hù)
ESD保護(hù)器件
ESD器件
Eurotect