• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      一種新的傳感器網(wǎng)絡的密鑰協(xié)商算法

      2013-10-22 07:25:54王偉欣
      傳感器與微系統(tǒng) 2013年7期
      關鍵詞:公鑰解密密鑰

      王 亮,王偉欣,張 林

      (江西理工大學信息工程學院,江西贛州 341000)

      0 引言

      伴隨社會科技的進步,傳感器在人們的日常生活中越來越普遍,能耗問題和安全問題成為無線傳感器關注的焦點,而耗電量與密鑰的實現(xiàn)方法息息相關。私鑰加密體系因為其加密的效率高、速度快被廣泛地關注,是如今最常用的數(shù)據(jù)加密標準[1]。但是,它有不適合用于無線傳感器網(wǎng)絡的缺點。因為在傳感器網(wǎng)絡上的節(jié)點并不是限制為一對,而是大量的節(jié)點。例如:在有n個節(jié)點的網(wǎng)絡,則需要產(chǎn)生的私有密鑰個數(shù)為n(n-1)/2。如果n變得很大時,密鑰的管理就很復雜,而且這些私有密鑰都是在傳感器網(wǎng)絡上生成,因此,生成密鑰并找到安全通道分發(fā)密鑰就成了傳感器網(wǎng)絡的負擔。

      公鑰加密體系使用2個密鑰,每個節(jié)點在網(wǎng)絡上發(fā)布了一個公共密鑰,任何節(jié)點都可以用公共密鑰來給它們發(fā)送消息,同時保持私有密鑰進行解密。n個節(jié)點通信時,只需要n個私有密鑰和n個公有密鑰。時間復雜度從O(n2)減少為O(n)。然而,公鑰密碼系統(tǒng)也有其缺點,它要比私鑰加密慢幾個數(shù)量級別。比如:RSA需要1024位的密鑰,橢圓曲線加密(ECC)算法要達到同樣的安全級別只需要160位[2]。ECC算法因為存儲空間小、處理速度快、計算量小等優(yōu)點,非常適用無線傳感器網(wǎng)絡的加密解密。

      1 ECC與RSA理論

      1.1 RSA 加密體制

      在密碼學中,RSA(Rivest-Shamir-Adleman)密碼體制是一種公鑰加密算法。這是目前應用最廣的適合簽名和加密的算法,普遍認為是最優(yōu)秀的公鑰方案之一[3],主要用于不安全的通信介質(zhì)、電子商務協(xié)議和服務供應商的身份認證。RSA算法包括3個步驟:密鑰生成、加密和解密。RSA使用大小可變的加密塊和一個可變大小的密鑰,密鑰對來自一個大的數(shù)n(即根據(jù)特殊規(guī)則選擇的2個素數(shù)的乘積),根據(jù)會話各方和施加的約束所需要的安全目標實現(xiàn)安全協(xié)議。

      1.2 ECC 加密體制

      ECC密鑰對的生成是根據(jù)橢圓曲線的參數(shù)組T=(m,p,q,G,n,h)。橢圓曲線加密算法以曲線y2=x3+ax+b為基礎,其中,a b∈Fq且4a3+27b2≠0。每改變參數(shù)p,q就能找到不同的橢圓曲線。密鑰對產(chǎn)生后,還需要判斷密鑰對的合法性。在公鑰合法性的判斷中,需要判斷公有密鑰Q是否符合參數(shù)組T=(m,p,q,G,n,h)確定的橢圓曲線[4~6]。如果條件不滿足就需要重新生成密鑰。

      1.3 ECC 實現(xiàn)難點

      ECC加密中最關鍵、最耗時的運算就是標量乘,其逆運算為ECC密碼體制的離散對數(shù)難問題[7],主要的運算包括ECC加法運算和ECC倍乘運算。

      1)加點

      令P=(x1,y1)∈E(K),Q=(x2,y2)∈E(K),P≠ ±Q,則P+Q=(x3,y3)。其中

      圖1 ECC加點運算Fig 1 ECC add operation

      2)倍點

      當P=Q時,令P=(x1,y1)∈E(K),P≠ -P,則 2P=(x3,y3)。P點的切線和曲線交于R',此點在x坐標軸的對稱點即為點R。其中

      2 RSA和ECC算法

      2.1 RSA 算法

      2.1.1 生成密鑰

      1)選取2個足夠大的素數(shù)p和q,且p不等于q,同時計算n=pq;

      2)計算e'=(p-1)(q-1);

      3)選擇e與(p-1)(q-1)互質(zhì),e=gcd(e',e)=1;

      圖2 ECC倍點運算Fig 2 ECC point multiplication

      4)公式計算d:d=e-1mode'。

      2.1.2 加密

      加密公式:c=Me modn,計算c并不復雜,節(jié)點A算出c后就可以將它傳遞給節(jié)點B。

      2.1.3 解密

      節(jié)點B獲得服務器的消息后,利用自己的密鑰d來解碼。解密公式:M=Cd modn。

      RSA算法的缺點主要有2點:

      1)產(chǎn)生密鑰耗時太久,受到素數(shù)產(chǎn)生技術的限制,因而難以做到一次一密;

      2)為保證安全性,n至少也要600 bits以上,使運算代價提高,尤其是速度減慢,較對稱密碼算法慢幾個數(shù)量級。

      2.2 ECC 算法

      2.2.1 初始化環(huán)境,并生成密鑰

      選取基于F2橢圓曲線T=(m,p,q,G,n,h)上一個素數(shù)階n的點G(xp,yp),私鑰d∈[1,n-1],并計算公鑰PK=dG;

      2.2.2 加密過程

      節(jié)點A發(fā)送信息m給節(jié)點B時,節(jié)點A執(zhí)行下列步驟:

      1)查找節(jié)點B的公鑰PKB;

      2)將信息m表示成橢圓曲線F2域元素m∈F2;

      3)在選取一個隨機整數(shù)k∈[1,n-1]:

      4)計算點(x1,y1)=kG;

      5)計算點(x2,y2)=kPKB;

      6)計算c=mx2;

      7)傳送加密數(shù)據(jù)(x1,y1,c)給B。

      2.2.3 解密過程

      當節(jié)點B解密收到的密文時,執(zhí)行下列步驟:

      1)使用公鑰和它自身的私鑰dB,計算點(x2,y2)=dB(x1,y1);

      2)通過公式m=cx2,對數(shù)據(jù)m進行恢復。

      為了提高性能,減少計算量,對傳統(tǒng)ECC算法做了改進。

      2.3 本文改進算法(MAC-F-ECC)

      MAC-F-ECC算法和原傳統(tǒng)算法相比,增加了Mac地址校驗來提高安全性,本文按事先約定好的映射關系從信息m中截取一段作為Mac地址,并使用Frobenius算法代替二進制算法計算kG,減少了運算次數(shù),提高效率。公式(5)為MAC-F-ECC算法倍乘的實現(xiàn)

      MAC-F-ECC算法流程圖如圖3。

      圖3 MAC-F-ECC流程圖Fig 3 MAC-F-ECC flow chart

      2.4 性能評估

      2)在加密的過程中,將MAC地址身份信息連同消息一同發(fā)出進行校驗,增加算法安全性。

      3 ECC和RSA的比較

      3.1 安全性分析

      由于傳感器的計算能力和存儲空間有限,所以,受到密鑰長度的限制,ECC體制能通過生成較短的密鑰達到較好的安全級別。當然所需帶寬顯然也減少,并降低了傳感器的存儲要求和計算負擔。最著名的ECC加密技術公司Certieom曾做過實驗比較[4],結(jié)果表明:ECC算法所需破譯時間要比RSA算法多得多,如圖4所示。

      3.2 能耗性分析

      圖4 安全級別Fig 4 Safety level

      橢圓曲線的點乘操作是加密過程中最耗時的步驟,減少點乘算法的時間復雜度就在最大程度上節(jié)約了能耗。改進的MAC-F-ECC算法降低加點的數(shù)量,加快加密算法的計算,如圖5所示。

      圖5 算法能耗對比圖Fig 5 Contrast diagram of algorithm energy consumption

      3.3 速度效率分析

      圖6從三加密算法的3個階段(密鑰生成、加密,解密)所需的時間(ms)。仿真效果表明:RSA算法除了在解密驗證時速度稍微低于MAC-F-ECC算法,其他階段MACF-ECC算法都明顯其他2種算法,且總耗時要優(yōu)于傳統(tǒng)ECC算法。

      圖6 各階段時間對比圖Fig 6 Contrast times diagram of each stage

      4 結(jié)束語

      在無線傳感器上采用公鑰加密體制體質(zhì)代替原有的私鑰加密體制,有著極其重要的意義,文中提出的MAC-FECC算法,通過對其安全性、能耗以及效率的分析可知,該算法能夠滿足通信節(jié)點進行相互身份認證和密鑰協(xié)商的要求,而且具有安全性高、計算量小、信息量少的特點。正因為MAC-F-ECC算法的這些優(yōu)勢,才能適用于無線傳感器網(wǎng)絡。

      [1] 丁 宏,郭艷華.一種安全有效的小公鑰加密協(xié)議及其應用[J].小型微型計算機系統(tǒng),2003,24(5):819 -821.

      [2] 彭長艷等.基于IBC的TLS握手協(xié)議設計與分析[J].計算機應用,2009(3):633-638.

      [3] 王紅珍,李竹林.基于AES和ECC的混合加密系統(tǒng)的設計與實現(xiàn)[J].電子設計工程,2012,20(4):9 -11.

      [4] 彭 冰,付 才,付 雄.一種基于橢圓曲線的高效移動支付系統(tǒng)[J].計算機應用研究,2008,25(9):2819 -2821.

      [5] 胡 磊,馮登國,文鐵華.一類 Koblitz橢圓曲線的快速點乘[J].軟件學報,2003,14(1):1907 -1910.

      [6] 田 野,盛 敏,李建東.一種新的傳感器網(wǎng)絡MAC地址分配算法[J].西安電子科技大學學報,2006,33(5):716 -720.

      [7] 魏東梅.基于FPGA的F2m域橢圓曲線點乘的快速實現(xiàn)[J].計算機應用,2011,31(2):540 -542.

      猜你喜歡
      公鑰解密密鑰
      探索企業(yè)創(chuàng)新密鑰
      解密“熱脹冷縮”
      解密“一包三改”
      少先隊活動(2020年9期)2020-12-17 06:17:31
      密碼系統(tǒng)中密鑰的狀態(tài)與保護*
      炫詞解密
      一種基于混沌的公鑰加密方案
      一種對稱密鑰的密鑰管理方法及系統(tǒng)
      基于ECC的智能家居密鑰管理機制的實現(xiàn)
      電信科學(2017年6期)2017-07-01 15:45:06
      HES:一種更小公鑰的同態(tài)加密算法
      SM2橢圓曲線公鑰密碼算法綜述
      广灵县| 建德市| 民丰县| 双辽市| 沾化县| 皮山县| 洪雅县| 苏州市| 江门市| 岐山县| 师宗县| 阿尔山市| 成安县| 布拖县| 高安市| 红河县| 巴南区| 应城市| 清水县| 大新县| 芜湖市| 阳东县| 石家庄市| 宁远县| 巴林右旗| 五家渠市| 嘉义县| 海林市| 南靖县| 曲松县| 桃源县| 乡城县| 泊头市| 海阳市| 阿鲁科尔沁旗| 阳江市| 墨玉县| 辽阳县| 丹东市| 肥乡县| 西和县|