• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      SM9 用戶私鑰在線分發(fā)技術(shù)*

      2022-09-24 03:44:44彭豐偉劉方舟陳福莉蔡羅成
      通信技術(shù) 2022年8期
      關(guān)鍵詞:私鑰公鑰密鑰

      曾 勇,馬 睿,彭豐偉,劉方舟,陳福莉,蔡羅成

      (1.成都衛(wèi)士通信息產(chǎn)業(yè)股份有限公司,四川 成都 610041;2.電子科技大學(xué),四川 成都 611731;3.中國(guó)人民解放軍61428 部隊(duì),北京 100072)

      0 引言

      物聯(lián)網(wǎng)應(yīng)用包括感知層、傳輸層和應(yīng)用層[1]。在安全性要求較高的特種領(lǐng)域,需要采取認(rèn)證加密手段處理感知層的用戶終端采集和傳輸?shù)男畔ⅲ_保應(yīng)用信息的安全。而分布在感知層的用戶終端具有分布廣、數(shù)量大、終端設(shè)備輕量化等特點(diǎn),傳統(tǒng)公鑰基礎(chǔ)設(shè)施(Public Key Infrastructure,PKI)的證書(shū)管理比較復(fù)雜,很難滿足擁有海量連接的物聯(lián)網(wǎng)應(yīng)用的要求。Shamir 在1984 年提出了基于標(biāo)識(shí)的密碼系統(tǒng)(Identity Base Cryptography,IBC)概念[2],在IBC 中用戶身份與其公鑰以最自然的方式進(jìn)行綁定,用戶身份信息作為公鑰,用戶私鑰則由密鑰生成中心(Key Generation Center,KGC)通過(guò)主密鑰和用戶標(biāo)識(shí)計(jì)算得出[3]。IBC 使得任意兩個(gè)用戶可以直接通信,不需要交換公鑰證書(shū),不必保存公鑰證書(shū)列表和使用在線的第三方證書(shū)簽發(fā)機(jī)構(gòu)證書(shū)授權(quán)(Certificate Authority,CA),大大簡(jiǎn)化了公鑰分發(fā)過(guò)程和證書(shū)管理過(guò)程[2]。因此,IBC 可以作為PKI 的一個(gè)很好的替代,尤其是在具有海量連接的物聯(lián)網(wǎng)應(yīng)用環(huán)境[4]。

      SM9 密碼算法作為身份標(biāo)識(shí)密碼算法[5]的一種,遵循IBC 密碼體制,用于解決物聯(lián)網(wǎng)用戶終端數(shù)據(jù)的安全防護(hù)問(wèn)題,得到了業(yè)界的廣泛關(guān)注。在SM9 技術(shù)體系中,規(guī)定用戶的私鑰不能在終端自身的密碼設(shè)備中產(chǎn)生,而是由密鑰管理基礎(chǔ)設(shè)施(Key Management System,KMS)統(tǒng)一產(chǎn)生并下載給用戶,因此推廣SM9 應(yīng)用的關(guān)鍵在于解決好用戶私鑰分發(fā)的問(wèn)題。我國(guó)密碼行業(yè)標(biāo)準(zhǔn)GM/T 0086—2020《基于SM9 標(biāo)識(shí)密碼算法的密鑰管理系統(tǒng)技術(shù)規(guī)范》提出了一種用戶私鑰離線分發(fā)方案[6],該方案安全性高,但需要耗費(fèi)大量人力和時(shí)間開(kāi)銷,對(duì)密鑰管理系統(tǒng)會(huì)造成較大壓力和負(fù)擔(dān)。業(yè)界也對(duì)SM9 用戶私鑰在線分發(fā)技術(shù)進(jìn)行了相關(guān)研究[7-9],提出了一些相關(guān)用戶密鑰在線分發(fā)方案,但存在用戶身份被假冒以及數(shù)據(jù)傳輸保護(hù)不完善等問(wèn)題。本文基于SM9 密鑰管理技術(shù)體制,提出了一種新的用戶私鑰分發(fā)機(jī)制,通過(guò)建立安全傳輸通道實(shí)現(xiàn)了用戶私鑰在線產(chǎn)生和分發(fā),可以顯著提升SM9 密鑰管理的能力和效率,從而有效推進(jìn)SM9 在物聯(lián)網(wǎng)領(lǐng)域的應(yīng)用。

      1 SM9 密鑰管理系統(tǒng)簡(jiǎn)介

      1.1 密鑰管理系統(tǒng)組成及架構(gòu)

      SM9 的KMS 由私鑰生成系統(tǒng)(Private Key Generator,PKG)、注冊(cè)服務(wù)機(jī)構(gòu)(Registration Agency,RA)、公開(kāi)參數(shù)服務(wù)器(Public Parameter Server,PPS)和用戶終端實(shí)體(User/Client)組成[6],系統(tǒng)架構(gòu)如圖1 所示。各實(shí)體功能如下文所述。

      圖1 SM9 密鑰管理系統(tǒng)組成及架構(gòu)

      (1)PKG 利用系統(tǒng)主密鑰和相關(guān)參數(shù)為用戶生成私鑰,并提供相關(guān)管理及查詢服務(wù)。

      (2)RA 承擔(dān)用戶密鑰申請(qǐng)注冊(cè)、認(rèn)證、管理以及與PKG 進(jìn)行業(yè)務(wù)交流的任務(wù),提供對(duì)稱、非對(duì)稱及雜湊等密碼服務(wù),并接收PKG 返回的密鑰數(shù)據(jù)寫入終端實(shí)體的密鑰載體中。

      (3)PPS 面向用戶信息服務(wù)系統(tǒng),提供公開(kāi)的可訪問(wèn)地址,進(jìn)行公開(kāi)參數(shù)和策略的安全查詢與分發(fā)。公開(kāi)參數(shù)包括可公開(kāi)共享的密碼參數(shù)和用戶標(biāo)識(shí)狀態(tài)目錄。

      (4)User/Client 是用戶信息服務(wù)系統(tǒng)的終端應(yīng)用系統(tǒng),直接或通過(guò)本地代理向PKG 申請(qǐng)密鑰,并實(shí)現(xiàn)對(duì)自身私鑰的存儲(chǔ)和使用。

      從SM9 密鑰管理系統(tǒng)架構(gòu)分析可知,用戶密鑰的產(chǎn)生和分發(fā)主要涉及PKG、RA 和User/Client等實(shí)體,可通過(guò)在PKG 與RA 之間、RA 與User/Client 之間建立安全通道,實(shí)現(xiàn)密鑰的傳輸和下載。

      1.2 用戶密鑰產(chǎn)生和分發(fā)機(jī)制分析

      SM9 密碼系統(tǒng)的用戶密鑰包括用戶公鑰和私鑰,用戶公鑰為公開(kāi)信息,可根據(jù)用戶身份標(biāo)識(shí)產(chǎn)生,無(wú)須專門管理和分發(fā);用戶私鑰為秘密信息,由PKG 統(tǒng)一生成后,通過(guò)安全渠道傳遞給User/Client。因此,SM9 用戶私鑰能否安全、快捷地傳遞給User/Client直接關(guān)系到SM9密碼應(yīng)用能否推廣。SM9 的用戶私鑰離線分發(fā)方法包括以下關(guān)鍵步驟[6:]

      (1)用戶注冊(cè):用戶通過(guò)RA 完成注冊(cè),用于密鑰申請(qǐng)時(shí)對(duì)用戶信息的驗(yàn)證。

      (2)密鑰申請(qǐng):用戶向RA 發(fā)送私鑰分發(fā)請(qǐng)求,RA 先對(duì)申請(qǐng)信息進(jìn)行認(rèn)證,審核用戶標(biāo)識(shí)的唯一性以及用戶數(shù)據(jù)的真實(shí)性和完整性,如審核通過(guò),RA 依據(jù)用戶申請(qǐng)內(nèi)容,向PKG 發(fā)送密鑰申請(qǐng)。

      (3)密鑰產(chǎn)生:PKG 驗(yàn)證RA 的申請(qǐng),利用系統(tǒng)參數(shù)生成用戶私鑰,并將用戶標(biāo)識(shí)狀態(tài)信息發(fā)布到PPS。

      (4)密鑰分發(fā):PKG 將用戶私鑰密文和相關(guān)信息組成相應(yīng)數(shù)據(jù)包,并進(jìn)行數(shù)字簽名,回送給RA,RA 驗(yàn)證收到的數(shù)據(jù),驗(yàn)證通過(guò)后,把私鑰密文數(shù)據(jù)下載到用戶密鑰載體中。

      從上述流程可看出,在離線方式下用戶私鑰通過(guò)RA 直接下載寫入U(xiǎn)ser/Client(密鑰載體)。對(duì)于海量終端接入的物聯(lián)網(wǎng)應(yīng)用部署,如果需要集中User/Client 并送到RA 完成私鑰的下載寫入工作,必然耗費(fèi)大量時(shí)間及成本,導(dǎo)致密鑰管理效率不高,不利于應(yīng)用系統(tǒng)的密碼應(yīng)用部署。此外,該種用戶私鑰分發(fā)方式不利于用戶密鑰后續(xù)的更換工作。因此,需要設(shè)計(jì)一種用戶私鑰的在線分發(fā)機(jī)制,以適應(yīng)具有海量終端接入的物聯(lián)網(wǎng)應(yīng)用系統(tǒng)的要求。

      2 用戶私鑰在線分發(fā)方案

      用戶私鑰在線分發(fā)是基于User/Client 與KMS之間互聯(lián)互通的情況下,實(shí)時(shí)在線地從KMS 下載用戶私鑰到User/Client。而信息在交互過(guò)程中,面臨著身份假冒、信息被竊聽(tīng)、信息被篡改和重放等安全威脅。因此,從User/Client 與KMS 之間的信息交互的安全性出發(fā),基于SM9 KMS 架構(gòu)提出一種新型的用戶私鑰分發(fā)方案。本方案設(shè)計(jì)要點(diǎn)如下:

      (1)User/Client 標(biāo)識(shí)設(shè)計(jì)。User/Client 采用兩個(gè)用戶標(biāo)識(shí):一個(gè)為公開(kāi)標(biāo)識(shí)(UID),可以公開(kāi),用于生成用戶公鑰;另一個(gè)為私有標(biāo)識(shí)(SID),不對(duì)外公開(kāi),保存在用戶終端的密鑰載體中,第三方不能對(duì)SID進(jìn)行讀寫,用于身份識(shí)別。UID和SID均由PKG 統(tǒng)一產(chǎn)生,具有唯一性的特點(diǎn),設(shè)備出廠前由生產(chǎn)廠家寫入,二者形成一一對(duì)應(yīng)關(guān)系,并保存在PKG 中。由于UID和SID兩個(gè)用戶標(biāo)識(shí)的功能相互獨(dú)立,不會(huì)在SM9 密碼管理體系架構(gòu)中造成任何沖突。

      (2)密鑰分發(fā)流程設(shè)計(jì)。與密鑰離線分發(fā)流程相比較,增加User/Client 與KMS 的雙向認(rèn)證過(guò)程,保證User/Client 身份的合法性,同時(shí)保證User/Client 不會(huì)被假冒的KMS 欺騙。在身份認(rèn)證通過(guò)后,再完成用戶信息的注冊(cè),最后進(jìn)行密鑰產(chǎn)生及下發(fā)。

      (3)信息傳輸安全防護(hù)設(shè)計(jì)。通過(guò)身份認(rèn)證進(jìn)行密鑰協(xié)商,產(chǎn)生數(shù)據(jù)傳輸加密密鑰和完整性檢驗(yàn)密鑰,實(shí)現(xiàn)User/Client 與RA、PKG 之間信息傳輸?shù)臋C(jī)密性、完整性、認(rèn)證性和不可否認(rèn)性保護(hù),同時(shí)采用時(shí)間戳機(jī)制實(shí)現(xiàn)抗重放攻擊。為適應(yīng)輕量化終端的物聯(lián)網(wǎng)應(yīng)用場(chǎng)景,信息傳輸安全防護(hù)機(jī)制可基于輕量級(jí)對(duì)稱密碼算法SM7[5]實(shí)現(xiàn),即對(duì)用戶私鑰進(jìn)行機(jī)密性保護(hù)的密鑰由User/Client 密鑰載體的隨機(jī)數(shù)發(fā)生器產(chǎn)生,并滿足隨機(jī)數(shù)檢驗(yàn)的相關(guān)標(biāo)準(zhǔn)。

      為了描述用戶私鑰分發(fā)流程,本文定義User/Client 的公開(kāi)標(biāo)識(shí)為UID、私有標(biāo)識(shí)為SID,RA 的標(biāo)識(shí)為RAID;RA 公鑰為RAPK、私鑰為RASK,PKG 公鑰為PKGPK、私鑰為PKGASK;SM9 非對(duì)稱加密算法(PK為公鑰)表示為APK(DATA),SM9 非對(duì)稱解密算法(SK為私鑰)表示為DASK(DATA),簽名結(jié)果為sign;對(duì)稱加密算法(K為密鑰)表示為EK(DATA),對(duì)稱解密算法(K為密鑰)表示為DEK(DATA);雜湊結(jié)果為HMAC;User/Client 能夠通過(guò)PPS 獲得RA 的標(biāo)識(shí)和RA、PKG 的公鑰等參數(shù)[10]。

      以下內(nèi)容通過(guò)用戶終端認(rèn)證及注冊(cè)和用戶私鑰在線分發(fā)兩個(gè)步驟對(duì)方案的具體實(shí)現(xiàn)機(jī)制和過(guò)程進(jìn)行描述。

      2.1 用戶終端認(rèn)證及注冊(cè)

      2.1.1 實(shí)施方案

      用戶終端認(rèn)證及注冊(cè)的實(shí)施方案如下:

      (1)User/Client 通過(guò)RA 與PKG 進(jìn)行雙向身份認(rèn)證。User/Client 采用PKG 對(duì)SID信息加密后上報(bào)RA,RA 再請(qǐng)求PKG 驗(yàn)證User/Client 的合法性,PKG 完成驗(yàn)證后把結(jié)果告知RA,實(shí)現(xiàn)對(duì)User/Client 的認(rèn)證;User/Client 通過(guò)隨機(jī)數(shù)挑戰(zhàn)—應(yīng)答方式實(shí)現(xiàn)對(duì)RA 的合法性判定。

      (2)用戶注冊(cè)。User/Client 與RA 認(rèn)證成功后進(jìn)行用戶注冊(cè),注冊(cè)信息在User/Client 與RA 之間傳輸,采用數(shù)據(jù)加密、哈希計(jì)算、簽名驗(yàn)證等安全防護(hù)設(shè)計(jì),確保信息的機(jī)密性、完整性和可認(rèn)證性。

      2.1.2 流程設(shè)計(jì)

      認(rèn)證及注冊(cè)流程如圖2 所示,其具體的流程如下文所述。

      圖2 用戶認(rèn)證及注冊(cè)流程

      (1)User/Client 發(fā)起認(rèn)證請(qǐng)求。①產(chǎn)生隨機(jī)數(shù)R1和時(shí)間戳T1,并在本地保存;②從PPS 獲得RAID,RAPK和PKGPK;③利用PKGPK對(duì)SID加密生成APKGPK(SID);④利用RAPK對(duì)UID,RAID,T1和R1加密生成ARAPK(UID||RAID||T1||R1)。

      (2)User/Client 發(fā)送認(rèn)證請(qǐng)求數(shù)據(jù)APKGPK(SID)||ARAPK(UID||RAID||T1||R1)給RA。

      (3)RA 驗(yàn)證認(rèn)證請(qǐng)求。①利用RASK解密DARASK(ARAPK(UID||RAID||T1||R1)) 獲得UID,RAID,T1和R1;②利用RAID與自身標(biāo)識(shí)比對(duì),不一致則丟棄;③利用T1判斷是否重放攻擊;④利用RASK簽名SIGNRASK(APKGPK(SID))獲得sign1。

      (4)RA 發(fā)送認(rèn)證請(qǐng)求數(shù)據(jù)RAID||APKGPK(SID)||sign1給PKG。

      (5)PKG 驗(yàn)證認(rèn)證請(qǐng)求。①?gòu)腜PS 獲 得RAPK,并對(duì)sign1驗(yàn)簽,如果驗(yàn)簽不通過(guò)則丟棄;②利用PKGSK解密DAPKGSK(APKGPK(SID))獲得SID;③通過(guò)SID查找對(duì)應(yīng)的UID′,如果沒(méi)有找到則判定為非法用戶;④產(chǎn)生一個(gè)認(rèn)證令牌TOKEN,TOKEN用于后續(xù)用戶私鑰分發(fā)時(shí)數(shù)據(jù)完整性的校驗(yàn)以及用戶對(duì)PKG 合法性的校驗(yàn);⑤利用RAPK對(duì)UID′,TOKEN加密獲得ARAPK(UID′||TOKEN);⑥利用PKGSK簽名SIGNPKGSK(ARAPK(UID′||TOKEN))獲得sign2。

      (6)PKG 返回驗(yàn)證結(jié)果ARAPK(UID′||TOKEN)||sign2給RA。

      (7)RA 判斷User/Client 合法性,同時(shí)發(fā)起認(rèn)證請(qǐng)求。①?gòu)腜PS 獲得PKG 的PKGPK,并對(duì)sign2驗(yàn)簽,如果驗(yàn)證不通過(guò)則丟棄;②利用RASK解 密DARASK(ARAPK(UID′||TOKEN))獲 得UID′和TOKEN;③比對(duì)UID′與本地保留的UID是否一致,如果不一致則用戶非法;④產(chǎn)生隨機(jī)數(shù)R2;⑤利用R1加密生成ER1(UID′||TOKEN||R2);⑥保留UID與TOKEN對(duì)應(yīng)關(guān)系;⑦利用KDF(R1||R2)生成后續(xù)數(shù)據(jù)傳輸?shù)募用苊荑€CK和完整性密鑰IK,與UID,TOKEN綁定后在本地存儲(chǔ)。

      (8)RA 返回認(rèn)證請(qǐng)求數(shù)據(jù)ER1(UID′||TOKEN||R2)給User/Client。

      (9)User/Client判斷RA合法性。①利用步驟(1)產(chǎn)生的隨機(jī)數(shù)R1解密DER1(ER1(UID′||TOKEN||R2)),獲得UID′,TOKEN和R2;②比對(duì)UID′和UID,如果不相等則RA 為非法;③利用密鑰生成函數(shù)KDF(R1||R2)生成后續(xù)數(shù)據(jù)傳輸?shù)募用苊荑€CK和完整性密鑰IK,并本地保存CK和IK;④生成時(shí)間T2;⑤利用CK加密ECK(UID||T2||用戶資料);⑥利用IK對(duì)ECK(UID||T2||用戶資料)進(jìn)行完整性保護(hù)HMACIK。

      (10)User/Client 發(fā)起注冊(cè)請(qǐng)求UID||ECK(UID||T2||用戶資料)||HMACIK給RA。

      (11)RA 完成用戶終端注冊(cè)。①利用UID與本地保存的UID比對(duì),不一致丟棄數(shù)據(jù);②通過(guò)UID查找CK和IK;③利用IK對(duì)ECK(UID||T2||用戶資料)進(jìn)行哈希計(jì)算,與接收到的HMACIK比對(duì),如果不一致則丟棄;④利用CK解密ECK(UID||T2||用戶資料)獲得UID,T2和用戶資料;⑤利用時(shí)間戳T2判斷發(fā)送是否有效,防止重放攻擊;⑥保存用戶資料到注冊(cè)表。

      (12)RA 返回注冊(cè)成功消息給User/Client,完成注冊(cè)。

      2.2 用戶私鑰在線分發(fā)

      2.2.1 實(shí)施方案

      用戶注冊(cè)成功后,User/Client 向PKG 申請(qǐng)私鑰,PKG 產(chǎn)生并分發(fā)用戶私鑰。用戶私鑰信息在PKG與RA 之間、RA 與User/Client 之間傳輸采用數(shù)據(jù)加密、完整性校驗(yàn)、簽名驗(yàn)簽等安全防護(hù)設(shè)計(jì),確保信息的機(jī)密性、完整性和可認(rèn)證性,同時(shí)采用時(shí)間戳實(shí)現(xiàn)抗重放攻擊。

      2.2.2 流程設(shè)計(jì)

      用戶私鑰生成和下發(fā)流程如圖3 所示,對(duì)流程的具體描述如下文所述。

      圖3 用戶私鑰生成和下發(fā)流程

      (1)User/Client 發(fā)起私鑰請(qǐng)求。①User/Client產(chǎn)生隨機(jī)數(shù)R3和時(shí)間戳T3,并本地保存;②利用PKGPK加密隨機(jī)數(shù)R3生成APKGPK(R3);③利用注冊(cè)時(shí)的CK加密ECK(UID||T3||APKGPK(R3));④利用注冊(cè)時(shí)的IK對(duì)加密數(shù)據(jù)ECK(UID||T3||APKGPK(R3))進(jìn)行完整性保護(hù)HMACIK。

      (2)User/Client 發(fā)送私鑰請(qǐng)求數(shù)據(jù)UID||ECK(U ID||T3||APKGPK(R3))||HMACIK給RA。

      (3)RA 驗(yàn)證私鑰請(qǐng)求。①利用UID查找CK和IK;②利用CK解密DECK(ECK(UID||T3||APKGPK(R3)))獲得UID,T3和APKGPK(R3);③比對(duì)UID與本地保留的UID,不一致則終端不合法;④利用IK對(duì)數(shù)據(jù)ECK(UID||T3||APKGPK(R3))進(jìn)行哈希計(jì)算與HMACIK進(jìn)行比對(duì),不一致則丟棄;⑤利用T3判定消息是否重放;⑥產(chǎn)生隨機(jī)數(shù)R4,利用密鑰產(chǎn)生中心公鑰PKGPK對(duì)隨機(jī)數(shù)R4加密生成APKGPK(R4);⑦利用R4加密ER4(UID||T3||APKGPK(R3));⑧利用RASK簽名SIG NRASK(RAID||APKGPK(R4)||ER4(UID||T3||APKGPK(R3)))) 得到sign3。

      (4)RA 發(fā)送私鑰請(qǐng)求數(shù)據(jù)RAID||APKGPK(R4)||ER4(UID||T3||APKGPK(R3))||sign3給PKG。

      (5)PKG 驗(yàn)證私鑰請(qǐng)求,產(chǎn)生用戶私鑰。①?gòu)腜PS 獲得RAPK,并對(duì)sign3驗(yàn)簽,如果驗(yàn)簽不通過(guò)則丟棄;②利用PKGSK解密DAPKGSK(APKGPK(R4))獲得R4;③利用R4解密DER4(ER4(UID||T3||APKGPK(R3)))獲 得UID,T3和APKGPK(R3);④利 用PKGSK解密DAPKGSK(APKGPK(R3))獲得R3,用于用戶私鑰UIDSK的保護(hù);⑤利用T3判斷是否重放攻擊;⑥利用UID、KMS 主密鑰及參數(shù)生成用戶私鑰UIDSK,利用R3作對(duì)稱密鑰加密UIDSK生成ER3(UIDSK)和時(shí)間戳T4;⑦利用注冊(cè)時(shí)生成的認(rèn)證令牌TOKEN對(duì)ER3(UIDSK)進(jìn)行哈希計(jì)算HMACTOKEN;⑧生成隨機(jī)數(shù)R5,并利用RAPK加密ARAPK(R5);⑨利用R5加密ER5(UID||T4||ER3(UIDSK)||HMACTOKEN);⑩利用PKGSK簽名SIGNPKGSK(ER5(UID||T4||ER3(UIDSK)||HMACTOKEN))獲得sign4。

      (6)PKG 返回私鑰數(shù)據(jù)ARAPK(R5)||ER5(UID||T4||ER3(UIDSK)||HMACTOKEN)||sign4給RA。

      (7)RA 驗(yàn)證私鑰數(shù)據(jù)合法性。①?gòu)腜PS 獲得PKGPK,并對(duì)sign4驗(yàn)簽,如果驗(yàn)簽不通過(guò)則丟棄;②利用RAPK解密DARASK(ARAPK(R5))得到R5;③利用R5解密DER5(ER5(UID||T4||ER3(UIDSK)||HMACTOKEN))獲 得UID,T4,ER3(UIDSK) 和HMACTOKEN;④利用注冊(cè)時(shí)產(chǎn)生的CK加密ECK(UID||T4||ER3(UIDSK)||HMACTOKEN);⑤利用注冊(cè)時(shí)產(chǎn)生的IK對(duì)加密數(shù)據(jù)ECK(UID||T4||ER3(UIDSK)||HMACTOKEN)進(jìn)行哈希計(jì)算得到HMACIK。

      (8)RA 返回私鑰數(shù)據(jù)ECK(UID||T4||ER3(UIDSK)||HMACTOKEN)||HMACIK給User/Client。

      (9)User/Client 對(duì)私鑰驗(yàn)證和存儲(chǔ)。①利用注冊(cè)時(shí)產(chǎn)生的IK對(duì)ECK(UID||T4||ER3(UIDSK)||HMACTOKEN)進(jìn)行哈希運(yùn)算并與接收到的HMACIK比較,不一致則判定為非法數(shù)據(jù)并丟棄;②利用注冊(cè)產(chǎn)生的CK解 密DECK(ECK(UID||T4||ER3(UIDSK)||HMACTOKEN)),獲得UID,T4,ER3(UIDSK)和HMACTOKEN;③核對(duì)UID與自身是否一致,不一致則判定為非法數(shù)據(jù)并丟棄;④利用注冊(cè)產(chǎn)生的TOKEN對(duì)ER3(UIDSK)進(jìn)行哈希計(jì)算,與HMACTOKEN比較,不一致則判定為非法數(shù)據(jù)并丟棄;⑤利用T4判斷消息是否為重放攻擊;⑥利用本地保存的R3解密DER3(ER3(UIDSK))得到UIDSK;⑦本地保存UIDSK。

      (10)User/Client 發(fā)送私鑰分配成功數(shù)據(jù)給RA。

      (11)RA 發(fā)送私鑰分配成功數(shù)據(jù)給PKG。

      (12)PKG 將用戶標(biāo)識(shí)狀態(tài)信息發(fā)布到PPS。

      3 可行性分析

      3.1 安全性分析

      用戶私鑰的安全直接關(guān)系到應(yīng)用系統(tǒng)的安全運(yùn)行,用戶私鑰安全分發(fā)是確保用戶私鑰安全的關(guān)鍵環(huán)節(jié)之一,因此需要提供完備的安全防護(hù)體系和安全的密鑰分發(fā)協(xié)議,確保用戶私鑰在線分發(fā)安全。

      3.1.1 防護(hù)體系方面

      本方案遵循SM9 密鑰管理架構(gòu),基于現(xiàn)有SM9私鑰離線分發(fā)規(guī)范標(biāo)準(zhǔn),在實(shí)現(xiàn)RA 與PKG 之間的安全防護(hù)的同時(shí),增加了User/Client 與RA、User/Client 與PKG 之間的安全防護(hù)設(shè)計(jì),具體采用了雙向身份認(rèn)證、數(shù)據(jù)加密傳輸、數(shù)據(jù)完整性驗(yàn)證、數(shù)據(jù)合法性驗(yàn)證、時(shí)間戳防重放等安全防護(hù)技術(shù),在User/Client、RA 和PKG 三者之間構(gòu)建完備的安全防護(hù)體系,有效保障用戶私鑰在線分發(fā)的安全。

      3.1.2 密鑰分發(fā)協(xié)議方面

      首先,本文基于SID的私密性和唯一性,利用SM9 算法的加解密和簽名驗(yàn)簽機(jī)制實(shí)現(xiàn)User/Client 與KMS(RA、PKG)之間的雙向身份認(rèn)證,確保User/Client 和KMS 身份的合法性;其次,利用身份認(rèn)證過(guò)程中派生的加密密鑰和完整性密鑰,保護(hù)User/Client 向KMS 上傳用戶注冊(cè)數(shù)據(jù)、私鑰請(qǐng)求數(shù)據(jù)時(shí),以及KMS 生成私鑰數(shù)據(jù)下傳給User/Client 時(shí)的機(jī)密性和完整性,確保User/Client 和KMS 之間數(shù)據(jù)傳輸通道安全,防止數(shù)據(jù)被泄密、偽造和篡改;再次,利用身份認(rèn)證時(shí)生成的認(rèn)證令牌TOKEN對(duì)下發(fā)的私鑰數(shù)據(jù)進(jìn)行來(lái)源和合法性驗(yàn)證,實(shí)現(xiàn)密鑰數(shù)據(jù)的可認(rèn)證性和不可否認(rèn)性;最后,采用時(shí)間戳設(shè)計(jì),規(guī)避數(shù)據(jù)重放攻擊。綜上,所提方案為密鑰在線安全分發(fā)實(shí)現(xiàn)提供了有效支撐。

      3.2 實(shí)用性分析

      海量的終端接入和有限的終端資源之間的矛盾一直是物聯(lián)網(wǎng)應(yīng)用推廣的難點(diǎn),而現(xiàn)實(shí)需求對(duì)密碼應(yīng)用部署和密碼輕量化應(yīng)用也提出了更高的要求。

      3.2.1 密碼應(yīng)用部署方面

      本方案從物聯(lián)網(wǎng)海量終端接入的實(shí)際部署需求出發(fā),提出了一種利用物聯(lián)網(wǎng)基礎(chǔ)網(wǎng)絡(luò)對(duì)終端設(shè)備進(jìn)行用戶密鑰在線實(shí)時(shí)分發(fā)的方法,簡(jiǎn)化了密鑰管理流程,減輕了密鑰管理系統(tǒng)壓力,可有效縮短應(yīng)用部署時(shí)間和節(jié)省管理成本,有效滿足海量終端接入的物聯(lián)網(wǎng)應(yīng)用場(chǎng)景的需要。

      3.2.2 對(duì)應(yīng)用系統(tǒng)的影響方面

      本方案從物聯(lián)網(wǎng)終端資源有限的實(shí)際出發(fā),對(duì)密鑰數(shù)據(jù)的加密保護(hù)采用輕量級(jí)對(duì)稱密碼算法(如SM7[5]),能較好地滿足物聯(lián)網(wǎng)應(yīng)用場(chǎng)景的要求。此外,考慮到物聯(lián)網(wǎng)終端密鑰在線初裝后密鑰更換的頻次要求較低,用戶密鑰在線分發(fā)協(xié)議增加的資源開(kāi)銷對(duì)應(yīng)用系統(tǒng)和User/Client 的影響不大。因此本方案具有較好的實(shí)用性和推廣價(jià)值。

      4 結(jié)語(yǔ)

      物聯(lián)網(wǎng)應(yīng)用采用SM9 密碼系統(tǒng)進(jìn)行信息安全防護(hù)已成為業(yè)界研究熱點(diǎn)。本文基于GM/T 0086—2020《基于SM9 標(biāo)識(shí)密碼算法的密鑰管理系統(tǒng)技術(shù)規(guī)范標(biāo)準(zhǔn)》提出了SM9 用戶私鑰在線分發(fā)新技術(shù),解決了用戶終端與密鑰管理中心之間信息交換的安全防護(hù)問(wèn)題。本文在機(jī)密性、合法性、完整性、可認(rèn)證性和抗重放攻擊等方面進(jìn)行了安全設(shè)計(jì),確保用戶終端在線下載用戶私鑰的安全。所提方案相較于用戶密鑰離線分發(fā)具有較大優(yōu)勢(shì),特別適用于5G 網(wǎng)絡(luò)物聯(lián)網(wǎng)場(chǎng)景的應(yīng)用,為進(jìn)一步推動(dòng)SM9 在物聯(lián)網(wǎng)的實(shí)用化進(jìn)程提供了一種新的思路和方法。

      猜你喜歡
      私鑰公鑰密鑰
      探索企業(yè)創(chuàng)新密鑰
      比特幣的安全性到底有多高
      基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
      密碼系統(tǒng)中密鑰的狀態(tài)與保護(hù)*
      一種基于混沌的公鑰加密方案
      一種基于虛擬私鑰的OpenSSL與CSP交互方案
      一種對(duì)稱密鑰的密鑰管理方法及系統(tǒng)
      基于ECC的智能家居密鑰管理機(jī)制的實(shí)現(xiàn)
      HES:一種更小公鑰的同態(tài)加密算法
      SM2橢圓曲線公鑰密碼算法綜述
      大埔区| 浦东新区| 清涧县| 贵定县| 马尔康县| 紫金县| 安泽县| 贵州省| 侯马市| 克什克腾旗| 五河县| 长春市| 兴隆县| 海兴县| 永仁县| 武汉市| 阳泉市| 晴隆县| 临泉县| 蓬安县| 南城县| 堆龙德庆县| 德阳市| 烟台市| 贺兰县| 确山县| 鲁山县| 广宗县| 鄢陵县| 巩留县| 金沙县| 宾川县| 桂阳县| 阿坝县| 定远县| 克东县| 辰溪县| 霸州市| 阳朔县| 尼玛县| 乐平市|