本實用新型屬于量子密碼通信領(lǐng)域,特別是涉及一種量子網(wǎng)絡(luò)服務(wù)站以及量子通信網(wǎng)絡(luò)。
背景技術(shù):
量子通信系統(tǒng)的安全性是由量子力學中的海森堡測不準原理和量子不可克隆定理來保證的,這使得不斷提高的數(shù)學計算能力不會威脅到量子密碼通信系統(tǒng)的安全性,即使在未來具有強大計算能力的量子計算機出現(xiàn),量子密碼通信系統(tǒng)仍然是安全的。目前,點對點的量子通信系統(tǒng)已經(jīng)得到廣泛的研究,并且已經(jīng)具備了商用的基礎(chǔ),但從實際應(yīng)用的角度出發(fā),多用戶的接入是自然要求,因此量子通信系統(tǒng)從點對點發(fā)展為網(wǎng)絡(luò)化是必然趨勢。量子通信網(wǎng)絡(luò)化的研究方向包括多用戶量子密鑰分發(fā)、量子中繼方案、量子網(wǎng)絡(luò)和經(jīng)典網(wǎng)絡(luò)融合、身份驗證和路由協(xié)議等,其中具有多用戶接入功能、實現(xiàn)量子密鑰分發(fā),并實現(xiàn)各種通信協(xié)議的量子服務(wù)站是核心研究內(nèi)容。
量子服務(wù)站位于量子通信網(wǎng)絡(luò)的末梢,一端連著用戶,負責用戶接入,另一端連著專用的量子網(wǎng)絡(luò)和經(jīng)典的通信網(wǎng)絡(luò),實現(xiàn)跨區(qū)域用戶的交流;其中同一個量子服務(wù)站下面的用戶組成一個局域網(wǎng),各個量子服務(wù)站之間構(gòu)成廣域網(wǎng)。量子服務(wù)站還需要處理類似經(jīng)典密碼學包含各種任務(wù),包括消息認證、身份認證、數(shù)據(jù)加解密和數(shù)字簽名等任務(wù),其中,消息認證保證了數(shù)據(jù)來源的正確性和消息傳輸過程中完整性,身份認證保證登錄用戶的可靠性,數(shù)字簽名確保信息的完整性、不可篡改性和不可抵賴性,加解密確保通信的安全傳輸。但現(xiàn)有量子網(wǎng)絡(luò)中服務(wù)站(服務(wù)中心或服務(wù)器)僅能實現(xiàn)身份認證或數(shù)字簽名的單種業(yè)務(wù)功能,沒有可以實現(xiàn)多種業(yè)務(wù)功能的量子網(wǎng)絡(luò)服務(wù)站。
目前解決服務(wù)端與多個用戶接入的常用方法是在每一個用戶都設(shè)置一個量子密鑰分發(fā)裝置,服務(wù)端與用戶端形成一個1*N的密鑰分發(fā)網(wǎng)絡(luò)。如申請?zhí)?01410337054.7的專利申請中公開一種多用戶波分復用量子密鑰分發(fā)網(wǎng)絡(luò)系統(tǒng)及其密鑰分發(fā)與共享方法,Alice與多個Bob用戶進行量子密鑰分發(fā)與存儲。又如Bernd等人在文獻《A quantum access network》(NATURE 501(7465):69-72,September 2013)提出的將Alice設(shè)置在用戶端,Bob設(shè)置在服務(wù)端,采用多個Alice和一個Bob進行量子密鑰分發(fā)。這些方案都采用了服務(wù)端與每個用戶都建立一條量子密鑰分發(fā)線路的方式,這種方式雖然保證了通信安全的可靠性,但是限制了用戶數(shù)量的擴展,而且每個用戶都需要密鑰分發(fā)設(shè)備的方式增加用戶的成本,不利于大規(guī)模應(yīng)用。
技術(shù)實現(xiàn)要素:
本實用新型提供一種量子網(wǎng)絡(luò)服務(wù)站,利用量子密鑰卡解決量子網(wǎng)絡(luò)終端的接入使用與安全的問題;通過設(shè)置量子密鑰存儲服務(wù)器對量子密鑰進行緩存,滿足突發(fā)情況下需要使用大量的量子密鑰的需求。
一種量子網(wǎng)絡(luò)服務(wù)站,包括量子服務(wù)中心,用于與各用戶端通信連接,所述量子網(wǎng)絡(luò)服務(wù)站還設(shè)有:
真隨機數(shù)發(fā)生器,用于產(chǎn)生真隨機數(shù);
用戶側(cè)密鑰管理服務(wù)器,用于將所述真隨機數(shù)在站內(nèi)存儲并寫入用戶專屬設(shè)備以在二者間形成相應(yīng)的用戶側(cè)密鑰,分別用于用戶端與量子服務(wù)中心之間的加密通信。
本實用新型量子網(wǎng)絡(luò)服務(wù)站在與用戶端之間改變了現(xiàn)有量子密鑰的分發(fā)方式,利用真隨機數(shù)發(fā)生器,生成真隨機數(shù),并寫入用戶專屬的量子密鑰卡,供用戶用作密鑰加密數(shù)據(jù)使用。
可選的,所述量子服務(wù)中心還用于通過經(jīng)典網(wǎng)絡(luò)與其他量子網(wǎng)絡(luò)服務(wù)站通信連接;
所述量子網(wǎng)絡(luò)服務(wù)站還設(shè)有量子密鑰控制中心,用于與其他量子網(wǎng)絡(luò)服務(wù)站共享站間量子密鑰供量子服務(wù)中心調(diào)用。
作為優(yōu)選,所述量子密鑰控制中心包括量子密鑰分發(fā)設(shè)備、量子密鑰管理服務(wù)器和量子密鑰存儲服務(wù)器;
所述量子密鑰分發(fā)設(shè)備,用于生成與其他量子網(wǎng)絡(luò)服務(wù)站間的量子密鑰并發(fā)送至量子密鑰管理服務(wù)器;
所述量子密鑰管理服務(wù)器,用于將來自量子密鑰分發(fā)設(shè)備的量子密鑰發(fā)送至量子密鑰存儲服務(wù)器進行存儲;或從密鑰存儲服務(wù)器中調(diào)用量子密鑰發(fā)送至所述量子服務(wù)中心。
量子密鑰管理服務(wù)器與量子服務(wù)中心相互通信連接,量子密鑰分發(fā)設(shè)備和量子密鑰存儲服務(wù)器分別與量子密鑰管理服務(wù)器通信連接。
量子密鑰分發(fā)設(shè)備根據(jù)需要設(shè)置一套或多套,和與其連接的量子服務(wù)站一一對應(yīng)設(shè)置。在實際應(yīng)用時,可以考慮將多套量子密鑰分發(fā)設(shè)備集成為一體。
作為優(yōu)選,所述量子服務(wù)中心包括管理中心服務(wù)器,以及分別與所述管理中心服務(wù)器通信連接處理相應(yīng)業(yè)務(wù)的消息認證服務(wù)器、加解密服務(wù)器、身份認證服務(wù)器和數(shù)字簽名驗證服務(wù)器;
所述管理中心服務(wù)器用于通過經(jīng)典網(wǎng)絡(luò)與各用戶端以及其他量子網(wǎng)絡(luò)服務(wù)站連接,還與所述用戶側(cè)密鑰管理服務(wù)器以及量子密鑰管理服務(wù)器通信連接。
本實用新型還提供一種量子通信網(wǎng)絡(luò),包括配置有用戶端的量子網(wǎng)絡(luò)服務(wù)站,還設(shè)有量子密鑰卡,所述量子網(wǎng)絡(luò)服務(wù)站為本實用新型所述的量子網(wǎng)絡(luò)服務(wù)站,所述量子網(wǎng)絡(luò)服務(wù)站中的用戶側(cè)密鑰管理服務(wù)器以及用戶端均具有與量子密鑰卡相配合的數(shù)據(jù)傳輸接口。
所述量子網(wǎng)絡(luò)服務(wù)站可以布置多個,彼此之間通過經(jīng)典網(wǎng)絡(luò)以及量子網(wǎng)絡(luò)相應(yīng)的進行數(shù)據(jù)和量子密鑰的交互,可依現(xiàn)有技術(shù)增設(shè)必要的中繼設(shè)備等。
作為優(yōu)選,配置在同一量子網(wǎng)絡(luò)服務(wù)站的用戶端之間,通過量子密鑰卡中的用戶側(cè)密鑰進行保密通信。
可以減少量子密鑰分發(fā)設(shè)備產(chǎn)生的量子密鑰的用量,將有限的量子密鑰用于量子網(wǎng)絡(luò)服務(wù)站之間的保密通信。
作為優(yōu)選,不同的量子網(wǎng)絡(luò)服務(wù)站之間通過量子密鑰分發(fā)設(shè)備產(chǎn)生的量子密鑰進行保密通信。
就量子密鑰卡本身而言,可采用現(xiàn)有能夠進行數(shù)據(jù)交互、存儲和處理的電子設(shè)備,例如可以包括CPU、內(nèi)存、存儲器等硬件并配置有操作系統(tǒng)。
可選的,所述量子密鑰卡為USBkey。
可選的,所述量子密鑰卡為可插拔式的板卡,所述用戶側(cè)密鑰管理服務(wù)器以及用戶端均具有相應(yīng)的插接口。
為了滿足突發(fā)情況下使用大量量子密鑰的需求,作為優(yōu)選:
所述量子密鑰管理服務(wù)器按預定的時間間隔檢測量子密鑰存儲服務(wù)器的容量空間;
當檢測到密鑰存儲服務(wù)器仍有容量空間時,量子密鑰管理服務(wù)器向量子密鑰分發(fā)設(shè)備申請量子密鑰;
量子密鑰管理服務(wù)器收到來自量子密鑰分發(fā)設(shè)備的量子密鑰后建立對應(yīng)的索引,再將建立索引的量子密鑰發(fā)送至量子密鑰存儲服務(wù)器中保存。
量子服務(wù)中心可以根據(jù)需要向量子密鑰管理服務(wù)器提交密鑰申請,由于量子密鑰保存在量子密鑰存儲服務(wù)器內(nèi),因此量子密鑰存儲服務(wù)器內(nèi)的量子密鑰余量應(yīng)滿足密鑰申請量。
作為優(yōu)選,量子服務(wù)中心向量子密鑰管理服務(wù)器調(diào)用量子密鑰時,該調(diào)用申請包含量子密鑰用量,量子密鑰管理服務(wù)器判斷量子密鑰存儲服務(wù)器的量子密鑰余量是否大于等于量子密鑰用量,若小于則按預定的時間間隔反復查詢,直至量子密鑰余量大于等于量子密鑰用量時,量子密鑰管理服務(wù)器從量子密鑰存儲服務(wù)器中按需取出建立索引的量子密鑰發(fā)送給量子服務(wù)中心。
作為優(yōu)選,所述調(diào)用申請中包含索引信息,量子密鑰管理服務(wù)器根據(jù)索引信息從量子密鑰存儲服務(wù)器中取出相應(yīng)的量子密鑰發(fā)送給量子服務(wù)中心。
量子密鑰的索引(即編號)在量子密鑰存儲服務(wù)器中具有唯一性,在站間通信時,可識別對應(yīng)的量子網(wǎng)絡(luò)服務(wù)站以及定位具體使用的量子密鑰。
本實用新型有益效果
1)改變了現(xiàn)有技術(shù)中用戶端也需要QKD設(shè)備的接入方式,利用量子密鑰卡解決量子網(wǎng)絡(luò)終端的接入使用與安全的問題;
2)量子網(wǎng)絡(luò)服務(wù)站內(nèi)部可以實現(xiàn)了消息認證、身份認證、數(shù)據(jù)加解密和數(shù)字簽名等多個任務(wù);
3)量子服務(wù)站內(nèi)部設(shè)置量子密鑰存儲服務(wù)器對量子密鑰進行緩存,滿足突發(fā)情況下需要使用大量的量子密鑰的需求;
4)量子服務(wù)站之間的消息傳遞的安全性由量子密鑰及算法保障,防止了消息的非法篡改和竊密。
附圖說明
圖1為本實施例量子網(wǎng)絡(luò)服務(wù)站示意圖;
圖2為本實施例量子服務(wù)中心示意圖;
圖3為本實施例兩個量子網(wǎng)絡(luò)服務(wù)站用戶通信時的示意圖;
圖4為本實施例量子密鑰管理服務(wù)器中量子密鑰申請流程圖;
圖5為發(fā)送數(shù)據(jù)時,量子密鑰管理服務(wù)器的量子密鑰分配流程圖;
圖6為接收數(shù)據(jù)時,量子密鑰管理服務(wù)器的量子密鑰分配流程圖;
圖7為本實施例用于發(fā)送量子密鑰編號的消息認證流程圖;
圖8為本實施例用于接收量子密鑰編號的消息認證流程圖。
具體實施方式
參見圖1、圖2、圖3本實施例一種量子通信網(wǎng)絡(luò)中,量子網(wǎng)絡(luò)服務(wù)站包括量子服務(wù)中心、量子密鑰控制中心、真隨機數(shù)發(fā)生器(本實施例采用量子隨機數(shù)發(fā)生器)以及用戶側(cè)密鑰管理服務(wù)器。
其中量子密鑰控制中心包括:量子密鑰分發(fā)設(shè)備;量子密鑰管理服務(wù)器和量子密鑰存儲服務(wù)器。
其中量子服務(wù)中心包括:管理中心服務(wù)器;消息認證服務(wù)器;加解密服務(wù)器;身份認證服務(wù)器和數(shù)字簽名驗證服務(wù)器。
量子密鑰分發(fā)設(shè)備用于接收量子密鑰管理服務(wù)器提出的申請密鑰請求,生成量子密鑰Qk(以下也可記為Qk),并發(fā)送給量子密鑰管理服務(wù)器。
量子密鑰管理服務(wù)器實時向量子密鑰分發(fā)設(shè)備申請量子密鑰Qk,將量子密鑰做好編號,即量子密鑰編號QID(以下也可記為QID),發(fā)送到量子密鑰存儲服務(wù)器中,同時可以接收量子服務(wù)中心提出的申請密鑰請求,從量子密鑰存儲服務(wù)器中取出量子密鑰Qk或量子密鑰編號QID,發(fā)送給量子服務(wù)中心。
量子密鑰存儲服務(wù)器用于存儲量子密鑰分發(fā)設(shè)備產(chǎn)生的量子密鑰Qk和量子密鑰編號QID。
初始時,需要先預制兩段與量子通信網(wǎng)絡(luò)內(nèi)其它量子網(wǎng)絡(luò)服務(wù)站兩兩相同的密鑰存于其中,如圖3所示,量子網(wǎng)絡(luò)服務(wù)站A內(nèi)部的量子密鑰服務(wù)器、量子網(wǎng)絡(luò)服務(wù)站B內(nèi)部的量子密鑰服務(wù)器都預存有密鑰K_m1、密鑰K_m2(以下也可分別記為K_m1、和K_m2),用于首次消息認證時使用。
量子隨機數(shù)發(fā)生器用于接收用戶側(cè)密鑰管理服務(wù)器提出的申請密鑰請求,生成量子隨機數(shù),并發(fā)送給用戶側(cè)密鑰管理服務(wù)器;此處采用的為真隨機數(shù)。
用戶側(cè)密鑰管理服務(wù)器,用于分發(fā)所述量子隨機數(shù),在站內(nèi)存儲并寫入量子密鑰卡以在二者間形成用戶側(cè)密鑰;站內(nèi)存儲的用戶側(cè)密鑰供量子服務(wù)中心調(diào)用。所述用戶側(cè)密鑰管理服務(wù)器具有接入量子密鑰卡功能,實現(xiàn)的發(fā)卡、登記、拷貝密鑰功能,并具有根據(jù)種子密鑰,按指定算法生成的新的密鑰功能。
量子服務(wù)中心內(nèi)設(shè)置有管理中心服務(wù)器、消息認證服務(wù)器、加解密服務(wù)器、身份認證服務(wù)器、數(shù)字簽名驗證服務(wù)器。管理中心服務(wù)器用于和外部的用戶側(cè)密鑰管理服務(wù)器、量子密鑰管理服務(wù)器、經(jīng)典網(wǎng)絡(luò)和用戶端之間進行數(shù)據(jù)交互,將相應(yīng)的數(shù)據(jù)輸入的到量子服務(wù)中心內(nèi)部的消息認證服務(wù)器、加解密服務(wù)器、身份認證服務(wù)器、數(shù)字簽名服務(wù)器,或者將量子服務(wù)中心內(nèi)部的數(shù)據(jù)輸出到外部的量子密鑰管理服務(wù)器、經(jīng)典網(wǎng)絡(luò)等。
身份認證服務(wù)器根據(jù)用戶接入量子密鑰卡的不同,根據(jù)從用戶側(cè)密鑰管理服務(wù)器中提取用戶側(cè)密鑰QR,把從用戶端傳輸過來加密的身份信息進行解密成明文形式的身份信息ID',并將解密的身份信息ID'與預存的身份信息ID比較是否相同,如果相同則驗證成功,允許用戶進入其登錄的系統(tǒng),否則驗證失敗,不允許用戶登錄其所要登錄的系統(tǒng)。
消息認證服務(wù)器具有加解密量子密鑰編號QID的功能,從量子密鑰管理服務(wù)器獲取傳輸數(shù)據(jù)所需的量子密鑰Qk的量子密鑰編號QID和根據(jù)消息認證密鑰編號QID_m1、消息認證密鑰編號QID_m2(以下也可分別記為QID_m1、QID_m2)獲取密鑰消息認證所使用的消息認證密鑰QK_m1、消息認證密鑰QK_m2(以下也可分別記為QK_m1、QK_m2),這里消息認證密鑰編號QID_m1、QID_m2是量子密鑰編號QID的子集,QK_m1、QK_m2為Qk的子集,首次消息認證時不需要編號,自動獲取的是預存的密鑰K_m1、K_m2。將量子密鑰信息的量子密鑰編號QID、下次消息認證的消息認證密鑰編號QID_m1、QID_m2加密后通過經(jīng)典網(wǎng)絡(luò)發(fā)送給接收方,或從經(jīng)典網(wǎng)絡(luò)中接收加密的量子秘鑰編號并生成解密的量子密鑰編號QID',消息認證密鑰編號QID_m1',消息認證密鑰編號QID_m2'(以下也可分別記為QID',QID_m1',QID_m2'),驗證消息來源的正確性和完整性。在出廠前,需要與量子通信網(wǎng)絡(luò)內(nèi)其它量子網(wǎng)絡(luò)服務(wù)站共享同一種消息認證碼生成算法,用于生成共同的消息認證碼。
加解密服務(wù)器根據(jù)需求從量子密鑰管理服務(wù)器或用戶側(cè)密鑰管理服務(wù)器獲取密鑰,將從用戶端或經(jīng)典網(wǎng)絡(luò)傳輸過來的加密信息解密,或把需要傳輸給用戶端或經(jīng)典網(wǎng)絡(luò)的數(shù)據(jù)加密。
數(shù)字簽名服務(wù)器根據(jù)需求從量子密鑰管理服務(wù)器或用戶側(cè)密鑰管理服務(wù)器獲取密鑰,生成用戶端數(shù)字簽名信息,發(fā)送給接收方;或接收數(shù)字簽名信息,進行數(shù)字簽名驗證。
用戶與量子網(wǎng)絡(luò)服務(wù)站內(nèi)的量子服務(wù)中心連接,連接方式可以是固定網(wǎng)絡(luò)、也可以是移動網(wǎng)絡(luò),對應(yīng)的用戶可以是固定網(wǎng)絡(luò)用戶、也可以是移動網(wǎng)絡(luò)用戶。
每個量子服務(wù)站之間通過量子網(wǎng)絡(luò)和經(jīng)典網(wǎng)絡(luò)連接,量子網(wǎng)絡(luò)用于量子網(wǎng)絡(luò)服務(wù)站內(nèi)的量子密鑰分發(fā)設(shè)備連接,傳輸?shù)氖橇孔有盘枺瑢崿F(xiàn)雙方產(chǎn)生相同的量子密鑰,經(jīng)典網(wǎng)絡(luò)用于量子網(wǎng)絡(luò)服務(wù)站內(nèi)的量子服務(wù)中心的連接,傳輸?shù)某孔有盘栆酝獾乃械慕?jīng)典信號;
用戶在保密通信前首先需要向量子網(wǎng)絡(luò)服務(wù)站申請一個量子密鑰卡,以USBKey為例,量子密鑰卡接入量子網(wǎng)絡(luò)服務(wù)站內(nèi)用戶側(cè)密鑰管理服務(wù)器,用戶側(cè)密鑰管理服務(wù)器向量子隨機數(shù)發(fā)生器申請一定量的量子隨機數(shù),并分發(fā)所述量子隨機數(shù),在站內(nèi)存儲并寫入量子密鑰卡以在二者間形成用戶側(cè)密鑰;用戶拿到量子密鑰卡后,將量子密鑰卡接入用戶端設(shè)備中使用。
使用時用戶端將待加解密數(shù)據(jù)發(fā)送到量子密鑰卡,量子密鑰卡利用用戶側(cè)密鑰將數(shù)據(jù)加解密后送回到用戶端。
當用戶側(cè)密鑰多次使用后,可以將當前的用戶側(cè)密鑰作為種子密鑰,USBKey通過與用戶側(cè)密鑰管理服務(wù)器預先共享的算法生成新的用戶側(cè)密鑰,實現(xiàn)用戶側(cè)密鑰的更新。
同一個量子網(wǎng)絡(luò)服務(wù)站下面的用戶構(gòu)成一個局域網(wǎng),局域網(wǎng)內(nèi)的保密通信所使用的密鑰為量子隨機數(shù)發(fā)生器產(chǎn)生的用戶側(cè)密鑰或通過算法更新后的用戶側(cè)密鑰,減少了量子密鑰分發(fā)設(shè)備產(chǎn)生的量子密鑰的用量,將有限的量子密鑰用于量子網(wǎng)絡(luò)服務(wù)站之間的保密通信。
由于量子密鑰分發(fā)設(shè)備的成碼率有限,通常情況下比經(jīng)典網(wǎng)絡(luò)通信速率要低很多,特別當有突發(fā)情況需要短時間傳輸大量數(shù)據(jù)時,量子密鑰分發(fā)設(shè)備的成碼率遠遠滿足不了系統(tǒng)的加密應(yīng)用。本專利設(shè)置了量子密鑰存儲服務(wù)器,只要當發(fā)現(xiàn)量子密鑰存儲服務(wù)器的存儲空間未滿時,就進行向量子密鑰分發(fā)設(shè)備申請密鑰,然后對量子密鑰分發(fā)設(shè)備產(chǎn)生的量子密鑰進行編號、緩存,用于滿足突發(fā)情況下使用大量量子密鑰的需求。本實施例分別描述了量子密鑰管理服務(wù)器中量子密鑰申請流程;發(fā)送數(shù)據(jù)時,量子密鑰管理服務(wù)器的量子密鑰分配流程;接收數(shù)據(jù)時,量子密鑰管理服務(wù)器的量子密鑰分配流程。參見圖4,本實施例中量子密鑰管理服務(wù)器中量子密鑰申請流程如下:
步驟一、量子密鑰管理服務(wù)器檢測量子密鑰存儲服務(wù)器的容量空間是否已經(jīng)存滿,當已容量空間已經(jīng)存滿時,則進入等待流程等待時間T,然后再次判斷容量是否已經(jīng)存滿,直到容量有空;
步驟二、當檢測到密鑰存儲服務(wù)器的容量空間有空時,量子密鑰管理服務(wù)器向量子密鑰分發(fā)設(shè)備申請密鑰,量子密鑰分發(fā)設(shè)備收到密鑰申請后,生成量子密鑰Qk,并發(fā)送給量子密鑰管理服務(wù)器;
步驟三、量子密鑰管理服務(wù)器收到量子密鑰后,將量子密鑰按照數(shù)據(jù)大小分組,例如每1K數(shù)據(jù)做為一組,并給每組量子密鑰編一個編號即量子密鑰編號QID,QID在量子密鑰存儲服務(wù)器中具有唯一性,將量子密鑰Qk和量子密鑰編號QID一起發(fā)送至量子密鑰存儲服務(wù)器中保存。
參見圖5,發(fā)送數(shù)據(jù)時,量子密鑰管理服務(wù)器的量子密鑰分配流程如下:
步驟一:量子服務(wù)中心向量子密鑰管理服務(wù)器提交密鑰申請,申請信息包含量子密鑰用量,量子密鑰管理服務(wù)器接收到申請后,判斷量子密鑰存儲服務(wù)器內(nèi)的密鑰量是否夠用,當密鑰量不夠用時,進入則進入等待流程等待時間T,然后再次判斷密鑰量是否夠用,當密鑰量不夠時再次進入等待時間,直到密鑰量夠用;
步驟二:當密鑰量夠用時,量子密鑰管理服務(wù)器從量子密鑰存儲服務(wù)器中取出量子密鑰Qk和相應(yīng)的QID,一起發(fā)送給量子服務(wù)中心。
參見圖6,接收數(shù)據(jù)時,量子密鑰管理服務(wù)器的量子密鑰分配流程如下:
步驟一:量子服務(wù)中心向量子密鑰管理服務(wù)器提交密鑰申請,申請內(nèi)容包含量子密鑰編號QID;
步驟二:量子密鑰管理服務(wù)器根據(jù)QID從量子密鑰存儲服務(wù)器中取出量子密鑰Qk,發(fā)送給量子服務(wù)中心。
本實用新型中消息認證服務(wù)器可以實現(xiàn)不同量子網(wǎng)絡(luò)服務(wù)站的用戶之間的消息認證,也可以實現(xiàn)不同量子網(wǎng)絡(luò)服務(wù)站自身的消息認證,實現(xiàn)驗證消息來源的正確性、確認消息完整性等功能,防止了對消息的非法篡改和竊取。本實施例以發(fā)送和驗證量子密鑰編號QID為例,敘述了用于發(fā)送量子密鑰編號的消息認證流程、用于接收量子密鑰編號的消息認證流程。
參見圖7,本實施例中用于發(fā)送量子密鑰編號的消息認證流程如下:
步驟一:消息認證服務(wù)器信息提?。合⒄J證服務(wù)器接收從量子密鑰管理服務(wù)器發(fā)過來的數(shù)據(jù),從中提取數(shù)據(jù)傳輸所用的量子密鑰編號QID、以及下次消息認證時生成消息認證碼(MAC)所需要的QID_m1,和下次消息認證時生成加密數(shù)據(jù)所需要的QID_m2;
步驟二:提取消息認證密鑰:判斷是否為第一次進行消息認證,如果是第一次進行消息認證,則消息認證服務(wù)器通知量子密鑰管理服務(wù)器將量子密鑰存儲服務(wù)器中預存的密鑰K_m1、密鑰K_m2發(fā)送給消息認證服務(wù)器;如果不是第一次進行消息認證,則消息認證服務(wù)器向量子密鑰管理服務(wù)器發(fā)送上一次消息認證后約定的QID_m1、QID_m2,量子密鑰管理服務(wù)器根據(jù)QID_m1、QID_m2從量子密鑰存儲服務(wù)中提取QK_m1、QK_m2發(fā)送給消息認證服務(wù)器;
步驟三:生成消息認證碼:消息認證服務(wù)器利用預先設(shè)定的消息認證碼算法和K_m1或QK_m1生成消息認證碼(MAC),以QK_m1為例,消息認證碼生成如下:
QID的消息認證碼MAC1=C(QK_m1,QID);
QID_m1的消息認證碼MAC2=C(QK_m1,QID_m1);
QID_m2的消息認證碼MAC3=C(QK_m1,QID_m2);
C指消息認證碼生成算法。
步驟四:生成加密數(shù)據(jù):生成帶MAC的原始認證數(shù)據(jù)分別為M1=(QID、MAC1)、M2=(QID_m1、MAC2)、M3=(QID_m2、MAC3),采用K_m2或QK_m2對原始消息認證數(shù)據(jù)進行進一步加密,以QK_m2為例:
對QID的原始消息認證數(shù)據(jù)進行進一步異或加密得到加密后的QID消息認證數(shù)據(jù)M1k=M1⊕QK_m2;
對QID_m1的原始消息認證數(shù)據(jù)進行進一步加密得到加密后的QID_m1消息認證數(shù)據(jù)M2k=M2⊕QK_m2;
對QID_m2的原始消息認證數(shù)據(jù)進行進一步加密得到加密后的QID_m2消息認證數(shù)據(jù)M3k=M3⊕QK_m2;
步驟五:生成完整的加密消息認證數(shù)據(jù)和發(fā)送:消息認證服務(wù)器將QID加密后的消息認證數(shù)據(jù)M1k、QID_m1加密后的消息認證數(shù)據(jù)M2k、QID_m2加密后的消息認證數(shù)據(jù)M3k組合在一起形成消息認證數(shù)據(jù)M=(M1k、M2k、M3k),并通過經(jīng)典網(wǎng)絡(luò)發(fā)送。
參見圖8,本實施例中用于接收量子密鑰編號的消息認證流程如下:
步驟一:接收并解析信息:消息認證服務(wù)器接收從經(jīng)典網(wǎng)絡(luò)發(fā)送過來的數(shù)據(jù)M,從中解析出QID加密后的消息認證數(shù)據(jù)M1k'、QID_m1加密后的消息認證數(shù)據(jù)M2k'、QID_m2加密后的消息認證數(shù)據(jù)M3k';
步驟二:提取消息認證密鑰:判斷是否是第一次進行消息認證,如果是第一次進行消息認證,則消息認證服務(wù)器通知量子密鑰管理服務(wù)器將量子密鑰存儲服務(wù)器中預設(shè)的密鑰K_m1、K_m2發(fā)送給消息認證服務(wù)器;如果不是第一次進行消息認證,則消息認證服務(wù)器向量子密鑰管理服務(wù)器發(fā)送上一次消息認證后約定的QID_m1、QID_m2,量子密鑰管理服務(wù)器根據(jù)QID_m1、QID_m2從量子密鑰數(shù)據(jù)庫中提取QK_m1、QK_m2發(fā)送給消息認證服務(wù)器;
步驟三:消息數(shù)據(jù)解密:消息認證服務(wù)器利用K_m2或QK_m2解密M1k'、M2k'、M3k',得到原始消息認證數(shù)據(jù)M1'、M2'、M3',解密過程為異或的逆運算。以QK_m2為例,解密過程為M1'=M1k'⊕QK_m2、M2'=M2k'⊕QK_m2、M3'=M3k'⊕QK_m2;
步驟四:消息數(shù)據(jù)解析:
消息認證服務(wù)器從原始消息認證數(shù)據(jù)M1'解析出數(shù)據(jù)傳輸所用的密鑰編號QID'、消息認證碼MAC1';
從原始消息認證文件M2'解析出數(shù)據(jù)傳輸所用的密鑰編號QID_m1'、消息認證碼MAC2',
從原始消息認證文件M3'解析出數(shù)據(jù)傳輸所用的密鑰編號QID_m2'、消息認證碼MAC3';
步驟五:生成消息認證碼:消息認證服務(wù)器利用預先設(shè)定的消息認證碼算法和K_m1或QK_m1生成消息認證碼(MAC),以QK_m1為例,QID'的消息認證碼MAC1'=C(QK_m1,QID'),QID_m1'的消息認證碼MAC2'=C(QK_m1,QID_m1'),QID_m2'的消息認證碼MAC3'=C(QK_m1,QID_m1');
步驟六:消息認證碼檢驗:比較MAC1與MAC1'是否相等、比較MAC2與MAC2'是否相等、比較MAC3與MAC3'是否相等,根據(jù)原理,雙方所采用的MAC生成算法和QK_m1、QK_m2是一樣的,當采用的數(shù)據(jù)QID與QID'一樣時,得到的消息認證碼也是一樣的,即當QID與QID'相等時,MAC1與MAC1'相等,表示消息認證成功;當數(shù)據(jù)在傳輸過程中被篡改或數(shù)據(jù)來源不對時,MAC1與MAC1'不相等,表示消息認證失?。煌砜梢詸z驗QID_m1與QID m1'、QID m2與QID m2'的消息認證是否成功;
步驟七:發(fā)送檢驗結(jié)果:向發(fā)送方發(fā)送消息認證成功或失敗的消息,當消息認證成功時,雙方消息認證服務(wù)器更新QID_m1、QID_m2,用于下次消息認證;當消息認證失敗時,雙方消息認證服務(wù)器不更新QID_m1、QID_m2。