本發(fā)明涉及信息安全,特別涉及一種基于crf的零知識證明混沌認證與密鑰協(xié)商方法。
背景技術:
1、在大數據與物聯網融合的時代,物聯網作為互聯網的擴展和延伸,實現了物體間的通信與互動。物聯網以物體作為數據源,覆蓋的感知設備和信息技術不斷發(fā)展,為整個信息網絡貢獻了大量的數據。這些數據交互不僅限于互聯網上的傳統(tǒng)數據交換,而是涵蓋了從物體到物體的多種角色互動,正逐漸成為主要的大數據來源。
2、隨著各行業(yè)智能設備的推廣和智能模式的發(fā)展,物聯網廣泛應用于工業(yè)、農業(yè)、商業(yè)、醫(yī)療、安全、環(huán)保和國防等領域。物聯網的網絡資源發(fā)展直接影響未來網絡技術和信息資源的利用。現代社會生活和工作已經建立在復雜的互聯網基礎上,物聯網推動了人與物、物與物之間的互動和聯系,推動了智能生活和工作模式的發(fā)展,例如,可計算、可信、云計算和大數據等概念。因此,人類日益依賴于物聯網。然而,物聯網的網絡安全問題比傳統(tǒng)互聯網更為復雜。物聯網的通信涉及各種情境下數據的交換,尤其是感知層中龐大的傳感器數據,這些數據通過射頻和無線傳感器網絡進行產生和交換。如何保證物與人、物與物之間信息的完整性和真實性,是物聯網網絡安全技術研究的重要內容之一,也是影響社會穩(wěn)定和國家安全的重要因素。
3、物理不可克隆函數(physical?unclonable?function,puf)由集成電路(integrated?circuit,ic)設備固有的物理微結構特性生成,利用制造過程中的隨機性差異確保每個設備的唯一性,無法復制。在物聯網設備中,puf具有兩個重要功能:一是動態(tài)重新生成信息,無需存儲隨機選取的數據;二是提供防篡改能力。不同于將秘密信息存儲于存儲器,puf是從實體的復雜物理特性里導出秘密信息。將認證信息嵌入puf能夠保證設備的穩(wěn)健性和實用性,因為puf與設備緊密綁定。由芯片的隨機制造差異決定,不可在其他設備上復制,具有獨特性。任何篡改設備的嘗試都會影響puf,損壞原有信息,具有不可篡改的特性。此外,puf的運行成本低,易于實施。
4、密碼逆向防火墻(cryptographic?reverse?firewall,crf)的主要目的是保護密碼方案和協(xié)議免受系統(tǒng)內部攻擊。它的設計理念是在用戶端和外部通信之間增加一個可信任的中介,這個中介能夠有效地監(jiān)控和防御各種可能的攻擊,確保即使用戶的系統(tǒng)受到攻擊,用戶的消息也不會泄露。
5、認證與密鑰協(xié)商(authenticatedkeyagreement,aka)是密碼學中一種關鍵的原語,用于在互不信任的環(huán)境中確保通信雙方能夠安全地協(xié)商出共享的會話密鑰,從而保證通信數據的安全性和完整性。
6、零知識證明(zero?knowledge?proof,zkp)最早是由goldwasser等人提出的。零知識協(xié)議是一種基于概率的驗證方法,涉及兩方,即證明方和驗證者。證明者(prover)能夠在不向驗證者(verifier)提供任何有用的信息的情況下,使驗證者(verifier)相信某個論斷、聲明或陳述是正確的。零知識證明提供了一種安全的、有效的和保護隱私的身份認證方法,提高了用戶信息的安全和認證效率。
技術實現思路
1、發(fā)明目的:本發(fā)明的目的是提供一種基于crf的零知識證明混沌認證與密鑰協(xié)商方法,采用基于混沌映射的零知識證明方法在不透露用戶個人隱私信息的情況下實現用戶的身份認證;同時在密鑰生成中心和數據云上部署密碼逆向防火墻,防止內部攻擊;此外,通過使用物理不可克隆函數和密鑰協(xié)商生成會話密鑰,實現數據的安全傳輸和防止物理攻擊。
2、技術方案:本發(fā)明提供了一種基于crf的零知識證明混沌認證與密鑰協(xié)商方法,包括有以下步驟:
3、步驟1:密鑰生成中心pkg初始化,pkg利用切夫雪比混沌映射以及物理不可克隆函數生成公開參數,并發(fā)送至密碼逆向防火墻wpkg重隨機化,wpkg將重隨機化的公開參數公開;
4、步驟2:用戶密鑰生成和密鑰擴展:用戶根據自己的身份信息,通過pkg及物理不可克隆函數生成用戶密鑰及輔助信息,并通過密碼逆向防火墻wpkg重隨機化得到重隨機化后的用戶密鑰和輔助信息;
5、步驟3:服務器密鑰生成和密鑰擴展:服務器根據自己的身份信息,通過pkg及物理不可克隆函數生成用戶密鑰,并通過密碼逆向防火墻wpkg重隨機化得到重隨機化后的服務器密鑰;
6、步驟4:用戶身份認證和密鑰協(xié)商:用戶根據獲取的重隨機化的公開參數計算承諾、證明和會話令牌,并利用服務器s的密碼逆向防火墻ws重隨機化后傳輸至服務器,服務器根據接收的信息計算驗證密鑰,并驗證是否相等,若不相等,則系統(tǒng)結束;若相等,服務器計算會話令牌,利用用戶重隨機化后的會話令牌以及服務器的會話令牌計算會話密鑰,并利用計算得到的會話密鑰加密信息m得到密文;服務器將密文及服務器的會話令牌利用密碼逆向防火墻ws重隨機化后發(fā)送給用戶,用戶使用自己的會話令牌和收到的重隨機化后的服務器的會話令牌計算會話密鑰,并利用計算得到的會話密鑰解密密文得到信息m。
7、進一步地,步驟1中密鑰生成中心pkg初始化和重隨機化公開參數的具體過程為:
8、s1.1:給定一個安全參數λ,pkg首先隨機選擇x作為生成混沌映射的種子和切夫雪比混沌映射tn(.);然后,pkg隨機選取并使用物理不可克隆函數pufpkg計算主密鑰k=pufpkg(k),并計算ppub=tk(x);最后,pkg保存主密鑰k,并將par=(x,tn(.),ppub)發(fā)送給wpkg重隨機化;
9、s1.2:wpkg收到par后,首先隨機選取然后計算p'pub=tr(ppub)=tr(tk(x))=tr*k(x),最后,wpkg公開系統(tǒng)參數par'=(x,tn(.),p'pub)。
10、進一步地,所述步驟2中用戶密鑰生成和密鑰擴展的具體操作為:
11、s2.1:用戶u發(fā)送自己的身份信息idu給pkg,pkg首先隨機選取計算u1=pufpkg(idu||u),然后,計算用戶的私鑰usk=u1*k和輔助信息最后,pkg將(usk,up)發(fā)送給wpkg重隨機化;
12、s2.2:wpkg利用秘密值重隨機化用戶的私鑰和輔助信息得u'sk=usk*r=u1*k*r,并通過安全方式將隨機化后的u'sk發(fā)送給用戶u,將u'p發(fā)送給服務器s和密鑰生成中心pkg。
13、進一步地,所述步驟3中服務器密鑰生成和密鑰擴展的具體操作包括:
14、s3.1:服務器s發(fā)送自己的身份信息ids給pkg,pkg首先隨機選取計算s1=pufpkg(ids||v),然后,計算服務器s的私鑰ssk=s1*k,最后,pkg將ssk發(fā)送給wpkg重隨機化;
15、s3.2:wpkg利用秘密值重隨機化服務器的私鑰得到s'sk=ssk*r=s1*k*r,并通過一種安全得方式將s'sk發(fā)送給服務器s。
16、進一步地,所述步驟4中用戶身份認證和密鑰協(xié)商的具體過程如下:
17、s4.1:用戶u首先隨機選取計算a1=pufu(a),然后,使用a1和par'計算承諾證明π=u'sk*a1=usk*r*a1以及會話令牌其中,usk為用戶的私鑰,r表示秘密值,u'sk為重隨機化后的用戶的私鑰;最后,用戶u將c,π,k1發(fā)送給ws重隨機化;
18、s4.2:ws首先隨機選取然后,對c,π,k1重隨機化得到π'=π*η=u'sk*a1*η=usk*r*a1*η,最后,ws將c',π',k'1發(fā)送給服務器s;
19、s4.3:服務器收到c',π',k'1后,首先使用c'、u'p和公開參數par'計算vk,u'p為重隨機化用戶的輔助信息;然后,使用π'和par'計算tπ'(p'pub),并判斷其與vk是否相等,若相等,服務器首先計算其中,ids為服務器s的身份信息,ssk為服務器s的私鑰,s'sk為重隨機化后的服務器s的私鑰;然后計算會話密鑰服務器使用會話密鑰k12加密信息m得到密文encm=(mk12),最后服務器將密文encm和k2發(fā)送給ws重隨機化,若不相等,則系統(tǒng)結束,具體的驗證步驟如下:
20、
21、s4.4:ws收到后選取秘密值重隨機化k2得到隨后將k'2和encm發(fā)送給用戶u;
22、s4.5:用戶u收到后,首先使用k1計算會話密鑰然后使用會話密鑰k12解密密文encm得到信息密鑰協(xié)商完成。
23、有益效果:
24、本發(fā)明采用基于混沌映射的零知識證明方法在不透露用戶個人隱私信息的情況下實現用戶的身份認證,保證用戶的真實性和合法性的同時,保證匿名性;同時在密鑰生成中心和數據云上部署密碼逆向防火墻,防止內部攻擊;此外,通過使用物理不可克隆函數和密鑰協(xié)商生成會話密鑰,實現數據的安全傳輸和防止物理攻擊,保證數據的機密性。