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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 數(shù)據(jù)加密技術(shù)在嵌入式系統(tǒng)中的應(yīng)用

          數(shù)據(jù)加密技術(shù)在嵌入式系統(tǒng)中的應(yīng)用

          作者: 時(shí)間:2013-01-16 來源:網(wǎng)絡(luò) 收藏

          2 技術(shù)的特點(diǎn)
          所謂技術(shù)是指將信息(或稱明文)經(jīng)過加匙及加密函數(shù)轉(zhuǎn)換,變成無意義的密文,而接收方將此密文經(jīng)過解密函數(shù)、解匙還原成明文的技術(shù)。
          技術(shù)要求只有在指定的用戶或網(wǎng)絡(luò)下,才能解除密碼而獲得原來的數(shù)據(jù),因此數(shù)據(jù)發(fā)送方和接收方都需要一些特殊的信息用于加解密,這就是所謂的(或加密算法)。密鑰分為專用密鑰和公開密鑰兩種。中用戶端的密鑰存儲(chǔ)在硬件設(shè)備中,因數(shù)據(jù)存儲(chǔ)芯片在硬件上設(shè)置有加密機(jī)制,無法被讀取或破譯,因此采用專用密鑰這種簡單的形式即可滿足要求。
          中,“遠(yuǎn)程控制端”的密鑰由遠(yuǎn)程控制人員掌握,“用戶端”的密鑰存儲(chǔ)在嵌入式系統(tǒng)中,用戶無法得到密鑰數(shù)據(jù),就無法破解密文數(shù)據(jù),從而無法擅自設(shè)置嵌入式設(shè)備中需要保護(hù)的工作參數(shù)和工作狀態(tài)。
          根據(jù)嵌入式系統(tǒng)的特點(diǎn)及加密技術(shù)的應(yīng)用環(huán)境,應(yīng)用到嵌入式系統(tǒng)時(shí),數(shù)據(jù)加密具有以下幾個(gè)特點(diǎn):
          (1)加密算法要簡單且容易在MCU上實(shí)現(xiàn),占用的字節(jié)數(shù)要盡可能少;
          (2)應(yīng)具有較高的加密強(qiáng)度。如果用戶有多臺(tái)設(shè)備,就有機(jī)會(huì)獲得多套密文數(shù)據(jù)。由于設(shè)備和密文數(shù)據(jù)都處于用戶掌控之下,如果加密強(qiáng)度不夠,密文數(shù)據(jù)將很容易被破解,并被非法應(yīng)用到其他設(shè)備;
          (3)加密技術(shù)應(yīng)能識(shí)別密文數(shù)據(jù)是否被非法篡改,以防止用戶更改數(shù)據(jù)后再在設(shè)備上試驗(yàn),進(jìn)而逐步掌握密文數(shù)據(jù)的加密規(guī)則;
          (4)密文數(shù)據(jù)中應(yīng)包含設(shè)備序列號(hào)信息,以防止數(shù)據(jù)被非法應(yīng)用到其他設(shè)備。

          3 數(shù)據(jù)加密的實(shí)現(xiàn)方法
          下面介紹的數(shù)據(jù)加密方法已成功應(yīng)用薊某嵌入式設(shè)備中。其基本過程是,先把被加密數(shù)據(jù)通過“置換表”法、數(shù)據(jù)字節(jié)運(yùn)算等加密算法進(jìn)行加密處理,再把加密后的數(shù)據(jù)根據(jù)一定的規(guī)則隨機(jī)地插入到一隨機(jī)數(shù)序列中,同時(shí)把該數(shù)據(jù)在數(shù)列中的存儲(chǔ)地址插入該數(shù)列的某規(guī)定位置。操作完成后再對(duì)該數(shù)列采用“置換表”法進(jìn)行數(shù)據(jù)置換,并采用循環(huán)冗余校驗(yàn)技術(shù)分段計(jì)算數(shù)列的校驗(yàn)和,并把校驗(yàn)和插入數(shù)列的規(guī)定位置。該方法加密強(qiáng)度高,代碼量少,運(yùn)算量小,隨機(jī)存儲(chǔ)器需求量小,適合應(yīng)用到嵌入式系統(tǒng)中。
          3.1 數(shù)據(jù)加密方法
          在加密數(shù)據(jù)前,首先產(chǎn)生一隨機(jī)數(shù)序列X[i],其中iN,N為數(shù)組長度(單位為B),其大小可根據(jù)原始數(shù)據(jù)的數(shù)量、加密強(qiáng)度、嵌入式系統(tǒng)的存儲(chǔ)和處理能力等綜合考慮后確定。
          在加密過程中,原始數(shù)據(jù)通過二次尋址的方式插入隨機(jī)數(shù)列,這樣數(shù)據(jù)在數(shù)列中的存儲(chǔ)位置可以是隨機(jī)的,被加密數(shù)據(jù)的存儲(chǔ)地址是相對(duì)固定的。數(shù)據(jù)二次尋址方式原理示意圖如圖3所示。圖中,每次加密操作時(shí)原始數(shù)據(jù)0x7E的存儲(chǔ)位置是隨機(jī)的,本次加密操作時(shí)其存儲(chǔ)地址0x01C2存儲(chǔ)在0x00D9和0x01D8兩個(gè)字節(jié)中。

          本文引用地址:http://www.ex-cimer.com/article/148137.htm

          b.JPG


          假設(shè)某數(shù)據(jù)d在隨機(jī)數(shù)列中的存儲(chǔ)位置為md(雙字節(jié)),地址md為小于N的隨機(jī)數(shù),md在隨機(jī)數(shù)列中的存儲(chǔ)位置為nd'(高字節(jié))和kd'(低字節(jié)),則原始數(shù)據(jù)d可表述為:
          c.JPG
          為提高加密強(qiáng)度,數(shù)據(jù)d的存儲(chǔ)地址的存儲(chǔ)地址nd'和kd'是偽隨機(jī)的,每次加密操作時(shí),其值將分別在地址空間Jnd±F,Jkd±F的范圍內(nèi)變化,其中,Jnd,Jkd分別為數(shù)據(jù)d存儲(chǔ)地址的高、低字節(jié)的存儲(chǔ)基地址,F(xiàn)為存儲(chǔ)地址最大偏移量。這3個(gè)量都是事先定義好的。為簡化算法的復(fù)雜程度,降低算法對(duì)隨機(jī)存儲(chǔ)器的需求,所有原始數(shù)據(jù)基地址的最大偏移量可以設(shè)置成相等。
          加密操作時(shí)基地址偏移量的具體值,f隨機(jī),由隨機(jī)數(shù)列中某些元素通過規(guī)定的算法運(yùn)算得到:
          f隨機(jī)=F1(X[xa],…,X[xb]) (2)
          式中:xa,…,xb分別為小于N的固定值;F1表示運(yùn)算規(guī)則。運(yùn)算規(guī)則可以采用求和再取低幾位、取反求和等各種規(guī)則,但要保證運(yùn)算結(jié)果f隨機(jī)F。為簡化加密過程,可以在隨機(jī)數(shù)列中規(guī)定某段數(shù)據(jù)專門用于產(chǎn)生基地址偏移量。
          考慮到f隨機(jī),則式(1)變?yōu)椋?br />e.JPG
          式中:Jnd,Jkd分別是數(shù)據(jù)nd'和kd'在隨機(jī)數(shù)列X[i]中的基地址;f隨機(jī)是本次加密操作的地址偏移量。



          評(píng)論


          相關(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); })();