基于DSA的電力調度數字簽名方案
摘要:為了解決電力調度系統的安全性問(wèn)題,克服傳統公鑰密碼體制證書(shū)管理復雜的缺陷,在無(wú)雙線(xiàn)性對思想的基礎上,構造了一種基于DSA的無(wú)證書(shū)數字簽名方案。方案利用零知識方式對調度用戶(hù)身份進(jìn)行認證,將簽名身份與公鑰進(jìn)行哈希處理,防止身份替換攻擊。利用離散對數難題,由調度中心和調度用戶(hù)共同產(chǎn)生的私鑰對和公鑰對,減少了存儲空間,降低了計算開(kāi)銷(xiāo)。與同類(lèi)算法相比,簽名方案具有消息的完整性、抗否認性、抗偽造型、簽名的可驗證性等特點(diǎn)。應用測試表明算法能夠滿(mǎn)足電力調度的實(shí)時(shí)性要求。
本文引用地址:http://dyxdggzs.com/article/201610/306144.htm關(guān)鍵詞:電力調度;安全性;無(wú)線(xiàn)性對;無(wú)證書(shū)數字簽名
隨著(zhù)信息時(shí)代的到來(lái),數字化得到了的深入發(fā)展和不斷推廣。面對電力事業(yè)的突飛猛進(jìn),人們把改革和發(fā)展的目光投向了電力調度系統的開(kāi)發(fā)與研究,如文獻針對電力調度的數字化提出了各自的建設思想和實(shí)現方法。從現場(chǎng)應用和發(fā)表的文獻來(lái)看,這些電力調度系統都以網(wǎng)絡(luò )通信為數據傳輸的基礎,已經(jīng)涉及到數據傳輸的安全問(wèn)題。
由于電力行業(yè)的特殊性,任何數據傳輸的安全問(wèn)題,都將導致災難性的事故發(fā)生,其造成的政治和經(jīng)濟影響是巨大的,帶來(lái)的損失是不可估量的。文獻為了避免在電力調度中心、電廠(chǎng)及用戶(hù)之間傳輸的數據被篡改、偽造而產(chǎn)生電力系統事故,提出并設計了認證體系結構。文獻分析了電力二次系統所面臨的風(fēng)險,介紹了電力調度系統的證書(shū)服務(wù)系統及應用。這些方案雖然闡述了能夠提高系統安全性的證書(shū)服務(wù)技術(shù),但是為了存儲證書(shū)和驗證證書(shū)的有效性,需要大量的存儲空間和計算開(kāi)銷(xiāo)。因此,需要引入一種合適的電力調度系統簽名體制。
Al-Riyami等人提出了無(wú)證書(shū)密碼體制,既消除了傳統密碼體制對證書(shū)的需求,也解決了基于身份密碼體制中的密鑰托管問(wèn)題,是一種理想的簽名方案。在無(wú)證書(shū)密碼系統中用到一個(gè)第三方KGC,其作用是負責產(chǎn)生用戶(hù)的部分私鑰。在獲得KGC產(chǎn)生的部分私鑰后,用戶(hù)隨機選擇一個(gè)秘密值,然后用戶(hù)通過(guò)部分私鑰和秘密值來(lái)產(chǎn)生自己的公鑰和私鑰,系統將部分公鑰綁定同一個(gè)身份。一個(gè)無(wú)證書(shū)簽名方案由系統參數生成,部分密鑰生成,設置秘密值,設置私鑰,設置公鑰,簽名以及簽名驗證7個(gè)算法組成。通常,前兩個(gè)算法由KGC執行,而其它算法由簽名或驗證用戶(hù)執行。由于具有較強的實(shí)用性,無(wú)證書(shū)簽名方案的研究受到廣泛重視,出現了許多新的方案。但是,這些方案以雙線(xiàn)性配對作為設計工具,導致存在計算效率不高的問(wèn)題。目前無(wú)證書(shū)密碼體制方案已經(jīng)在電子商務(wù)、電子病歷等方面開(kāi)始應用,但在電力調度中的應用研究很少。
鑒于此,本文通過(guò)對DSA簽名算法進(jìn)行改進(jìn),構建了一種更有效的基于電力調度系統的無(wú)pairing的無(wú)證書(shū)簽名方案,方案具有抗否認性、抗偽造性、可驗證性等特點(diǎn),能夠很好地解決電力調度系統的安全性問(wèn)題。
1 電力調度系統的安全性分析
電力調度系統通常設計的用戶(hù)角色為系統管理員、錄入操作員、審核操作員、簽發(fā)操作員等。電力調度系統的控制要依靠生產(chǎn)指令數據及時(shí)、準確地進(jìn)行在這些角色間頻繁傳送。在電力調度過(guò)程中,一般需要解決:數據的不可否認性、數據的不可偽造性、數據簽名的可驗證性和數據的完整性等問(wèn)題。
為保證數據傳輸的安全性,在簽名過(guò)程中,應涉及有3種對象:
1)信任中心(KGC):建立公告板,公布共享信息,防止利用公共信息的篡改進(jìn)行簽名的偽造;負責產(chǎn)生用戶(hù)的部分私鑰;如果調度驗證者對簽名有疑義,可進(jìn)行判斷裁決。
2)調度信息簽名者:對傳輸信息進(jìn)行簽名。
3)調度信息驗證者:對傳輸信息進(jìn)行驗證。
2 基于電力調度系統的DSA無(wú)證書(shū)簽密方案
DSA是ElGamal、Schnorr等數字簽名算法的變體,其安全性基于離散對數問(wèn)題,是目前公認的安全算法。該算法中沒(méi)有昂貴的對操作,便于軟件和硬件實(shí)現,執行效率較高。本文在此算法的基礎上,通過(guò)分析改進(jìn),構建了一種基于電力調度系統的DSA無(wú)證書(shū)數字簽名算法。
系統參數生成:電力調度信任中心輸入安全參數k,輸出系統主密鑰master-key和系統公開(kāi)參數params。系統公開(kāi)參數params向電力調度系統中的全體用戶(hù)公開(kāi),而主密鑰master-key則由KGC秘密保存。公開(kāi)參數params=,其中:p是一個(gè)大的素數,2L-11;H1:{0,1}*×Zp*→Zq*,H2:{0,1}*→Zq*。任意選取x∈Zq*,計算y=gx mod p,主密鑰是master-Key=x。
部分密鑰生成:設電力調度信息簽名者A的身份為IDA,KGC隨機選擇s∈Zq*,計算w=gs mod p,d=x+sH1(IDA ‖w)。d為KGC產(chǎn)生的部分秘鑰。d可采用以下方式從KGC傳輸到A;A隨機選擇t∈Zq*,計算j=gt mod p,將j傳給KGC;KGC計算j’=jx mod p mod q,d’=d+s’,將d’傳給A;A計算j’=yt mod p mod q,d=d’-j’,從而既可以獲取KGC產(chǎn)生的部分秘鑰d,又可以驗證KGC的身份。
設置秘密值:用戶(hù)隨機選取z∈Zq*,計算u=gz mod p,z作為用戶(hù)A的另一部分私鑰,u作用戶(hù)A的另一部分公鑰。
設置私鑰:電力調度信息簽名者A的私鑰為SKA=(,z),私鑰由A自己保存。
設置公鑰:電力調度信息簽名者A的公鑰為PKA=(w,u),公鑰由KGC在公告板進(jìn)行告示,防止公鑰替換攻擊。
簽名:設電力調度信息M∈{0,1}*。電力調度信息簽名過(guò)程如下。
1)生成隨機數k,0
2)計算r=(gk mod p) mod g;
3)計算σ=(k-1(dr+zH2(M))) mod q,(r,σ)即為用戶(hù)A對消息M的簽名;
4)發(fā)送消息和簽名結果(M,r,σ)。
簽名驗證:驗證方收到簽名信息M∈{0,1}*以及簽名(r,σ),按以下過(guò)程進(jìn)行驗證。
3 方案安全性分析
1)可驗證性。以上基于DSA的無(wú)證書(shū)簽名方案中,若簽名過(guò)程準確無(wú)誤,則驗證等式r=v必然成立。
證明:
針對調度信息簽名者和調度信任中心身份,均可采用零知識方式進(jìn)行認證。若驗證者對用戶(hù)的公鑰不信任,可通過(guò)以下身份鑒別方案進(jìn)行驗證:驗證者隨機選擇t∈Zq*,將t傳給用戶(hù);用戶(hù)計算j=(td+z) mod q,將j傳給驗證者;驗證者計算,如果相等,則驗證通過(guò),否則用戶(hù)公鑰為偽造。
證明:
2)不可否認性。簽名者發(fā)送的私鑰中含有了簽名者的身份ID,具有不可否認性。
3)不可偽造性。在無(wú)證書(shū)系統中有兩類(lèi)攻擊者,第一類(lèi)攻擊者不知道系統主密鑰,但是可以任意替換用戶(hù)的公鑰。第二類(lèi)攻擊者知道系統的主密鑰,但是不能替換目標用戶(hù)的公鑰。如果簽名方案能抵抗以上兩種形式的攻擊者,則簽名方案為不可偽造性安全的。
對于第一類(lèi)攻擊者,因為不知道系統的主密鑰x,所以也不知道用戶(hù)的部分私鑰d。KGC產(chǎn)生的部分私鑰d內建立了與用戶(hù)身份關(guān)聯(lián)的信息,給攻擊者設置了第一道壁壘。若攻擊者試圖替換用戶(hù)公鑰,就必須修改KGC的公告板中的公鑰信息,由于公告板是公開(kāi)的,所以給攻擊者設置了第二道壁壘。若KGC或者其它電力調度用戶(hù)產(chǎn)生懷疑,就會(huì )采用零知識方式進(jìn)行認證。由于攻擊者不知道驗證者任意選取的t,故攻擊者不能構造j。即使攻擊者知道驗證者選取的t,要求解出j也相當于求解離散對數問(wèn)題,給攻擊者設置了第三道
壁壘。故在離散對數問(wèn)題難解的假設下,該方案可以抵抗第一類(lèi)攻擊的攻擊。
對于第二類(lèi)攻擊者,攻擊者知道系統的主密鑰x,則公鑰、部分私鑰d以及公開(kāi)參數對攻擊者來(lái)說(shuō)都是已知的。顯然,試圖通過(guò)公鑰和部分私鑰d直接求解出用戶(hù)一部分私鑰z的做法是不可取的,因為這相當于求解離散對數問(wèn)題。假設用戶(hù)偽造一個(gè)消息M的簽名,就必須繞過(guò)部分私鑰z,偽造r和σ,使之滿(mǎn)足,這相當于求解離散對數問(wèn)題。故在離對數問(wèn)題難解的假設下,該方案可以抵抗第二類(lèi)攻擊者的攻擊。
4)數據的完整性。在簽名時(shí)使用散列函數,能夠保證消息的完整性。
本文算法與其他算法在安全性上的比較見(jiàn)表1。(其中,“√”表示“具有”。)其中,文獻是基于RSA的證書(shū)簽名方案,文獻是基于雙線(xiàn)性對的無(wú)證書(shū)簽名方案。

4 執行效率分析
電力調度系統中數字簽名過(guò)程中,采用預先計算的方式,在消息M到來(lái)之前,先計算出r;當消息M到來(lái)時(shí),只需要一次逆運算、一次模運算、一次加法、兩次乘法運算、一次散列運算。電力調度系統中數字簽名驗證過(guò)程中,需要一次逆運算、兩次乘法運算、四次指數運算、兩次模運算、兩次散列運算。零知識驗證過(guò)程中,需要三次乘法運算、三次指數運算、一次模運算、兩次散列運算。
根據文獻所給出的分析結果,雙線(xiàn)性配對、指數運算與散列運算的計算量分別是乘運算的約21倍、3倍及1倍,相對于標量乘,加法運算、乘法運算、逆運算和模運算均可忽略不計。P表示一個(gè)雙線(xiàn)性配對運算,S表示標量乘法運算,E表示指數運算,H表示一個(gè)散列運算。通過(guò)本文算法與其它算法在運算次數的比較(見(jiàn)表 2)可以看出,本文算法的計
算量明顯小于其他算法,說(shuō)明本文算法具有較高的運行效率,便于應用到電力調度設備中。其中,文獻是基于電力調度的證書(shū)簽名方案,文獻是基于雙線(xiàn)性對的無(wú)證書(shū)簽名方案。

5 應用測試
本文算法在VC6.0環(huán)境下進(jìn)行實(shí)現,p、q的位數為160位。針對電力調度命令進(jìn)行簽名和驗證,以檢驗本軟件的實(shí)用性,整個(gè)實(shí)驗采用Intel酷睿i5-750,4 G內存的運行環(huán)境。密鑰和公鑰生成過(guò)程的平均時(shí)間為1.432 ms,電力調度簽名過(guò)程消耗的平均時(shí)間為4.31 ms,簽名驗證過(guò)程消耗的平均時(shí)間為6.57 ms,零知識驗證消耗的平均時(shí)間為4.797 ms。
實(shí)驗表明該系統具有良好的運行效率,能夠滿(mǎn)足電力調度的實(shí)時(shí)性要求。
6 結束語(yǔ)
本文設計了電力調度中的DSA無(wú)證書(shū)數字簽名方案。方案滿(mǎn)足抗否認性、抗偽造性、可驗證性和調度消息完整性等安全特性。本文算法與同類(lèi)簽名算法相比,具有較高的運行效率。應用測試表明能夠滿(mǎn)足電力調度的實(shí)時(shí)性要求。但是本文算法是以信任中心為研究前提,沒(méi)有考慮到惡意信任中心,如何設計基于電力調度系統的防止惡意信任中心的無(wú)證書(shū)簽名方案是下一步的研究方向。
評論