?

基于ECDSA優化算法的智能農業無線傳感器節點的網絡安全認證

2015-06-15 01:05馬少華張興韓冬史偉
江蘇農業科學 2015年4期
關鍵詞:優化

馬少華 張興 韓冬 史偉

摘要:為滿足應用于監測大棚種植基本環境的無線傳感器節點認證的需求,在傳感器IRIS節點上實現了基于橢圓曲線加密體制的數字簽名算法(ECDSA),并在ECDSA程序中嵌入7種針對提高ECDSA性能的優化算法,通過開/關的方式,比較各優化算法的空間復雜度(消耗ROM/RAM空間)和時間復雜度(初始化所需時間、簽名產生所需時間、認證所需時間)。通過試驗測試和綜合比較分析,提出了適合應用于大棚種植監測的無線傳感器節點認證方案。

關鍵詞:智能農業;無線傳感器節點;網絡安全認證;橢圓曲線數字簽名算法;優化

中圖分類號: S126 文獻標志碼: A

文章編號:1002-1302(2015)04-0389-03

收稿日期:2015-01-07

基金項目:國家自然科學基金(編號:61272214);遼寧省博士科研啟動基金(編號:20121045);遼寧省高等學校杰出青年學者成長計劃(編號:LJQ2014066)。

作者簡介:馬少華(1988—),男,江蘇大豐人,碩士研究生,從事物聯網信息安全研究。E-mail:756918512@qq.com。

通信作者:張 興,副教授,研究生導師,從事網絡體系架構與協議、信息安全等研究。E-mail:zhang_xing@emails.bjut.edu.cn。

現代設施農業是適應市場化、集約化、國際化大生產的新型現代農業產業形態,是傳統農業向現代高效農業轉變過程的必然選擇,設施農業發展狀況在一定程度上反映了農業現代化水平[1-2]。大棚種植是設施農業中一個重要組成部分,具有利用適宜作物生長的環境溫濕度和光合作用來控制植物生長的優點。由Eko節點構成的智能農業傳感網能夠收集對農作物影響非常大的土壤溫濕度、光照等信息,通過無線多跳的ZigBee+4G方式傳送到種植園主的手機上,方便其了解農作物生長的環境狀況,以便采取有效措施促進生產。 目前,智能農業傳感網已應用于國內外的種植園和果蔬大棚中,對農作物的生長管理、產品產量和質量提高具有顯著效果,它的精度高、靈活性強、可靠性高、經濟性好等優點使其在設施農業領域具有非常好的應用前景[3]。但是,如果智能農業傳感網發給種植園主的是虛假信息或是被篡改的不真實信息,那么智能農業傳感網非但不能對生產起促進作用,反而會耽誤灌溉、施肥等有效時機,或使農作物的生長環境變得更糟。智能農業傳感網的安全保障就變得至關重要。 通過分析可知,只要保證農業傳感信息的來源可靠和在傳輸過程中不被篡改就足夠了,而無需對這些信息進行保密。當前的問題是對稱加密算法在信息加密方面非常有效,而在認證方面無法保證鄰居之間對密鑰的安全建立;非對稱加密算法的開銷非常大,不適合資源非常有限的無線傳感器網絡。ECC算法的實施有效解決了這一問題,但尚未見在Eko節點的IRIS平臺上實施[4-5]。

為滿足應用于大棚種植的無線傳感器網絡中節點認證的需求,本研究實現了在傳感器IRIS平臺上運行基于橢圓曲線加密體制的數字簽名算法(ECDSA);并加入7種優化算法,通過對它們測試、比較和分析,提出了一個適于大棚種植的節點認證方案,從而使簽名和認證時間大大縮短,并確保該方案適用于資源有限的由Eko節點構成的智能農業傳感網。

1 軟硬件平臺

1.1 硬件平臺

現在得到應用的Eko節點為Crossbow公司產品,目前,該公司的WSN方面的產品已被MEMSIC公司收購。Eko傳感器節點基于IRIS平臺,其ROM空間為128 k字節,RAM空間為8 k字節;通信模塊位于ISM免費頻段2.4 GHz,并支持IEEE 802.15.4協議,數據的傳輸率為250 kb/s,最大可視傳輸距離超過了1 000 m(最大可視傳輸距離指無障礙情況下的通信,2008年,在北京北海兩岸布置IRIS節點測試得到最大可視距離);處理器芯片采用是低功耗的ATmega1281,其性能有利于進行數字簽名中的大量復雜運算。

1.2 軟件平臺

Eko節點使用的是無線傳感器平臺所特有的開源操作系統TinyOS,由nesC編程語言編寫。TinyOS是一款基于事件驅動型的操作系統,其特點是能很有效地調度各種組件,從而高效地完成各項系統功能。

2 ECDSA及其優化算法

2.1 ECC簡介

橢圓加密算法(ECC)的數學基礎是利用橢圓曲線上的有理點構成Abel加法群上橢圓離散對數的計算困難性,是目前公鑰加密體制中對1 bit所提供加密強度最高的加密算法。ECC僅需使用160 bits的密鑰長度就可獲得等同于RSA加密算法采用密鑰長度為1 024 bits的安全強度[4-6]。本研究采用160 bit的橢圓加密算法算法。

2.2 數字簽名原理

所謂數字簽名,就是只有消息的發送方才能產生的別人無法偽造的一段數字串,這段數字串同時也是對信息的發送方發送信息真實性的一個有效證明。數字簽名一般通信過程如圖1所示。 (1)節點A通過自己的私鑰和數字簽名生成算法對消息M進行簽名,得到簽名S,并附在消息M上。(2)節點B收到來自節點A的消息后,通過節點A的公鑰和數字簽名認證算法對收到的消息進行認證,根據返回的簽名有效值來判斷消息的真偽。

2.3 ECDSA數字簽名方案

ECDSA數字簽名方案是ECC和DSA的結合。整個簽名過程與DSA類似,所不同的是簽名、認證中采用的算法是ECC,最后的簽名S為(r,s)(圖1)。ECDSA數字簽名生成算法和簽名認證算法如下。(1)數字簽名生成算法:記P=(x,y)。節點A選取一隨機整數k滿足1≤k

2.4 ECDSA的7種優化算法

ECDSA可劃分為ECC算法模塊和數字簽名模塊。其中ECC模塊由大整數運算和橢圓曲線類組成,數字簽名模塊由數字簽名的產生和認證組成。本研究選取4種優化大整數運算的算法(巴雷特減法算法[7]、混合乘法算法[8]、混合平方算法[9]、曲線優化算法[8])、2種優化橢圓曲線的算法(射影平面坐標系[8]、滑動窗口[8])和1種優化簽名認證的算法(夏米爾技巧優化算法[9])。由于本研究側重于對各優化算法在 IRIS 節點上的性能分析,各優化算法具體知識可詳見參考文獻[8-9]。

3 ECDSA及7種優化算法的實現

3.1 ECDSA的實現

本研究設定消息長度為52 b,為提高測試結果的準確性,每個程序測試10次,試驗結果取10次測試結果的算術平均值。測試結果見表1,ECDSA所占用的ROM和RAM在IRIS節點的承受范圍之內,初始化所需的時間也較短,但簽名生成所需時間和簽名認證所需時間較長,特別是簽名認證所需時間超過了1 min。

表1 ECDSA在IRIS節點上的測試結果

節點類型

所需空間(byte) 所需時間(s)

ROM RAM 初始化 簽名生成 簽名認證

IRIS 16 860 817 0.000 1 31.954 4 64.225 5

3.2 優化算法的測試

本研究對上述7種優化算法通過開關的方式來測試其在IRIS節點上所耗的ROM/RAM空間、初始化所需時間、簽名產生時間和認證所需時間。

3.2.1 主要程序代碼

##NN

CFLAGS+=-DBARRETT_REDUCTION #巴雷特減法

CFLAGS+=-DHYBRID_MULT #混合乘法

CFLAGS+=-DHYBRID_SQR #混合平方法

CFLAGS+=-DCURVE_OPT #曲線優化算法

##ECC

CFLAGS+=-DPROJECTIVE #射影平面坐標系

CFLAGS+=-DSLIDING_WIN #滑動窗口優化算法

##ECDSA

CFLAGS+=-DSHAMIR_TRICK #夏米爾技巧

3.2.2 7種優化算法的測試結果分析 由圖2-a中虛線可知,初始化時間值較大的有巴雷特減法算法、滑動窗口算法、夏米爾技巧優化算法,其他算法初始化時間幾乎為零。這是因為巴雷特減法算法、滑動窗口算法、夏米爾技巧優化算法需要進行預運算。而由實線發現,滑動窗口算法對初始化時間影響最大,幾乎降低了50%的時間。因此,滑動窗口算法對初始化時間影響最大。

由圖2-b、圖2-c可知,射影平面坐標系優化算法對減少簽名的產生和認證所需時間影響最大。由圖2-b、圖2-c中虛線可知,射影平面坐標系優化算法對產生簽名和簽名認證的效率提高3倍以上;結果表明,關閉射影平面坐標系優化算法會降低產生簽名和簽名認證的效率8倍以上。雖然射影平面坐標系優化算法很有效,但也是消耗ROM空間最多的算法。

夏米爾技巧優化算法也是提高簽名認證效率較好的算法。由圖2-c中虛線可知,夏米爾技巧優化算法對簽名認證效率提高了2倍,但所需的ROM、RAM空間分別增加了548、634 b;而實線可知,關閉夏米爾技巧優化算法后,簽名認證效率降低160%,但減少了2 204 b的ROM空間,而RAM值幾乎沒有減少,是因為當關閉夏米爾技巧優化時,滑動窗口算法被用于簽名認證。

由圖2-b、圖2-c和圖3中虛線可知,滑動窗口算法對產生簽名的效率和簽名認證的效率提高了1.2倍,但RAM值劇增了2.5倍;由圖2-b、圖2-c和圖3中實線可知,關閉滑動窗口算法對產生簽名的效率和簽名認證的效率降低了130%,但節省了632b的RAM空間。

由圖2-b、圖2-c虛線可知,混合乘法、混合平方法和曲線優化算法對提高產生簽名和簽名認證的效率不大。而從圖2-b、圖2-c實線發現,以上3種優化算法分別對產生簽名的效率提高了1. 8、1.6、2.1倍;對簽名認證的效率分別提高了1.8、1.5、2.0倍。這是因為在產生簽名和簽名認證的運算中最耗時的運算為求逆運算,只有在開啟射影平面坐標優化算法取締求逆運算的情況下,才會使產生簽名和簽名認證運算中最耗時的運算變為模乘運算,這樣才會使以上3種優化算法的優化效果明顯。

由上述分析可知, 從消耗RAM空間的角度看,滑動窗口算法>夏米爾技巧算法>巴雷特減法>混合乘法=混合平

方法=曲線優化算法=射影平面坐標法;從消耗ROM空間的角度看,射影平面坐標法>巴雷特減法≈ 混合平方法>混合乘法>曲線優化算法≈夏米爾技巧算法>滑動窗口算法;從簽名效率角度看,射影平面坐標法>曲線優化算法>混合乘法>混合平方法>滑動窗口算法>夏米爾技巧算法>巴雷特減法(圖3)。

4 適合大棚種植的ECDSA方案

由于IRIS節點中RAM資源稀少,根據上述分析,切實可行方案有如下2種:方案一為選用混合平方法、混合乘法、曲線優化算法和射影平面坐標法;方案二為選用混合平方法、混合乘法、曲線優化算法、射影平面坐標法和巴雷特減法。2個方案的測試結果見表2。其中,方案一中RAM值為817 b,時間復雜度為7.286 8 s;方案二RAM值為909 b,時間復雜度為7.2818 s。比較結果顯示,方案一較方案二RAM值小 92 b,而時間復雜度大0.005 s。綜合大棚種植的特點, 方案一

表2 各方案在IRIS節點上測試結果

類別

空間復雜度(byte) 時間復雜度(s)

ROM RAM 初始化時間 簽名時間 認證時間

方案1 21 594 817 0 2.424 9 4.861 9

方案2 23 022 909 0.006 5 2.418 4 4.856 9

是更為可取的方案選項。因此,適合大棚種植的ECDSA方案為混合平方法+混合乘法+曲線優化算法+射影平面坐標法。

5 結論

本研究主要創新點有2個方面:(1)將基于ECC加密算法的數字簽名算法(ECDSA)在IRIS節點上實現,并測試ECDSA消耗的ROM/RAM空間、初始化時間、產生簽名時間和簽名認證時間;(2)通過開/關的方式,測試7種ECDSA的優化算法的ROM/RAM空間、初始化時間、產生簽名時間和簽名認證時間,并從空間復雜度(ROM/RAM空間)和時間復雜度(初始化所耗時間、產生簽名所耗時間、簽名認證所耗時間)比較各優化算法。通過測試與比較分析,提出了適合應用于大棚種植監測的無線傳感器節點認證方案。

參考文獻:

[1]戴起偉,曹 靜,凡 燕,等. 面向現代設施農業應用的物聯網技術模式設計[J]. 江蘇農業學報,2012,28(5):1173-1180.

[2]戴起偉,凡 燕,曹 靜,等. 物聯網技術與江蘇智能農業產業發展[J]. 江蘇農業科學,2011,39(5):1-3.

[3]肖 婷,莊義慶,糜 林,等. 物聯網傳感技術在大棚草莓生產中的應用[J]. 江蘇農業學報,2014,30(5):1185-1187.

[4]張 興,何涇沙,韋 潛. 無線傳感器網絡中節點移動場景下的密鑰管理方法[J]. 東南大學學報:自然科學版,2011,41(2):227-232.

[5]張 興,何涇沙,韋 潛,等. 無線傳感器網絡中移動場景下的安全路由重構[J]. 北京工業大學學報,2012,38(9):1377-1383.

[6]蔡 冰,葉 玲. 基于ECC數字簽名的實現及優化[J]. 計算機工程,2009,35(19):161-163.

[7]Menezes A J,van Oorschot P C,Vanstone S A. Handbook of Applied cryptography[M]. boca raton:crc press,1996:603-604.

[8]Gura N,Patel A,Wander A. Comparing elliptic curve cryptography and RSA on 8-bit CPUs[C]//Proceedings of the 2004 Workshop in Cryptographic Hardware and Embedded Systems.2004:119-132.

[9]Hankerson D,Menezes A,Vanstone S. Guide to elliptic curve cryptography[M]. Berlin:Springer,2004:75-152.

猜你喜歡
優化
超限高層建筑結構設計與優化思考
PEMFC流道的多目標優化
一道優化題的幾何解法
由“形”啟“數”優化運算——以2021年解析幾何高考題為例
圍繞“地、業、人”優化產業扶貧
事業單位中固定資產會計處理的優化
4K HDR性能大幅度優化 JVC DLA-X8 18 BC
幾種常見的負載均衡算法的優化
LEACH算法的創新優化
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合