李 斌,吳 坡,王 丹,安浩楊,何德彪
(1.國網(wǎng)河南省電力公司,鄭州 450000;2.武漢大學(xué) 國家網(wǎng)絡(luò)安全學(xué)院,武漢 430072)
電力監(jiān)控系統(tǒng)[1-2]是電力能源互聯(lián)網(wǎng)的關(guān)鍵基礎(chǔ)設(shè)施之一,負(fù)責(zé)監(jiān)測和控制電力系統(tǒng)的運行。該系統(tǒng)通常包括多個電力終端設(shè)備,如智能電表、綜合保護(hù)裝置、變壓器溫控儀表、水浸傳感器等,它們負(fù)責(zé)收集和處理大量數(shù)據(jù),如電流、電壓、功率、溫度等,幫助管理員實時掌握配電系統(tǒng)的運行狀態(tài),實時獲取預(yù)警、報警等各類信息,實現(xiàn)變電所、配電房等重點區(qū)域的無人值守,從而提高安全監(jiān)管水平。因此,電力監(jiān)控系統(tǒng)對于確保電力系統(tǒng)的穩(wěn)定運行至關(guān)重要。
電力終端設(shè)備[3]通常需要長時間運行,經(jīng)常安裝在一些惡劣的環(huán)境中,具有分布式的特點,通常很難更換電池。因此,為了延長電池壽命,這些設(shè)備需要具備低功耗的特性。在實際應(yīng)用中,電力終端設(shè)備需要進(jìn)行通信和數(shù)據(jù)傳輸,加密算法可以提供機密性,數(shù)字簽名可以提供完整性。然而,傳統(tǒng)的基于公鑰基礎(chǔ)設(shè)施體系的方案需要使用證書來驗證設(shè)備的公鑰,需要加密和簽名2 個步驟來實現(xiàn)數(shù)據(jù)共享的機密性和認(rèn)證性,代價較大。
在電力監(jiān)控系統(tǒng)中,電力終端設(shè)備作為簽密者,在消息出現(xiàn)后響應(yīng)時間非常有限,但它可以在連續(xù)的簽密請求之間執(zhí)行代價高昂的計算。在線階段通常非常快,因此,即使在弱處理器上也可以執(zhí)行,而每當(dāng)設(shè)備連接到電源或算力資源充足時將進(jìn)行離線階段的計算。在線/離線簽密方案在基于存儲或功率受限的設(shè)備中應(yīng)用廣泛,但是現(xiàn)有的在線/離線簽密方案大多采用耗時的雙線性對運算,導(dǎo)致計算效率低下。
為了滿足電網(wǎng)設(shè)備在資源受限情況下對低功耗的要求,本文提出一種適用于電力終端設(shè)備的無證書在線/離線簽密方案。該方案基于無證書公鑰密碼體制,避免了證書管理和密鑰托管問題。允許在離線階段進(jìn)行代價高昂的計算,且基于橢圓曲線密碼算法,避免了使用計算代價高昂的雙線性對運算和哈希到點運算,對低功耗設(shè)備更友好,適用于計算能力有限的環(huán)境。簽密可以在單個步驟中實現(xiàn)加密和簽名性質(zhì),比先簽名后加密或先加密后簽名的方法能更有效地獲得機密性和認(rèn)證性,從而更好地滿足電力終端設(shè)備的要求,提高系統(tǒng)的魯棒性。
為了防止個人敏感信息的泄露,文獻(xiàn)[4]提出一種將數(shù)字簽名和加密相結(jié)合以在一個步驟中實現(xiàn)機密性和不可偽造性的密碼原語——簽密,其比傳統(tǒng)的分別使用簽名和加密的方法更有效。簽密的主要優(yōu)勢在于它可以減少計算和通信開銷,同時提高安全性。簽密的概念一經(jīng)提出,便在密碼學(xué)領(lǐng)域得到廣泛的關(guān)注[5-7]。文獻(xiàn)[8]提出基于KCDSA 數(shù)字簽名算法的簽密方案。文獻(xiàn)[9]定義簽密的形式化安全模型,并分析不同困難問題假設(shè)中簽密方案的安全性。文獻(xiàn)[10]研究關(guān)于簽密方案的通用順序組合方法,并提出一種新的組合方法CtE&S(Committhen-Encrypt-and-Sign),該方法與hash-sign-switch 技術(shù)[11]相結(jié)合可以實現(xiàn)高效的在線/離線簽密。文獻(xiàn)[12]提出一種高效的簽密方案,且該方案可以轉(zhuǎn)換為在線/離線版本。
然而,上述方案基于傳統(tǒng)的公鑰密碼基礎(chǔ)設(shè)施(Public Key Cryptography Infrastructure,PKI)體系,需要證書頒發(fā)權(quán)威結(jié)構(gòu)為用戶維護(hù)證書,這造成了巨大的計算、通信和存儲負(fù)擔(dān)。文獻(xiàn)[13]通過私鑰生成中心(Private Key Generator,PKG)從用戶身份創(chuàng)建公鑰,提出基于身份的公鑰密碼體制(ID-PKC)。文獻(xiàn)[14]提出一種通用的基于身份的在線/離線簽密機制,在離線階段完成大部分計算,且在線部分無需進(jìn)行冪指數(shù)運算,效率較高,且其具有密文不可區(qū)分性和存在性不可偽造等性質(zhì)。文獻(xiàn)[15]提出基于身份的在線/離線簽密方案,該方案在離線和在線階段均實現(xiàn)了較小的通信開銷。ID-PKC 雖然消除了證書,但是由于PKG 掌握了用戶的完整私鑰,因此存在密鑰托管問題。
有研究人員提出無證書公鑰密碼體制(CLPKC)[16],其中私鑰由2 個部分組成,即由密鑰生成中心(Key Generation Center,KGC)提取的部分和另一個由其所有者生成的部分。最終的用戶私鑰對KGC 來說是未知的,而對應(yīng)的公鑰是公開的。文獻(xiàn)[17]提出無證書簽密的概念,并設(shè)計一個高效的框架來實現(xiàn)前向保密性和不可否認(rèn)性,從而提高了安全性和性能。文獻(xiàn)[18]提出一種更高效的無證書簽密方案,計算迪菲-赫爾曼CDH 假設(shè)和離散對數(shù)DL 假設(shè),并引入公共可驗證性的特性。文獻(xiàn)[19]通過進(jìn)一步優(yōu)化實現(xiàn)了更少的雙線性對運算。文獻(xiàn)[20]提出一種新的無證書在線/離線簽密方案,該方案可以在不影響安全性的情況下進(jìn)一步提高簽密系統(tǒng)的效率。文獻(xiàn)[21]提出一種無證書在線/離線簽密方案,該方案在在線階段不需要任何點乘運算,非常適合資源受限的設(shè)備。文獻(xiàn)[22]提出一種改進(jìn)的無證書在線/離線簽密方案CLOOSC,該方案在云輔助邊緣計算的模型下,確保其他不受信任的實體不會泄露用戶隱私,能夠顯著降低計算開銷,在不考慮離線計算時,資源受限的物聯(lián)網(wǎng)設(shè)備只需要一個點乘,驗證階段僅需要一個雙線性對運算,并在隨機諭言機模型下證明了該方案滿足選擇明文攻擊下的不可區(qū)分性(IND-CCA)。
然而,上述方案均包含了雙線性對運算,導(dǎo)致計算效率低下。文獻(xiàn)[23]提出一種新的基于橢圓曲線密碼體制的無證書聚合簽密方案,應(yīng)用于車聯(lián)網(wǎng)中以確保通信的安全性和隱私保護(hù),該方案提供了前向保密性和條件隱私保護(hù)。文獻(xiàn)[24]提出一種基于邊緣計算的無證書在線/離線聚合簽密方案,以解決車輛自組網(wǎng)絡(luò)在數(shù)據(jù)傳輸過程中可能出現(xiàn)的網(wǎng)絡(luò)擁堵、反饋延遲和隱私泄露問題。該方案在在線加密階段沒有任何雙線性對運算,大幅降低了在線階段的計算成本,并在隨機諭言機模型下證明滿足INDCCA 安全。針對電網(wǎng)低功耗終端設(shè)備存在的通信和數(shù)據(jù)傳輸問題,本文提出一種適用于電力終端設(shè)備的無證書在線/離線簽密方案。
本文使用λ表示安全參數(shù),PPT 表示概率多項式時間,p和q為大素數(shù)為1,2,…,p-1 組成的整數(shù)集合,GF(q)為階為p的有限域。a?P表示橢圓曲線上點P的a倍點,KGC 表示密鑰生成中心,ID 表示設(shè)備的身份信息。對稱加密方案為(Enck,Deck),Enck和Deck分別表示使用對稱密鑰k的加密和解密算法。x||y表示字符串x和y拼接,H1、H2表示哈希函數(shù),f表示變色龍哈希(Chameleon Hash)函數(shù)。params 表示公共系統(tǒng)參數(shù),pski=(,Yi)表示設(shè)備的部分私鑰,設(shè)備完整私鑰為,公鑰為PKi=(Xi,Yi,Ti)。離線簽密階段生成的臨時結(jié)果為σoff=(m',r',σ,h3,R),簽密的最終密文為(c,R)。
假設(shè)GF(q)是一個有限域,其中p和q為大素數(shù)。在GF(q)上的橢圓曲線Ep(a,b)被定義為滿足方程y2=x3+ax+bmodp的所有點(x,y)?GF(q)×GF(q)的集合,其中,a、b?GF(q),且4a3+27b2≠0 modp。點集和一個無窮遠(yuǎn)點構(gòu)成了一個循環(huán)加法群G,其階數(shù)為素數(shù)p,其生成元為P。
定義1[橢圓曲線離散對數(shù)問題(Elliptic Curve Discrete Logarithmic Problem,ECDLP)] 給定2 個隨機點P1、P2?G,其中,P2=a?P1,a?,計算a是困難的。
變色龍哈希[25]可以通過使用陷門密鑰生成哈希值,從而修改已簽名的消息。在不知道陷門的情況下,變色龍哈希函數(shù)是抗碰撞的,否則可在哈希值不變的情況下改變輸入值。一個變色龍哈希函數(shù)由(Setup,Hash)組成,具體如下:
1)密鑰生成算法Setup:輸入安全參數(shù)λ,輸出哈希密鑰hk 和陷門密鑰tk。
2)哈希函數(shù)Hash:哈希函數(shù)H與一個哈希密鑰hk 相關(guān)聯(lián),并對來自消息空間M的消息和有限域空間中的隨機數(shù)進(jìn)行哈希。
變色龍哈希函數(shù)具有以下特性:
1)高效性:給定哈希密鑰hk和一對(m,r)?M×,可以在多項式時間內(nèi)計算Hhk(m,r)。
2)抗碰撞性:不存在PPT 算法A,輸入哈希密鑰hk,以非常小的概率輸出兩對(m1,r1)、(m2,r2)?M×,滿足Hhk(m1,r1)=Hhk(m2,r2)且m1≠m2。
本文設(shè)計一種基于ECDLP 的變色龍哈希函數(shù)構(gòu)造方法,具體如下:
1)密鑰生成算法Setup:選擇第2.2 節(jié)定義的橢圓曲線參數(shù),選擇一個隨機數(shù)y?,并計算Y=y?P。公開哈希密鑰為hk=(P,Y),私有陷門密鑰為tk=y。
本文系統(tǒng)的參與者由密鑰生成中心、電力終端設(shè)備IDS、電力監(jiān)控中心IDR組成,如圖1 所示。
密鑰生成中心是一個生成和管理設(shè)備密鑰的可信第三方機構(gòu),用于確保只有經(jīng)過授權(quán)的用戶才能夠使用本系統(tǒng)。
電力終端設(shè)備是指用于電力系統(tǒng)監(jiān)測、控制和通信的設(shè)備,它們可以監(jiān)測電網(wǎng)狀態(tài)、記錄數(shù)據(jù)、進(jìn)行自動控制、執(zhí)行保護(hù)功能等。這些設(shè)備包括傳感器、繼電器、開關(guān)、變壓器等,通常具有分布式、低功耗的特點。電力終端設(shè)備是電力系統(tǒng)中重要的組成部分,它們的運行穩(wěn)定性和精確性直接影響電力系統(tǒng)的安全性和穩(wěn)定性。電力終端設(shè)備在本文方案中充當(dāng)簽密發(fā)送者。
電力監(jiān)控中心是用于監(jiān)控電力系統(tǒng)運行情況的中心化系統(tǒng),它可以收集和處理來自電力終端設(shè)備的實時數(shù)據(jù),分析和預(yù)測電力系統(tǒng)的負(fù)荷和故障情況,并進(jìn)行控制和調(diào)度。電力監(jiān)控中心通常采用計算機和通信技術(shù)來實現(xiàn)對電力系統(tǒng)的實時監(jiān)控和控制。電力監(jiān)控中心在本文方案中充當(dāng)簽密接收者。
本文系統(tǒng)目標(biāo)如下:
1)機密性:保護(hù)信息傳輸?shù)臋C密性,確保信息只能被授權(quán)設(shè)備訪問和使用,防止第三方獲得明文信息。
2)認(rèn)證性和完整性:確保參與系統(tǒng)的設(shè)備是經(jīng)過注冊且合法的,確保信息在傳輸或處理過程中不被篡改。
3)低計算成本:盡量避免占用大量計算資源的復(fù)雜的算法,從而降低硬件成本和能耗。系統(tǒng)需要運行在較低成本的設(shè)備上,從而提高系統(tǒng)的響應(yīng)速度,減少延遲和等待時間。
4)低功耗性:盡量避免使用大量電能,從而降低使用成本。系統(tǒng)需要運行在長時間使用的設(shè)備上,空閑時進(jìn)入睡眠模式,使用低功耗處理器,盡量降低待機功耗等。
本文提出一種適用于電力終端設(shè)備的輕量級無證書在線/離線簽密方案,該方案分為3 個階段,即電力終端設(shè)備的密鑰設(shè)置階段、電力終端設(shè)備的在線/離線簽密階段和電力監(jiān)控中心的解簽密階段,如圖2、圖3 所示。
圖2 電力終端設(shè)備的密鑰設(shè)置階段Fig.2 Key setting stage of power terminal equipment
圖3 在線/離線簽密和解簽密階段Fig.3 Online/offline signcryption and unsigncryption stages
該方案包含以下6 個PPT 算法:
1)系統(tǒng)初 始化算 法(params,s)←Setup(λ) :由KGC 運行,給定安全參數(shù)λ。
(1)選擇第2.2 節(jié)定義的橢圓曲線參數(shù)。
(2)KGC 產(chǎn)生隨機數(shù)s?作為主私鑰,并計算主公鑰Ppub=s?P。
(3)選 擇2 個哈希函數(shù)H1:{0,1}n×G→、H2:G→
(4)設(shè)置變色龍哈希函數(shù)f:,其中,M為消息空間。
(5)返回系統(tǒng)參數(shù)params={Ppub,H1,H2,f},作為默認(rèn)輸入。
2)設(shè)備部 分私鑰 提取算 法 pski←Partial PrivateKeyExtraction(IDi):由KGC 運行,電力終端設(shè)備或電力監(jiān)控中心提交IDi給KGC 請求部分私鑰。
(1)選擇隨機數(shù)yi?,計算Yi=yi?P。
(2)計算hi=H1(IDi||Yi)。
(4)返回設(shè)備IDi的部分私鑰pski=,Yi)。
3)設(shè)備密鑰設(shè)置算法(ski,PKi)← UserKeySet(pski):由電力終端設(shè)備或電力監(jiān)控中心IDi運行,給定部分私鑰pski,設(shè)置設(shè)備的公私鑰對。
(1)選擇隨機數(shù)xi?作為秘密值并計算Xi=xi?P。
(2)選擇隨機數(shù)ti?作為陷門密鑰并計算陷門公鑰Ti=ti?P。
4)簽密算法離線階段σoff←OffSignCrypt (IDR,PKR,IDS,skS,PKS):由簽密發(fā)送方電力終端設(shè)備IDS運行,給定電力監(jiān)控中心的身份IDR和公鑰PKR以及電力終端設(shè)備IDS的公私鑰對(PKS,skS)。
(1)隨機選擇m'?M,r'?
(2)計算R=r'?P。
(3)計算變色龍哈希值h1=f(m',r')=m'?P+r'?Y。
(4)計算h2=H2(h1)。
(5)計算σ=r'+h2?(xS+dIDS)。
(6)計算hR=H1(IDR||YR)。
(7)計算K=r'?(XR+YR+hR?Ppub)。
(8)計算h3=H2(K)。
(9)返回σoff=(m',r',σ,h3,R)存儲在設(shè)備安全區(qū),等待在線階段調(diào)用。
5)簽密算法在線階段(c,R)←OnSignCrypt (σoff,m,IDS,PKS,skS):由簽密發(fā)送方電力終端設(shè)備IDS運行,給定待簽密的消息m和離線階段生成的σoff以及電力終端設(shè)備IDS的公私鑰對(skS,PKS)。
(1)計算r=t-1(m'-m)+r'modq。
(2)計算c=(σ||IDS||PKS||m||r)。
(3)發(fā)送簽密結(jié)果(c,R)給電力監(jiān)控中心IDR。
6)解簽密算法(m/⊥)←UnSignCrypt(c,R,IDR,PKR,skR,PKS,IDS):由電力監(jiān)控中心IDR運行,給定電力監(jiān)控中心身份IDR和公私鑰對PKR、skR以及簽密結(jié)果(c,R)、發(fā)送方身份IDS和公鑰PKS。
(1)計算hR=H1(IDR||YR)。
(2)計算K=?R+xR?R。
(3)計算h3=H2(K)。
(4)計算σ||IDS||PKS||m||r=(c)。
(5)計算h′1=f(m,r)=m?P+r?T。
(6)計算h′2=H2(h1)。
(7)驗 證σ?P=R+h′2?(XS+YS+H1(IDS||YS)?Ppub),若等式成立,則驗證通過,返回消息明文m;否則,返回終止符號⊥。
本文方案正確性分析具體如下:
本文方案系統(tǒng)分析具體如下:
1)機密性:如果ECDLP 假設(shè)成立,且對稱加密方案滿足IND-CCA 安全,則該簽密方案滿足機密性。
2)認(rèn)證性和完整性:如果ECDLP 假設(shè)成立,且哈希函數(shù)滿足計算單向性和抗碰撞性,則該簽密方案滿足認(rèn)證性和完整性。
3)低計算成本:該簽密方案采用橢圓曲線密碼機制,避免了重量級的雙線性對運算和哈希到點操作。
4)低功耗性:該簽密方案在離線階段進(jìn)行簽密預(yù)計算,在空閑時設(shè)備休息,以減少功耗,在數(shù)據(jù)到來時,進(jìn)入在線階段快速完成簽密,避免了使用證書帶來的額外開銷。
本文從計算開銷和通信開銷2 個方面分析所提無證書在線/離線簽密方案的性能,并與最新的無證書在線/離線簽密方案[22]進(jìn)行對比。對于基于雙線性對的CLOOSC 方案,本文采用素數(shù)域GF(q)上的超奇異橢圓曲線參數(shù)k2ss.ecs 構(gòu)造Tate 雙線性對G1×G1→G2,其中,G1和G2分別是階為素數(shù)p的加法群和乘法群,q和p的大小分別為512 bit和160 bit。為了實現(xiàn)相同的280安全級別,對于基于橢圓曲線密碼學(xué)的方案,本文選取素數(shù)域GF()上的常規(guī)橢圓曲線參數(shù)secp160.ecs,構(gòu)建一個階為的加法循環(huán)群G,其和的大小均是160 bit。
|G|、|G1|、|G2|、|、|M| 分別表 示G、G1、G2、中元素的比特位長,n是身份標(biāo)識ID 的長度。本文使用SHA-256實例化哈希函數(shù),使用AES 算法實例化對稱加密算法,具體參數(shù)大小為|G|=320 bit,|G1|=1 024 bit,|G2|=1 024 bit,||=160 bit,|CTAES|=128 bit,n=128 bit,|M|=128 bit。本文省 略了通 用哈希運算和中的加法運算耗時,因為這些運算耗時非常短,幾乎可以忽略。首先在電腦端評估方案運算所需的耗時,其中,電腦端平臺參數(shù)為DELL 電腦,Windows 11 操作系統(tǒng),i7-10700 2.90 GHz 處理器和16 GB 內(nèi)存。利用Miracl 庫測試1 000 次取平均值得到運算時間,為方便起見,在對本文方案性能進(jìn)行理論分析之前,給出符號定義和運行時間,如表1所示。在表2 中分析2 個方案的計算開銷,在表3 中分析通信開銷。
表1 符號定義和運行時間Table 1 Symbols definition and run time 單位:ms
表2 計算開銷對比Table 2 Comparison of computational costs 單位:ms
表3 通信開銷對比Table 3 Comparison of communication costs 單位:bit
由上述結(jié)果可以得出:
1)計算開銷方面:在系統(tǒng)初始化和設(shè)備密鑰設(shè)置階段,文獻(xiàn)[22]方案計算耗時為140.014+31.948+63.876=235.838 ms,而本文方案僅需要1.082+1.085+2.164=4.331 ms,計算耗時僅為文獻(xiàn)[22]方案的1.84%;在簽密階段,文獻(xiàn)[22]方案總的簽密耗時為209.471+63.882=273.353 ms,而本文方案僅需要5.428+16.023=21.451 ms,計算耗時僅為文獻(xiàn)[22]方案的7.85%;在解簽密階段,本文方案計算耗時僅為文獻(xiàn)[22]方案的3.20%。
2)通信開銷方面:文獻(xiàn)[22]方案的公私鑰長度為2 208+2 048=4 256 bit,而本文方案為480+960=1 440 bit,約為文獻(xiàn)[22]方案的1/3;本文方案離線階段的密文長度約為文獻(xiàn)[22]方案的1/5;在線階段密文長度約為文獻(xiàn)[22]方案的1/10。
綜上,本文方案在計算開銷和通信開銷方面存在明顯優(yōu)勢,更適用于低功耗電力終端設(shè)備。
本文提出一種適用于電力終端設(shè)備的無證書在線/離線簽密方案?;跈E圓曲線密碼機制,允許設(shè)備在離線階段進(jìn)行代價高昂的計算,在在線階段生成對消息的簽密。實驗結(jié)果表明,與文獻(xiàn)[22]方案相比,該方案具有更少的通信開銷和計算開銷,更適用于低功耗電力終端設(shè)備,有利于提升電力監(jiān)控系統(tǒng)的效率和安全性。本文方案結(jié)合了對稱加密算法并使用AES 算法進(jìn)行實例化,下一步將對所提算法進(jìn)行改進(jìn),針對低功耗傳感器,設(shè)計適用于RFID 電子標(biāo)簽系統(tǒng)的高效密碼算法。