專利名稱:一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明是一種身份認(rèn)證系統(tǒng),具體地說(shuō)是對(duì)基于總線型拓?fù)浣Y(jié)構(gòu)的設(shè)備,通過(guò)交換公鑰 來(lái)進(jìn)行身份認(rèn)證的系統(tǒng)。
背景技術(shù):
在各種信息傳送系統(tǒng)中,為了保證參與信息交換的實(shí)體是合法的、有效的,需要對(duì)參與 實(shí)體的身份進(jìn)行認(rèn)證。例如在軍事通信中需要確認(rèn)對(duì)方身份,以防止軍事情報(bào)信息的泄露; 在電子商務(wù)等互聯(lián)網(wǎng)環(huán)境中,需要對(duì)對(duì)方的身份進(jìn)行鑒別;在智能卡等應(yīng)用環(huán)境中,需要對(duì) 接入設(shè)備的合法有效性進(jìn)行認(rèn)證;在知識(shí)產(chǎn)權(quán)領(lǐng)域,需要通過(guò)對(duì)知識(shí)產(chǎn)權(quán)內(nèi)容進(jìn)行加密、簽 名等手段保證不被非法竊取。通常在通信雙方進(jìn)行傳輸加密的數(shù)據(jù)之前,要對(duì)設(shè)備進(jìn)行身份 認(rèn)證以保證通信雙方的身份都是真實(shí)的、合法有效的。如果認(rèn)證不能獲得成功,則不進(jìn)行數(shù) 據(jù)傳輸或者不能對(duì)加密的數(shù)據(jù)進(jìn)行正確的解密,以讓受保護(hù)的數(shù)據(jù)信息不受非法侵害。數(shù)據(jù) 內(nèi)容在設(shè)備間的傳輸一般分為兩種方式單播方式和廣播方式。單播方式可以由樹狀拓?fù)浣Y(jié) 構(gòu)形成(詳見(jiàn)圖1),而廣播方式可以由總線型拓?fù)浣Y(jié)構(gòu)形成。不管是單播還是廣播傳輸方式, 在通信雙方進(jìn)行傳輸加密的數(shù)據(jù)之前,通常要對(duì)設(shè)備進(jìn)行認(rèn)證以保證通信雙方的身份都是真 實(shí)的、合法有效的。如果認(rèn)證不能獲得成功,則不進(jìn)行數(shù)據(jù)傳輸或者不能對(duì)加密的數(shù)據(jù)進(jìn)行 正確的解密,以達(dá)到保護(hù)數(shù)字內(nèi)容不受非法侵害的目的。以單播方式傳輸時(shí),認(rèn)證和傳輸通 常是在兩個(gè)接口 (或者設(shè)備)之間進(jìn)行傳送的,解密之前傳輸?shù)臄?shù)據(jù)是不同的;而廣播方式 時(shí), 一個(gè)發(fā)送設(shè)備要同多個(gè)設(shè)備進(jìn)行認(rèn)證,內(nèi)容要在總線上進(jìn)行傳輸,所有接收端接收的數(shù) 據(jù)在解密前后都是一致的。發(fā)送設(shè)備用一個(gè)密鑰加密,再由多個(gè)設(shè)備用同一個(gè)密鑰進(jìn)行解密, 解密密鑰要在不安全的信道上傳輸,就需要有一種安全的傳輸機(jī)制來(lái)保證解密密鑰的安全。
1976年Diffie和hellman在"密碼學(xué)的新方向"提出了公鑰密碼的思想,開創(chuàng)了公鑰密 碼學(xué)的新紀(jì)元。公鑰密碼體制中的DH密鑰交換可以有效地解決共享密鑰的產(chǎn)生問(wèn)題,克服 了對(duì)稱密碼系統(tǒng)的不足。通信雙方通過(guò)交換一個(gè)參數(shù)值,雙方就可以產(chǎn)生一個(gè)相同的共享密 鑰。公鑰密碼體制不僅可以對(duì)數(shù)據(jù)進(jìn)行加解密,而且還可以用于進(jìn)行系統(tǒng)的合法性認(rèn)證、數(shù) 字簽名等。通過(guò)對(duì)比密鑰交換中產(chǎn)生的共享密鑰的一致性,就可以對(duì)設(shè)備的合法性進(jìn)行認(rèn)證。
本發(fā)明提出了一種嶄新的認(rèn)證思路,在廣播信道上不僅提供了系統(tǒng)的身份認(rèn)證功能,而 且能夠安全地傳輸數(shù)字內(nèi)容解密密鑰。非法的設(shè)備既不能通過(guò)正確身份認(rèn)證過(guò)程,也不能正 確解密受保護(hù)的數(shù)字內(nèi)容。實(shí)現(xiàn)時(shí)由第三方權(quán)威信任機(jī)構(gòu)通過(guò)一定的算法產(chǎn)生公私鑰對(duì),該 算法要保證任意兩個(gè)設(shè)備交換公鑰后與私鑰相運(yùn)算出的值是相等的,這個(gè)值就是共享密鑰。 發(fā)送設(shè)備同需要認(rèn)證的接收設(shè)備交換各自的公鑰,然后雙方通過(guò)相同的算法計(jì)算出共享密鑰。 雙方交換的是設(shè)備公鑰和加密后的數(shù)字內(nèi)容加解密密鑰,公鑰本來(lái)就是公開的,所以沒(méi)有保 密性可言;而加解密密鑰需要用產(chǎn)生的共享密鑰來(lái)解密,每個(gè)接收設(shè)備同發(fā)送設(shè)備產(chǎn)生的共享密鑰既不相同,也不能由公鑰推算出來(lái)就,同時(shí)也不在信道上進(jìn)行傳輸,因此該加解密密 鑰的傳輸是安全的。
發(fā)明內(nèi)容
本方法的目的是解決基于總線型的拓?fù)浣Y(jié)構(gòu)中, 一個(gè)發(fā)送設(shè)備同多個(gè)接收設(shè)備之間的設(shè) 備合法性認(rèn)證、加解密密鑰的安全傳輸?shù)葐?wèn)題。該發(fā)明的核心問(wèn)題是如何保證雙方設(shè)備的合 法性以及加解密密鑰的安全傳輸,設(shè)備合法性是基于能夠產(chǎn)生相同的共享密鑰,加密密鑰的 安全傳輸是基于共享密鑰的保密性。
假設(shè)在一個(gè)總線型拓?fù)浣Y(jié)構(gòu)中有發(fā)送設(shè)備A和接收設(shè)備i (iEl,2,...,N),它們之間的身
份認(rèn)證過(guò)程如下(詳見(jiàn)圖2):
1、 當(dāng)整個(gè)傳輸系統(tǒng)有認(rèn)證需求時(shí),發(fā)送設(shè)備與每一個(gè)接收設(shè)備都要進(jìn)行身份認(rèn)證,發(fā) 送設(shè)備與多個(gè)接收設(shè)備進(jìn)行認(rèn)證的先后順序可以按照一定的優(yōu)先級(jí)或者算法進(jìn)行。
2、 認(rèn)證開始,收發(fā)設(shè)備雙方交換自己的公鑰PA與P,。
3、 發(fā)送設(shè)備A用接收設(shè)備i的公鑰P,與自己的私鑰SA按照一定的算法進(jìn)行運(yùn)算,得 到一個(gè)共享密鑰Pkey,;同樣,接收設(shè)備i用發(fā)送設(shè)備A的公鑰PA與自己的私鑰S'按 照同樣的算法進(jìn)行運(yùn)算,得到一個(gè)共享密鑰Pkey2。
4、 發(fā)送設(shè)備A用共享密鑰Pkey,將數(shù)字內(nèi)容的解密密鑰Key!(每一個(gè)接收設(shè)備最后得 到的解密密鑰是相同的)和一個(gè)校驗(yàn)碼(用于檢測(cè)傳輸過(guò)程中是否有誤碼產(chǎn)生)加密 為M,并發(fā)送給接收設(shè)備i。
5、 接收設(shè)備i利用共享密鑰Pkey2對(duì)M進(jìn)行解密得出Key2,如果共享密鑰Pkey2與Pkeyl 相同,則可得出解密密鑰Key2^Key,;如果共享密鑰Pkey2與Pkeyl不同,則得出的解 密密鑰Key^Key!。
6、 如果解密出的Key2二Keyp則接收設(shè)備可以正確解密出數(shù)字內(nèi)容,同時(shí)也說(shuō)明雙方 設(shè)備都是合法的。如果Key^Ke力,則說(shuō)明在收發(fā)設(shè)備雙方中至少有一個(gè)非法設(shè)備, 數(shù)字內(nèi)容也就無(wú)法正確傳送。
在以上的身份認(rèn)證過(guò)程中,發(fā)送設(shè)備A要分別同每個(gè)接收設(shè)備i進(jìn)行公鑰交換,從而產(chǎn) 生N個(gè)不同的共享密鑰。發(fā)送設(shè)備A要分別用這N個(gè)共享密鑰加密數(shù)字內(nèi)容的加解密密鑰, 傳送給相應(yīng)的接收設(shè)備。最終每個(gè)接收設(shè)備所得到的解密密鑰是相同的,因?yàn)榘l(fā)送設(shè)備只能 用一個(gè)加密密鑰加密數(shù)字內(nèi)容,接收設(shè)備也必須用相同的解密密鑰來(lái)解密數(shù)字內(nèi)容。收發(fā)設(shè) 備雙方能夠計(jì)算出相同的共享密鑰是關(guān)鍵問(wèn)題,這不僅證明雙方設(shè)備的合法性,同時(shí)又可以 用來(lái)傳送數(shù)字內(nèi)容的加解密密鑰。
數(shù)字內(nèi)容傳送過(guò)程中新接入的接收設(shè)備,也可以按照以上流程進(jìn)行身份認(rèn)證和解密密鑰 的傳送。任何一個(gè)非法設(shè)備的存在,不會(huì)影響其他合法設(shè)備的正常接收與解密,只是非法設(shè) 備不能正確解密受保護(hù)的數(shù)字內(nèi)容。
圖l是本發(fā)明的基于總線型的拓?fù)浣Y(jié)構(gòu)
圖2是本發(fā)明的基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證過(guò)程
具體實(shí)施例方式
具體操作實(shí)現(xiàn)時(shí),該算法的所有參數(shù)均由可信任的第三方權(quán)威機(jī)構(gòu)確定。把一部分參數(shù) 公開,而另一部分參數(shù)嚴(yán)格保密,并把相應(yīng)的參數(shù)設(shè)置到發(fā)送設(shè)備和N個(gè)接收設(shè)備中去。為 簡(jiǎn)便起見(jiàn),本實(shí)施例選用了NIST所推薦的素?cái)?shù)域上的P-192橢圓曲線和一些簡(jiǎn)單參數(shù)。 首先由權(quán)威信任機(jī)構(gòu)選定橢圓曲線參數(shù)(p, a, b, G, n, h)等 其中需要公開的參數(shù)為
橢圓曲線方程y"二x3—ax—b
p=2192_264—i
a=_3 (modp) =p—3=2192_264—22
b=0x 64210519 E59C80E7 0FA7E9AB 72243049 FEB8DEEC C146B9B1
需要嚴(yán)格保密的參數(shù)為
Gx=0x 188DA80E B030卯F6 7CBF20EB 43A18800 F4FF0AFD 82FF1012 Gy=0x 07192B95 FFC8DA78 631011ED 6B24CDD5 73F977A1 1E794811 n=0x FFFFFFFF FFFFFFFF FFFFFFFF 99DEF836 146BC9B1 B4D22831 h=l
基點(diǎn)G應(yīng)該由權(quán)威信任機(jī)構(gòu)選取并嚴(yán)格保密,此處為簡(jiǎn)單起見(jiàn)而選取NIST所推薦的 基點(diǎn)參數(shù)G。
然后由權(quán)威信任機(jī)構(gòu)為發(fā)送設(shè)備和N個(gè)接收設(shè)備選取N+1個(gè)可公開的設(shè)備公鑰PA, P2、 ...、 PN,且Pa, P卜P2、 ...、 PNe[l, V^T],為了計(jì)算簡(jiǎn)單此處取值為PA二P產(chǎn)1。計(jì)
算標(biāo)量乘PAG、 RG如下
PAGx=0x 188DA80E B03090F6 7CBF20EB 43A18800 F4FF0AFD 82FF1012 PAGy=0x 07192B95 FFC8DA78 631011ED 6B24CDD5 73F977A1 1E794811 P,Gx=0x 188DA80E B03090F6 7CBF20EB 43Al8800 F4FF0AFD 82FF1012 P,Gy=0x 07192B95 FFC8DA78 631011ED 6B24CDD5 73F977A1 1E794811 將標(biāo)量乘PAG和P,G作為設(shè)備的私鑰,分配如下公私鑰對(duì)Pa和PaG分配給發(fā)送設(shè)備A,
公私鑰對(duì)P,和P,G分配給接收設(shè)備i。其中,私鑰PAG和P,G嚴(yán)格保密。身份認(rèn)證過(guò)程如下:
1、 發(fā)送設(shè)備A發(fā)送PA=1給接收設(shè)備i,接收設(shè)備i發(fā)送P產(chǎn)l給發(fā)送設(shè)備A。在PA與
P,值的位寬選擇上,因?yàn)镻A、 Pf[l, V^T],所以可以選擇為96比特。
2、 發(fā)送設(shè)備A計(jì)算標(biāo)量乘P「PAG得到共享密鑰Pkeyl;接收設(shè)備i計(jì)算標(biāo)量乘PrPAG, 得到共享密鑰Pk^。計(jì)算結(jié)果如下
5Pkeyix=0x 188DA80E B030卯F6 7CBF20EB 43A18800 F4FF0AFD 82FF1012 Pkeyly=Ox 07192B95 FFC8DA78 631011ED 6B24CDD5 73F977A1 1E794811 Pkey2x=0x 188DA80E B03090F6 7CBF20EB 43A18800 F4FF0AFD 82FF1012 Pkey2y=0x 07192B95 FFC8DA78 631011ED 6B24CDD5 73F977A1 1E794811
3、 發(fā)送設(shè)備A以Pkeyl為密鑰,利用ECC或RSA等算法將加解密密鑰Keyl和固定校 驗(yàn)字"0x5FA8D30B"轉(zhuǎn)換為密文M,并發(fā)送給接收設(shè)備i。
4、 接收設(shè)備i利用共享密鑰Pkey2解密密文M,從解密后的明文中提取出固定校驗(yàn)字,
看其是否為"0x5FA8D30B",若是則提取出加解密密鑰K^;若不是則不能提取出正確 的解密密鑰Key2。
5、 如果解密出的加解密密鑰Key2與發(fā)端的加解密密鑰Keyl是相同的,那么說(shuō)明身份認(rèn) 證成功,雙方設(shè)備都是合法的。在數(shù)字內(nèi)容傳輸過(guò)程中就可以用解密密鑰Key2正確解 碼出接收設(shè)備i的數(shù)字內(nèi)容。
如果解密出的加解密密鑰K^y2與發(fā)端的加解密密鑰K^是不相同的,那么說(shuō)明身份認(rèn)證
不成功,數(shù)字內(nèi)容不能在收發(fā)雙方間正確的傳送。 一個(gè)非法的接收設(shè)備不會(huì)影響其他合法設(shè)
備的正常接收與解碼;但是,非法的發(fā)送設(shè)備將使整個(gè)總線型拓?fù)渚W(wǎng)絡(luò)無(wú)法正常的工作。
權(quán)利要求
1、一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng)。其特征是利用DH密鑰交換和數(shù)字信封等技術(shù)手段實(shí)現(xiàn)收發(fā)設(shè)備雙方的身份認(rèn)證以及數(shù)據(jù)加解密密鑰的安全傳輸。收發(fā)設(shè)備通過(guò)交換設(shè)備公鑰來(lái)產(chǎn)生一個(gè)共享密鑰,發(fā)送設(shè)備利用共享密鑰加密數(shù)據(jù)解密密鑰,接收設(shè)備利用共享密鑰解密出數(shù)據(jù)解密密鑰。
2、 根據(jù)權(quán)利要求1所述的一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),其特征是若收發(fā) 設(shè)備都是合法的,則接收設(shè)備可以利用此解密密鑰正確地進(jìn)行解密數(shù)據(jù);否則,任何一個(gè)非 法的設(shè)備將導(dǎo)致不能正常進(jìn)行數(shù)據(jù)的加解密。
3、 根據(jù)權(quán)利要求2所述的一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),其特征是收發(fā)設(shè) 備的公私鑰對(duì)是預(yù)置的,利用自己的私鑰和對(duì)方設(shè)備的公約生成一個(gè)共享密鑰;如果收發(fā)設(shè) 備都是合法的,則雙方生成的共享密鑰是相同的,這是由公私鑰對(duì)的生成算法保證的。
4、 根據(jù)權(quán)利要求3所述的一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),其特征是身份認(rèn) 證的觸發(fā)是當(dāng)接收設(shè)備接入系統(tǒng)或者接收設(shè)備無(wú)法正確進(jìn)行解密時(shí),由接收設(shè)備觸發(fā)的。
5、 根據(jù)權(quán)利要求4所述的一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),其特征是只有每 一個(gè)接收設(shè)備都同發(fā)送設(shè)備成功進(jìn)行身份認(rèn)證以后,才可以正常進(jìn)行加解密;每個(gè)接收設(shè)備與發(fā)送設(shè)備認(rèn)證所產(chǎn)生的共享密鑰是不同的。
6、 根據(jù)權(quán)利要求5所述的一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),其特征是發(fā)送設(shè)備在對(duì)解密密鑰進(jìn)行加密前,可以在解密密鑰后附加一個(gè)校驗(yàn)碼,用于接收設(shè)備對(duì)解密出的 解密密鑰進(jìn)行數(shù)據(jù)校驗(yàn)。
7、 根據(jù)權(quán)利要求6所述的一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),其特征是雙方設(shè)備的合法性是通過(guò)間接的形式進(jìn)行驗(yàn)證的,即通過(guò)接收設(shè)備是否能夠正確解密數(shù)據(jù)來(lái)判斷設(shè) 備雙方是否都是合法的。
8、 根據(jù)權(quán)利要求7所述的一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),其特征是接收設(shè)備可以在任何時(shí)間發(fā)起同發(fā)送設(shè)備的身份認(rèn)證,其他接收設(shè)備能夠正常進(jìn)行工作。
9、 根據(jù)權(quán)利要求8所述的一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),其特征是發(fā)送設(shè)備發(fā)送給每一個(gè)接收設(shè)備的解密密鑰都是相同的,在數(shù)據(jù)加密傳輸前,該解密密鑰是由發(fā)送 設(shè)備根據(jù)一定的算法產(chǎn)生的,它每次都是不同的。
全文摘要
本發(fā)明公開了一種基于總線型拓?fù)浣Y(jié)構(gòu)的身份認(rèn)證系統(tǒng),利用DH交換和數(shù)字信封等技術(shù)手段實(shí)現(xiàn)設(shè)備的身份認(rèn)證和密鑰的安全傳遞。當(dāng)接收設(shè)備接入系統(tǒng)或者接收設(shè)備不能正確解密數(shù)據(jù)時(shí),主動(dòng)發(fā)起與發(fā)送設(shè)備的身份認(rèn)證。發(fā)送設(shè)備與接收設(shè)備利用雙方的公私鑰對(duì)產(chǎn)生一個(gè)共享密鑰值,發(fā)送設(shè)備利用自己產(chǎn)生的共享密鑰將解密密鑰及相應(yīng)的校驗(yàn)碼變換成密文M,接收設(shè)備利用自己產(chǎn)生的共享密鑰解密密文M得出解密密碼,同時(shí)可以檢驗(yàn)其正確性。如果收發(fā)雙方都是合法的設(shè)備,則雙方可以正常進(jìn)行加解密;否則雙方不能正常進(jìn)行加解密,至少有一個(gè)是非法的設(shè)備。該系統(tǒng)可以用于數(shù)字內(nèi)容保護(hù)接口、電子商務(wù)、銀行系統(tǒng)、智能卡、身份驗(yàn)證等軟硬件環(huán)境中。
文檔編號(hào)H04L9/08GK101296077SQ20071004900
公開日2008年10月29日 申請(qǐng)日期2007年4月29日 優(yōu)先權(quán)日2007年4月29日
發(fā)明者余有勇, 王志輝 申請(qǐng)人:四川虹微技術(shù)有限公司