馬少華 張興 韓冬 史偉
摘要:為滿足應用于監(jiān)測大棚種植基本環(huán)境的無線傳感器節(jié)點認證的需求,在傳感器IRIS節(jié)點上實現(xiàn)了基于橢圓曲線加密體制的數(shù)字簽名算法(ECDSA),并在ECDSA程序中嵌入7種針對提高ECDSA性能的優(yōu)化算法,通過開/關的方式,比較各優(yōu)化算法的空間復雜度(消耗ROM/RAM空間)和時間復雜度(初始化所需時間、簽名產(chǎn)生所需時間、認證所需時間)。通過試驗測試和綜合比較分析,提出了適合應用于大棚種植監(jiān)測的無線傳感器節(jié)點認證方案。
關鍵詞:智能農(nóng)業(yè);無線傳感器節(jié)點;網(wǎng)絡安全認證;橢圓曲線數(shù)字簽名算法;優(yōu)化
中圖分類號: S126 文獻標志碼: A
文章編號:1002-1302(2015)04-0389-03
收稿日期:2015-01-07
基金項目:國家自然科學基金(編號:61272214);遼寧省博士科研啟動基金(編號:20121045);遼寧省高等學校杰出青年學者成長計劃(編號:LJQ2014066)。
作者簡介:馬少華(1988—),男,江蘇大豐人,碩士研究生,從事物聯(lián)網(wǎng)信息安全研究。E-mail:756918512@qq.com。
通信作者:張 興,副教授,研究生導師,從事網(wǎng)絡體系架構與協(xié)議、信息安全等研究。E-mail:zhang_xing@emails.bjut.edu.cn。
現(xiàn)代設施農(nóng)業(yè)是適應市場化、集約化、國際化大生產(chǎn)的新型現(xiàn)代農(nóng)業(yè)產(chǎn)業(yè)形態(tài),是傳統(tǒng)農(nóng)業(yè)向現(xiàn)代高效農(nóng)業(yè)轉變過程的必然選擇,設施農(nóng)業(yè)發(fā)展狀況在一定程度上反映了農(nóng)業(yè)現(xiàn)代化水平[1-2]。大棚種植是設施農(nóng)業(yè)中一個重要組成部分,具有利用適宜作物生長的環(huán)境溫濕度和光合作用來控制植物生長的優(yōu)點。由Eko節(jié)點構成的智能農(nóng)業(yè)傳感網(wǎng)能夠收集對農(nóng)作物影響非常大的土壤溫濕度、光照等信息,通過無線多跳的ZigBee+4G方式傳送到種植園主的手機上,方便其了解農(nóng)作物生長的環(huán)境狀況,以便采取有效措施促進生產(chǎn)。 目前,智能農(nóng)業(yè)傳感網(wǎng)已應用于國內(nèi)外的種植園和果蔬大棚中,對農(nóng)作物的生長管理、產(chǎn)品產(chǎn)量和質(zhì)量提高具有顯著效果,它的精度高、靈活性強、可靠性高、經(jīng)濟性好等優(yōu)點使其在設施農(nóng)業(yè)領域具有非常好的應用前景[3]。但是,如果智能農(nóng)業(yè)傳感網(wǎng)發(fā)給種植園主的是虛假信息或是被篡改的不真實信息,那么智能農(nóng)業(yè)傳感網(wǎng)非但不能對生產(chǎn)起促進作用,反而會耽誤灌溉、施肥等有效時機,或使農(nóng)作物的生長環(huán)境變得更糟。智能農(nóng)業(yè)傳感網(wǎng)的安全保障就變得至關重要。 通過分析可知,只要保證農(nóng)業(yè)傳感信息的來源可靠和在傳輸過程中不被篡改就足夠了,而無需對這些信息進行保密。當前的問題是對稱加密算法在信息加密方面非常有效,而在認證方面無法保證鄰居之間對密鑰的安全建立;非對稱加密算法的開銷非常大,不適合資源非常有限的無線傳感器網(wǎng)絡。ECC算法的實施有效解決了這一問題,但尚未見在Eko節(jié)點的IRIS平臺上實施[4-5]。
為滿足應用于大棚種植的無線傳感器網(wǎng)絡中節(jié)點認證的需求,本研究實現(xiàn)了在傳感器IRIS平臺上運行基于橢圓曲線加密體制的數(shù)字簽名算法(ECDSA);并加入7種優(yōu)化算法,通過對它們測試、比較和分析,提出了一個適于大棚種植的節(jié)點認證方案,從而使簽名和認證時間大大縮短,并確保該方案適用于資源有限的由Eko節(jié)點構成的智能農(nóng)業(yè)傳感網(wǎng)。
1 軟硬件平臺
1.1 硬件平臺
現(xiàn)在得到應用的Eko節(jié)點為Crossbow公司產(chǎn)品,目前,該公司的WSN方面的產(chǎn)品已被MEMSIC公司收購。Eko傳感器節(jié)點基于IRIS平臺,其ROM空間為128 k字節(jié),RAM空間為8 k字節(jié);通信模塊位于ISM免費頻段2.4 GHz,并支持IEEE 802.15.4協(xié)議,數(shù)據(jù)的傳輸率為250 kb/s,最大可視傳輸距離超過了1 000 m(最大可視傳輸距離指無障礙情況下的通信,2008年,在北京北海兩岸布置IRIS節(jié)點測試得到最大可視距離);處理器芯片采用是低功耗的ATmega1281,其性能有利于進行數(shù)字簽名中的大量復雜運算。
1.2 軟件平臺
Eko節(jié)點使用的是無線傳感器平臺所特有的開源操作系統(tǒng)TinyOS,由nesC編程語言編寫。TinyOS是一款基于事件驅動型的操作系統(tǒng),其特點是能很有效地調(diào)度各種組件,從而高效地完成各項系統(tǒng)功能。
2 ECDSA及其優(yōu)化算法
2.1 ECC簡介
橢圓加密算法(ECC)的數(shù)學基礎是利用橢圓曲線上的有理點構成Abel加法群上橢圓離散對數(shù)的計算困難性,是目前公鑰加密體制中對1 bit所提供加密強度最高的加密算法。ECC僅需使用160 bits的密鑰長度就可獲得等同于RSA加密算法采用密鑰長度為1 024 bits的安全強度[4-6]。本研究采用160 bit的橢圓加密算法算法。
2.2 數(shù)字簽名原理
所謂數(shù)字簽名,就是只有消息的發(fā)送方才能產(chǎn)生的別人無法偽造的一段數(shù)字串,這段數(shù)字串同時也是對信息的發(fā)送方發(fā)送信息真實性的一個有效證明。數(shù)字簽名一般通信過程如圖1所示。 (1)節(jié)點A通過自己的私鑰和數(shù)字簽名生成算法對消息M進行簽名,得到簽名S,并附在消息M上。(2)節(jié)點B收到來自節(jié)點A的消息后,通過節(jié)點A的公鑰和數(shù)字簽名認證算法對收到的消息進行認證,根據(jù)返回的簽名有效值來判斷消息的真?zhèn)巍?/p>
2.3 ECDSA數(shù)字簽名方案
ECDSA數(shù)字簽名方案是ECC和DSA的結合。整個簽名過程與DSA類似,所不同的是簽名、認證中采用的算法是ECC,最后的簽名S為(r,s)(圖1)。ECDSA數(shù)字簽名生成算法和簽名認證算法如下。(1)數(shù)字簽名生成算法:記P=(x,y)。節(jié)點A選取一隨機整數(shù)k滿足1≤k
2.4 ECDSA的7種優(yōu)化算法
ECDSA可劃分為ECC算法模塊和數(shù)字簽名模塊。其中ECC模塊由大整數(shù)運算和橢圓曲線類組成,數(shù)字簽名模塊由數(shù)字簽名的產(chǎn)生和認證組成。本研究選取4種優(yōu)化大整數(shù)運算的算法(巴雷特減法算法[7]、混合乘法算法[8]、混合平方算法[9]、曲線優(yōu)化算法[8])、2種優(yōu)化橢圓曲線的算法(射影平面坐標系[8]、滑動窗口[8])和1種優(yōu)化簽名認證的算法(夏米爾技巧優(yōu)化算法[9])。由于本研究側重于對各優(yōu)化算法在 IRIS 節(jié)點上的性能分析,各優(yōu)化算法具體知識可詳見參考文獻[8-9]。
3 ECDSA及7種優(yōu)化算法的實現(xiàn)
3.1 ECDSA的實現(xiàn)
本研究設定消息長度為52 b,為提高測試結果的準確性,每個程序測試10次,試驗結果取10次測試結果的算術平均值。測試結果見表1,ECDSA所占用的ROM和RAM在IRIS節(jié)點的承受范圍之內(nèi),初始化所需的時間也較短,但簽名生成所需時間和簽名認證所需時間較長,特別是簽名認證所需時間超過了1 min。
表1 ECDSA在IRIS節(jié)點上的測試結果
節(jié)點類型
所需空間(byte) 所需時間(s)
ROM RAM 初始化 簽名生成 簽名認證
IRIS 16 860 817 0.000 1 31.954 4 64.225 5
3.2 優(yōu)化算法的測試
本研究對上述7種優(yōu)化算法通過開關的方式來測試其在IRIS節(jié)點上所耗的ROM/RAM空間、初始化所需時間、簽名產(chǎn)生時間和認證所需時間。
3.2.1 主要程序代碼
##NN
CFLAGS+=-DBARRETT_REDUCTION #巴雷特減法
CFLAGS+=-DHYBRID_MULT #混合乘法
CFLAGS+=-DHYBRID_SQR #混合平方法
CFLAGS+=-DCURVE_OPT #曲線優(yōu)化算法
##ECC
CFLAGS+=-DPROJECTIVE #射影平面坐標系
CFLAGS+=-DSLIDING_WIN #滑動窗口優(yōu)化算法
##ECDSA
CFLAGS+=-DSHAMIR_TRICK #夏米爾技巧
3.2.2 7種優(yōu)化算法的測試結果分析 由圖2-a中虛線可知,初始化時間值較大的有巴雷特減法算法、滑動窗口算法、夏米爾技巧優(yōu)化算法,其他算法初始化時間幾乎為零。這是因為巴雷特減法算法、滑動窗口算法、夏米爾技巧優(yōu)化算法需要進行預運算。而由實線發(fā)現(xiàn),滑動窗口算法對初始化時間影響最大,幾乎降低了50%的時間。因此,滑動窗口算法對初始化時間影響最大。
由圖2-b、圖2-c可知,射影平面坐標系優(yōu)化算法對減少簽名的產(chǎn)生和認證所需時間影響最大。由圖2-b、圖2-c中虛線可知,射影平面坐標系優(yōu)化算法對產(chǎn)生簽名和簽名認證的效率提高3倍以上;結果表明,關閉射影平面坐標系優(yōu)化算法會降低產(chǎn)生簽名和簽名認證的效率8倍以上。雖然射影平面坐標系優(yōu)化算法很有效,但也是消耗ROM空間最多的算法。
夏米爾技巧優(yōu)化算法也是提高簽名認證效率較好的算法。由圖2-c中虛線可知,夏米爾技巧優(yōu)化算法對簽名認證效率提高了2倍,但所需的ROM、RAM空間分別增加了548、634 b;而實線可知,關閉夏米爾技巧優(yōu)化算法后,簽名認證效率降低160%,但減少了2 204 b的ROM空間,而RAM值幾乎沒有減少,是因為當關閉夏米爾技巧優(yōu)化時,滑動窗口算法被用于簽名認證。
由圖2-b、圖2-c和圖3中虛線可知,滑動窗口算法對產(chǎn)生簽名的效率和簽名認證的效率提高了1.2倍,但RAM值劇增了2.5倍;由圖2-b、圖2-c和圖3中實線可知,關閉滑動窗口算法對產(chǎn)生簽名的效率和簽名認證的效率降低了130%,但節(jié)省了632b的RAM空間。
由圖2-b、圖2-c虛線可知,混合乘法、混合平方法和曲線優(yōu)化算法對提高產(chǎn)生簽名和簽名認證的效率不大。而從圖2-b、圖2-c實線發(fā)現(xiàn),以上3種優(yōu)化算法分別對產(chǎn)生簽名的效率提高了1. 8、1.6、2.1倍;對簽名認證的效率分別提高了1.8、1.5、2.0倍。這是因為在產(chǎn)生簽名和簽名認證的運算中最耗時的運算為求逆運算,只有在開啟射影平面坐標優(yōu)化算法取締求逆運算的情況下,才會使產(chǎn)生簽名和簽名認證運算中最耗時的運算變?yōu)槟3诉\算,這樣才會使以上3種優(yōu)化算法的優(yōu)化效果明顯。
由上述分析可知, 從消耗RAM空間的角度看,滑動窗口算法>夏米爾技巧算法>巴雷特減法>混合乘法=混合平
方法=曲線優(yōu)化算法=射影平面坐標法;從消耗ROM空間的角度看,射影平面坐標法>巴雷特減法≈ 混合平方法>混合乘法>曲線優(yōu)化算法≈夏米爾技巧算法>滑動窗口算法;從簽名效率角度看,射影平面坐標法>曲線優(yōu)化算法>混合乘法>混合平方法>滑動窗口算法>夏米爾技巧算法>巴雷特減法(圖3)。
4 適合大棚種植的ECDSA方案
由于IRIS節(jié)點中RAM資源稀少,根據(jù)上述分析,切實可行方案有如下2種:方案一為選用混合平方法、混合乘法、曲線優(yōu)化算法和射影平面坐標法;方案二為選用混合平方法、混合乘法、曲線優(yōu)化算法、射影平面坐標法和巴雷特減法。2個方案的測試結果見表2。其中,方案一中RAM值為817 b,時間復雜度為7.286 8 s;方案二RAM值為909 b,時間復雜度為7.2818 s。比較結果顯示,方案一較方案二RAM值小 92 b,而時間復雜度大0.005 s。綜合大棚種植的特點, 方案一
表2 各方案在IRIS節(jié)點上測試結果
類別
空間復雜度(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方案為混合平方法+混合乘法+曲線優(yōu)化算法+射影平面坐標法。
5 結論
本研究主要創(chuàng)新點有2個方面:(1)將基于ECC加密算法的數(shù)字簽名算法(ECDSA)在IRIS節(jié)點上實現(xiàn),并測試ECDSA消耗的ROM/RAM空間、初始化時間、產(chǎn)生簽名時間和簽名認證時間;(2)通過開/關的方式,測試7種ECDSA的優(yōu)化算法的ROM/RAM空間、初始化時間、產(chǎn)生簽名時間和簽名認證時間,并從空間復雜度(ROM/RAM空間)和時間復雜度(初始化所耗時間、產(chǎn)生簽名所耗時間、簽名認證所耗時間)比較各優(yōu)化算法。通過測試與比較分析,提出了適合應用于大棚種植監(jiān)測的無線傳感器節(jié)點認證方案。
參考文獻:
[1]戴起偉,曹 靜,凡 燕,等. 面向現(xiàn)代設施農(nóng)業(yè)應用的物聯(lián)網(wǎng)技術模式設計[J]. 江蘇農(nóng)業(yè)學報,2012,28(5):1173-1180.
[2]戴起偉,凡 燕,曹 靜,等. 物聯(lián)網(wǎng)技術與江蘇智能農(nóng)業(yè)產(chǎn)業(yè)發(fā)展[J]. 江蘇農(nóng)業(yè)科學,2011,39(5):1-3.
[3]肖 婷,莊義慶,糜 林,等. 物聯(lián)網(wǎng)傳感技術在大棚草莓生產(chǎn)中的應用[J]. 江蘇農(nóng)業(yè)學報,2014,30(5):1185-1187.
[4]張 興,何涇沙,韋 潛. 無線傳感器網(wǎng)絡中節(jié)點移動場景下的密鑰管理方法[J]. 東南大學學報:自然科學版,2011,41(2):227-232.
[5]張 興,何涇沙,韋 潛,等. 無線傳感器網(wǎng)絡中移動場景下的安全路由重構[J]. 北京工業(yè)大學學報,2012,38(9):1377-1383.
[6]蔡 冰,葉 玲. 基于ECC數(shù)字簽名的實現(xiàn)及優(yōu)化[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.