<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > ATmega1 28單片機(jī)的真隨機(jī)數(shù)發(fā)生矗

          ATmega1 28單片機(jī)的真隨機(jī)數(shù)發(fā)生矗

          作者: 時間:2009-12-16 來源:網(wǎng)絡(luò) 收藏



          2 實驗結(jié)果和分析
          經(jīng)實驗,得到兩位不確定二進(jìn)制數(shù)的概率分布。
          5 min后數(shù)據(jù)分布:P(00)=16%,P(01)=19%,P(10)=37%,P(11)=28%。
          10 min后的數(shù)據(jù)分布:P(00)=16%,P(01)=21%,P(10)=38%,P(11)=25%。
          22 min后的數(shù)據(jù)分布:P(00)=14%,P(01)=23%,P(10)=38%,P(11)=25%。
          37 min后的數(shù)據(jù)分布:P(00)=16%,P(01)=26%,P(10)=36%,P(11)=22%。
          以上數(shù)據(jù)由統(tǒng)計后經(jīng)串口直接輸出到超級終端的顯示參數(shù)。
          25℃下產(chǎn)生的3 500個8位數(shù)據(jù)的分布如圖3所示。

          從圖中可以看出,有4個區(qū)間分布概率較大,分別是[0,32]、[40,90]、[160,225]、[230,255]。產(chǎn)生這樣的分布和具體使用的元器件特性以及測試現(xiàn)場的環(huán)境有關(guān)。在采集得到大量的序列后,通過計算機(jī)分析沒有發(fā)現(xiàn)有周期重復(fù)性。


          3 提高性能的措施
          在實際應(yīng)用中,若采用該方法產(chǎn)生的數(shù)進(jìn)行數(shù)據(jù)加密時,為防止解密者拆除、短接RC電路或更改RC電路參數(shù),可利用測得的充放電時間來確定外部RC電路的存在和參數(shù)的穩(wěn)健。如若充放電時間不在程序預(yù)先設(shè)定的區(qū)間內(nèi),立即銷毀相關(guān)數(shù)據(jù)并停止程序運行,從而達(dá)到加密的效果。
          提高數(shù)產(chǎn)生速率。采用本文的方法產(chǎn)生的數(shù)的速率和RC充放電時間有關(guān)系,由于RC充放電速率影響,在產(chǎn)生高速率隨機(jī)數(shù)的時候不合適。針對該問題,可將得到的真隨機(jī)數(shù)作為種子來產(chǎn)生一定數(shù)量的偽隨機(jī)數(shù),這樣可大大提高產(chǎn)生隨機(jī)數(shù)的速率。


          結(jié) 語
          設(shè)計和實現(xiàn)了一種基于AVR的真隨機(jī)數(shù)器,利用RC充放電電路的不穩(wěn)定性完成了真隨機(jī)數(shù)的產(chǎn)生。該隨機(jī)數(shù)器利用AVR單片機(jī)少量硬件資源完成,具有設(shè)計簡單,成本低廉的優(yōu)點。最后提出了軟硬件結(jié)合的方式,提高了該隨機(jī)數(shù)器的性能,拓展了該真隨機(jī)數(shù)發(fā)生器的應(yīng)用范圍。


          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();