安全性設(shè)計(jì)如何選擇可靠的隨機(jī)數(shù)加密方案?
發(fā)布時(shí)間:2015-06-01 責(zé)任編輯:sherry
【導(dǎo)讀】質(zhì)量不良的隨機(jī)隨機(jī)數(shù)不會成為加密系統(tǒng)的弱點(diǎn),只要采用標(biāo)準(zhǔn)化的解決方案,將可幫助設(shè)計(jì)工程師們一夜好眠。那么如何為安全設(shè)計(jì)選擇可靠的隨機(jī)數(shù)加密方案?
隨機(jī)數(shù)(random number)是密碼學(xué)的鑰匙(也是關(guān)鍵),它們會是加密系統(tǒng)的弱點(diǎn),因此也常變成受攻擊的目標(biāo);因此我總是嘗試讓我的腦袋繞著有關(guān)隨機(jī)性的主題轉(zhuǎn)。
我一直認(rèn)為二極管接面(diode junction)的熱噪聲(thermal noise)是隨機(jī)性的,但是現(xiàn)在,它似乎并不是那么隨機(jī)。密碼學(xué)家們總是在思考壞人可能會發(fā)動的攻擊手法,然后要想出對抗的招數(shù);他們做的是好事,因?yàn)榇蠖鄶?shù)人(包括我自己)在進(jìn)行在線金融活動或購物時(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)對我來說是有意義的,接下來我將先簡短介紹DRBG的原理,然后談?wù)勅绾螌⑦@種RNG嵌入FPGA中;現(xiàn)在我需要先厘清一些會用到的專門術(shù)語,然后解釋其運(yùn)作過程。
任何一套加密系統(tǒng)會需要一組密鑰以及一組輸入的數(shù)據(jù)流,從這里事情開始變得比較復(fù)雜。用以編排密碼的、“或多或少隨機(jī)”的比特流,被稱做是Entropy (熵)輸入;為了確保每次RNG的產(chǎn)出是不同的,Entropy要結(jié)合叫做Nonce (隨機(jī)數(shù))的輸入;Nonce在通過DRBG的每一個周期,必須要改變或是增加。這是有道理的,因?yàn)槟阈枰蓝乱粋€可能會多次收集數(shù)據(jù)、嘗試預(yù)測下一個輸出比特流內(nèi)容的攻擊者。
但是為了防止Entropy本身被泄漏,還有一個選項(xiàng)是采用第三個變量──個人化字符串 (Personalization String);這里的巧妙之處在于,如果這個輸入是源自于一組編號,就可以確保顯然正在監(jiān)視相同機(jī)器的攻擊者難以有進(jìn)展。SP800-90A規(guī)格還包含 另一個選擇性的額外輸入(Additional Input),其概念是它可以源自于第二個(獨(dú)立的) Entropy來源、也就是“腰帶又加上吊帶”的雙重保障。
到這里我的頭開始痛了…然后我讀到有關(guān)于Health Check的部分;Health Check一開始是做為例行檢查、確認(rèn)一切安好,或者是在使用者懷疑攻擊者可能竄改RNG時(shí)進(jìn)行。這個區(qū)塊惠隔離所有DRBG的外部輸入,然后饋入一組預(yù)設(shè)的刺激;輸出的結(jié)果是針對一組已知答案的驗(yàn)證,如果因?yàn)槿魏卧蚴?,Health Check就會釋出錯誤消息、鎖住RNG ,避免輸出任何被破 解的比特流。
要將RNG嵌入幾乎任何一種FPGA都很容易,設(shè)計(jì)工程師只需要采用RNG IP核心以及簡單的環(huán)形振蕩器與計(jì)數(shù)器做為Entropy的來源;這種常見規(guī)則適用于打造加密系統(tǒng),因?yàn)樵O(shè)計(jì)工程師必須確保FPGA內(nèi)部的敏感數(shù)據(jù),不能從組件的任何一個接腳被存取。
模擬、驗(yàn)證被隨機(jī)設(shè)計(jì)的電路可能聽起來很難,但因?yàn)槭峭耆_定性的,RNG核心有一套完整的驗(yàn)證測試基準(zhǔn);如果最后的加密系統(tǒng)需要聽過外部測試機(jī)構(gòu)的批準(zhǔn), 該測試基準(zhǔn)也同樣重要。我只能想象要測試比特流隨機(jī)特性會遇到的問題。FPGA的實(shí)作過程應(yīng)該是全數(shù)字化的,所以應(yīng)該很強(qiáng)韌、不會受到嘗試以改變電壓或溫度的攻擊者之竄改;自振蕩頻率有可能會變化,但那不應(yīng)該影響輸出比特流的隨機(jī)性質(zhì)量。
采用IP核心做為嵌入式AES加密引擎的一個好處是,該種電路區(qū)塊能在許多應(yīng)用中同時(shí)支持其他工作,為數(shù)據(jù)流提供多重加密解密,節(jié)省FPGA內(nèi)部空間。當(dāng)它需要透過不安全的連結(jié)傳送加密密鑰,另一個選項(xiàng)是在密鑰包裝中采用AES加密引擎。
質(zhì)量不良的隨機(jī)隨機(jī)數(shù)不會成為加密系統(tǒng)的弱點(diǎn),只要采用標(biāo)準(zhǔn)化的解決方案,將可幫助設(shè)計(jì)工程師們一夜好眠。
特別推薦
- 自主生態(tài)護(hù)城河:數(shù)字化轉(zhuǎn)型的可持續(xù)競爭力構(gòu)建
- 1600W雙路交錯新紀(jì)元:無橋圖騰柱TCM_PFC數(shù)字電源方案解析
- CITE 2025啟幕在即:頂尖展商集結(jié) 見證巔峰時(shí)刻
- 相位魔法解碼:真時(shí)延技術(shù)如何實(shí)現(xiàn)毫米級指向精度
- 第18講:SiC MOSFET的動態(tài)特性
- 光與波的博弈:紅外vs雷達(dá)人體感應(yīng)器技術(shù)原理與場景適配方案全解析
- 賦能AI與能源及數(shù)字化轉(zhuǎn)型,TDK解決方案亮相慕尼黑上海電子展
技術(shù)文章更多>>
- 貿(mào)澤電子啟動EIT技術(shù)新篇章:解碼腦機(jī)接口未來密碼
- 聯(lián)發(fā)科為開發(fā)者打造的調(diào)試“上帝視角”, Dimensity Profiler 工具來了
- 學(xué)子專區(qū)論壇- ADALM2000實(shí)驗(yàn):脈寬調(diào)制
- 動態(tài)離散周期變換技術(shù)突破:無ECG參考的生理信號精準(zhǔn)解析
- 無纜智能終端的能源進(jìn)化論:破解微型設(shè)備供能困局
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
瑞薩
賽普拉斯
三端穩(wěn)壓管
三極管
色環(huán)電感
上海豐寶
攝像頭
生產(chǎn)測試
聲表諧振器
聲傳感器
濕度傳感器
石英機(jī)械表
石英石危害
時(shí)間繼電器
時(shí)鐘IC
世強(qiáng)電訊
示波器
視頻IC
視頻監(jiān)控
收發(fā)器
手機(jī)開發(fā)
受話器
數(shù)字家庭
數(shù)字家庭
數(shù)字鎖相環(huán)
雙向可控硅
水泥電阻
絲印設(shè)備
伺服電機(jī)
速度傳感器