程鴻芳 胡博
(蕪湖職業(yè)技術(shù)學(xué)院,安徽 蕪湖 241000)
基于P2P網(wǎng)絡(luò)分布式數(shù)字簽名系統(tǒng)研究
程鴻芳 胡博
(蕪湖職業(yè)技術(shù)學(xué)院,安徽 蕪湖 241000)
計(jì)算機(jī)高速的發(fā)展,網(wǎng)絡(luò)安全也被受人們的關(guān)注,特別是網(wǎng)絡(luò)服務(wù)、網(wǎng)絡(luò)交易等領(lǐng)域的安全問(wèn)題,使得數(shù)字簽名技術(shù)應(yīng)用越來(lái)越廣泛。本文引入了門限密碼的思想來(lái)設(shè)計(jì)基于P2P環(huán)境的分布式數(shù)字簽名平臺(tái),整體采用有可信中心的安全增強(qiáng)的基于橢圓曲線門限數(shù)字簽名方案。實(shí)驗(yàn)證明該系統(tǒng)具備高密鑰安全性和高系統(tǒng)可用性。
分布式;數(shù)字簽名;P2P
近年來(lái),P2P(Peer-to-Peer)對(duì)等網(wǎng)絡(luò)的廣泛使用,已經(jīng)成為Internet中最重要的應(yīng)用系統(tǒng)之一。P2P不同于傳統(tǒng)的Client/Server(C/S)模式,P2P網(wǎng)絡(luò)節(jié)點(diǎn)具有分散性、動(dòng)態(tài)性、自治性、自組織性、異構(gòu)性等特點(diǎn)[1](P136),使得 P2P 網(wǎng)絡(luò)系統(tǒng)需要在沒(méi)有中心節(jié)點(diǎn)的情況下,提供數(shù)字簽名變得非常困難,數(shù)字簽名密鑰的分發(fā)也面臨安全問(wèn)題。目前,國(guó)內(nèi)外計(jì)算機(jī)學(xué)界把研究P2P環(huán)境中數(shù)字簽名作為重要的課題之一。因此,研究P2P環(huán)境的分布式數(shù)字簽名具有重要意義。
本文提出整體采用有可信中心的安全增強(qiáng)的基于橢圓曲線門限數(shù)字簽名方案,利用P2P網(wǎng)絡(luò)的節(jié)點(diǎn)完成數(shù)字簽名服務(wù)。
2.1 系統(tǒng)框架圖
2.2 系統(tǒng)說(shuō)明
2.2.1 上級(jí) CA 節(jié)點(diǎn)服務(wù)器
傳統(tǒng)的CA服務(wù)掌握者系統(tǒng)的密鑰,而在P2P網(wǎng)絡(luò)中,由于P2P網(wǎng)絡(luò)的特點(diǎn),分布式的節(jié)點(diǎn)結(jié)構(gòu)安全性要比集中式CA低,如果每個(gè)單獨(dú)節(jié)點(diǎn)都保存有完整的CA私鑰,則攻擊人員只要獲得其中一臺(tái)CA服務(wù)器的私鑰,即可只陷該CA服務(wù)器,這樣就可以攻陷整個(gè)系統(tǒng)。為了避免這種情況,經(jīng)常采用容錯(cuò)領(lǐng)域常用的(n,t)門限技術(shù)[2](P1581),將密鑰分成子密鑰分發(fā)到各個(gè)節(jié)點(diǎn)服務(wù)器中,假如攻擊者攻擊其中的一臺(tái)服務(wù)器,只能獲得密鑰的一小部分而不能重構(gòu)出完整的密鑰,這樣確保密鑰的安全性。首先上級(jí)CA生成公私鑰對(duì)P和S,采用門限密碼共享技術(shù)將私鑰S分解為 n份子密鑰 Si(i=1,…,n),只有合成至少 t份子密鑰(t<n)才能重構(gòu)完整的CA私鑰,任意少于t份子密鑰均無(wú)法得出CA私鑰,這種方法的安全性是與攻擊者計(jì)算能力無(wú)關(guān)的。
根據(jù)系統(tǒng)平臺(tái)整體框架圖2所示,該系統(tǒng)整體由上級(jí)CA服務(wù)器 (權(quán)威節(jié)點(diǎn))、升級(jí)服務(wù)器、Share節(jié)點(diǎn)(具有以一定信用度的節(jié)點(diǎn))和Combiner服務(wù)器幾部分組成。上級(jí)CA是一個(gè)非常重要的節(jié)點(diǎn),和傳統(tǒng)PKI方案中的CA一樣,上級(jí)服務(wù)器負(fù)責(zé)產(chǎn)生掌握整個(gè)系統(tǒng)中唯一完整私鑰和公鑰,并負(fù)責(zé)產(chǎn)生子密鑰,并將子密鑰分發(fā)到各個(gè)Share節(jié)點(diǎn)上。和傳統(tǒng)PKI方案中的CA不同之處,本方案中上級(jí)服務(wù)器CA只負(fù)責(zé)產(chǎn)生密鑰、分發(fā)子密鑰,并不保存自己的私鑰,而是通過(guò)秘密共享方式存儲(chǔ)到子服務(wù)器。在系統(tǒng)平臺(tái)中,上級(jí)服務(wù)器CA是P2P網(wǎng)絡(luò)的節(jié)點(diǎn)之一,它根據(jù)ErgenRep 全局可信度模型[3](P142),從中選取信任度最高的節(jié)點(diǎn)稱為權(quán)威節(jié)點(diǎn)作為上級(jí)CA節(jié)點(diǎn)。由于上級(jí)服務(wù)器是整個(gè)系統(tǒng)中唯一掌握完整私鑰的,因此只有在分發(fā)子密鑰時(shí)才會(huì)在線,平時(shí)都是離線狀態(tài)。同時(shí)上級(jí)服務(wù)器CA還負(fù)責(zé)構(gòu)建P2P節(jié)點(diǎn)網(wǎng)絡(luò)和節(jié)點(diǎn)Combiner的建立與維護(hù)。
2.2.2 Share 節(jié)點(diǎn)服務(wù)器
在系統(tǒng)執(zhí)行的過(guò)程中,上級(jí)CA要在P2P網(wǎng)絡(luò)中找n個(gè)peer節(jié)點(diǎn)作為Share CA,上級(jí)CA根據(jù)其歷次交易的滿意次數(shù)和交易不滿意次數(shù)給相鄰節(jié)點(diǎn)打分記作信任度,從中選擇信任度較高的節(jié)點(diǎn)。這些節(jié)點(diǎn)不僅要求是較可信的,而且擁有證書,長(zhǎng)時(shí)間在線的。
根據(jù)PDDSS系統(tǒng)框架圖2所示,PDDSS系統(tǒng)由P2P網(wǎng)絡(luò)節(jié)點(diǎn)(信任節(jié)點(diǎn))和Combiner服務(wù)器組成兩層結(jié)構(gòu),其中一個(gè)Combiner服務(wù)器對(duì)應(yīng)t個(gè)Share節(jié)點(diǎn),一個(gè)Combiner服務(wù)器和t個(gè)Share節(jié)點(diǎn)構(gòu)成一個(gè)組[4](P54)。系統(tǒng)就由很多個(gè)這樣的組構(gòu)成。根據(jù)ErgenRep全局可信度模型,由節(jié)點(diǎn)之間的滿意度選取信任度較高的節(jié)點(diǎn)作為Share節(jié)點(diǎn)。采用這種兩層結(jié)構(gòu)能夠起到了節(jié)點(diǎn)隱藏的作用,只有Combiner節(jié)點(diǎn)才知道Share節(jié)點(diǎn)的位置,Combiner節(jié)點(diǎn)保存了Share節(jié)點(diǎn)的地址,并且Share節(jié)點(diǎn)之間也都不知道其他節(jié)點(diǎn)的地址。同時(shí)這種兩層結(jié)構(gòu)解決了原來(lái)算法固有的密鑰管理的問(wèn)題,提高了系統(tǒng)的安全。每一個(gè)子密鑰被一個(gè)信任節(jié)點(diǎn)保存,任意一個(gè)子密鑰都可以和其它t-1個(gè)信任節(jié)點(diǎn)的對(duì)應(yīng)子密鑰構(gòu)成一個(gè)簽名證書。上級(jí)CA服務(wù)器負(fù)責(zé)產(chǎn)生和分發(fā)子密鑰,每一個(gè)子密鑰被一個(gè)Share節(jié)點(diǎn)保存,最后由Combiner服務(wù)器組合這t個(gè)子簽名,計(jì)算出完整的簽名證書。
2.2.3 Combiner節(jié)點(diǎn)服務(wù)器
Combiner服務(wù)器在系統(tǒng)中是一個(gè)特殊而又重要的節(jié)點(diǎn),在P2P網(wǎng)絡(luò)中有多個(gè)Combiner節(jié)點(diǎn),它不是P2P網(wǎng)絡(luò)中的peer節(jié)點(diǎn),而是由網(wǎng)絡(luò)服務(wù)提供商管理的節(jié)點(diǎn)。Combiner服務(wù)器長(zhǎng)期在線,用戶向它發(fā)出請(qǐng)求,負(fù)責(zé)接收用戶向它發(fā)出請(qǐng)求,將待簽消息發(fā)給子節(jié)點(diǎn)服務(wù)器,并重構(gòu)出完整的簽名證書給用戶。上級(jí)CA根據(jù)模型提供了信任度確定了n個(gè)Share CA節(jié)點(diǎn)后,就給每個(gè)Combiner服務(wù)器發(fā)送包含其中t個(gè)Share CA節(jié)點(diǎn)的地址列表,這個(gè)地址列表通過(guò)加密和簽名之后傳送給Combiner節(jié)點(diǎn)。每個(gè)Combiner節(jié)點(diǎn)都維護(hù)一個(gè)這樣的地址表,且每個(gè)Combiner服務(wù)器所包含地址盡可能不相同的子節(jié)點(diǎn)服務(wù)器[5](P356)。
Combiner服務(wù)器組合這t個(gè)子簽名,算出完整的簽名證書Md,傳送給用戶。在簽名的過(guò)程中,當(dāng)需要簽名信息M被用戶發(fā)送給Combiner服務(wù)器,由Combiner將M傳送給t個(gè)信任節(jié)點(diǎn),每個(gè)信任節(jié)點(diǎn)利用自己的子密鑰di簽名,然后將簽名的信息傳回Combiner,最后Combiner計(jì)算得到簽名證書。若簽名不成功,用戶可以選擇下一個(gè)Combiner簽名。系統(tǒng)假使有t個(gè)Combiner節(jié)點(diǎn),則信任節(jié)點(diǎn)總數(shù) n 至少為 t2個(gè)[6](P21)。
2.2.4 升級(jí)服務(wù)器
根據(jù)ErgenRep全局可信度模型,從中選擇信任度次于上級(jí)CA服務(wù)器的信任度的節(jié)點(diǎn)作為升級(jí)服務(wù)器節(jié)點(diǎn)。升級(jí)服務(wù)器主要負(fù)責(zé)在密鑰升級(jí)階段分發(fā)密鑰升級(jí)組份,也就是重新分配門限值。在分發(fā)的過(guò)程中,和上級(jí)服務(wù)器分發(fā)子密鑰和地址表一樣,密鑰升級(jí)組份用升級(jí)服務(wù)器的私鑰加密,然后用子節(jié)點(diǎn)的公鑰簽名。組份升級(jí)服務(wù)器和上級(jí)CA服務(wù)器一樣,平時(shí)都是離線的,只有在升級(jí)時(shí)分發(fā)密鑰升級(jí)組分時(shí)才上線[7](P150)。升級(jí)服務(wù)器不掌握任何簽名私鑰或子密鑰信息,負(fù)責(zé)分發(fā)密鑰升級(jí)組份,重新分配門限值,且整個(gè)過(guò)程中不傳輸子密鑰,由share節(jié)點(diǎn)直接算出新的子密鑰。
3.1 實(shí)驗(yàn)系統(tǒng)平臺(tái)建立
圖3 實(shí)驗(yàn)系統(tǒng)平臺(tái)
如圖3,實(shí)驗(yàn)平臺(tái)由若干臺(tái)計(jì)算機(jī) (至少5臺(tái))組成,這些計(jì)算機(jī)負(fù)責(zé)不同的功能:
3.1.1 用戶計(jì)算機(jī):即一臺(tái)PC機(jī),用戶事先保存加密的文件。用戶計(jì)算機(jī)與server計(jì)算機(jī)之間互相傳送信息,用戶向服務(wù)器發(fā)出簽發(fā)證書申請(qǐng),并上傳自己的公鑰等信息。
3.1.2 server計(jì)算機(jī):為一臺(tái)性能較高的PC機(jī),server服務(wù)器在實(shí)驗(yàn)平臺(tái)中實(shí)現(xiàn)的功能:1.上級(jí)服務(wù)器CA:完成認(rèn)證功能,當(dāng)接收到用戶的申請(qǐng),將用戶公鑰信息和一個(gè)唯一的證書號(hào)一同發(fā)給Share節(jié)點(diǎn),并根據(jù)算法把密鑰分解成子密鑰發(fā)給Share節(jié)點(diǎn)。2.Combiner服務(wù)器:接收t個(gè)Share節(jié)點(diǎn)的子簽名,重構(gòu)出簽名證書,并將認(rèn)證信息傳給用戶計(jì)算機(jī)。3.升級(jí)服務(wù)器:周期性發(fā)出子密鑰升級(jí)的組分。
3.1.3 Share服務(wù)器:為一組PC服務(wù)器,組成一個(gè)P2P網(wǎng)絡(luò)結(jié)構(gòu)。和server服務(wù)器共同組成一個(gè)PDDSS數(shù)字簽名系統(tǒng)。負(fù)責(zé)將server服務(wù)器發(fā)來(lái)的信息簽名,并將簽名信息傳給server服務(wù)器。
3.2 實(shí)驗(yàn)平臺(tái)配置
3.2.1 用戶計(jì)算機(jī):普通配置
3.2.2 Server端:CPU INTEL至強(qiáng)雙核處理器E3120 (3.16 GHz,6MB 二 級(jí) 緩 存 內(nèi) 存 )2*2GB DDR2
3.2.3 Share端:CPU INTEL至強(qiáng)雙核處理器E3120 (3.16 GHz,6MB 二 級(jí) 緩 存 內(nèi) 存 )2*2GB DDR2
3.2.4 網(wǎng)絡(luò):LAN局域網(wǎng)
3.3 測(cè)試結(jié)果與分析
在實(shí)驗(yàn)中,以下每個(gè)階段我們都分別對(duì)橢圓曲線密鑰長(zhǎng)度為512位、1024位和2048位的情況進(jìn)行了對(duì)比測(cè)試,時(shí)間單位為秒。
假設(shè)測(cè)試的是在無(wú)錯(cuò)環(huán)境下的系統(tǒng)性能,我們測(cè)試了系統(tǒng)性能和門限值之間關(guān)系。如表1所示:
表1 系統(tǒng)性能和門限值之間關(guān)系
此外,實(shí)驗(yàn)進(jìn)行密鑰生成測(cè)試、密鑰升級(jí)測(cè)試、子密鑰分發(fā)測(cè)試、PDDSS門限簽名時(shí)間測(cè)試,測(cè)試對(duì)比圖如圖4、圖5、圖6、圖7所示:
圖7 PDDSS門限簽名時(shí)間
通過(guò)一系列的試驗(yàn),測(cè)試了系統(tǒng)各個(gè)階段的一系列執(zhí)行效率。實(shí)驗(yàn)結(jié)果表明隨著門限值t的增加,各種測(cè)試時(shí)間都會(huì)有所增加,但都增長(zhǎng)不多。更高的門限值意味著更高的安全性。但是系統(tǒng)性能受服務(wù)器總數(shù)n的影響是很小的,但當(dāng)門限值隨著服務(wù)器總數(shù)的增加而增加時(shí),系統(tǒng)性能下降非??臁?/p>
[1]彭蓉,崔競(jìng)松.門限簽名中的部分簽名驗(yàn)證協(xié)議[J].計(jì)算機(jī)工程,2005,31(7):136~137.
[2]王斌,李建.無(wú)可信中心的((t,n)門限簽名方案[J].計(jì)算機(jī)學(xué)報(bào),2003,26(11):1581~1584.
[3]于丹,劉煥平.一個(gè)新的(t,n)門限多級(jí)秘密共享方案[J].計(jì)算機(jī)工程與應(yīng)用,2007,43(26):142~143.
[4]楊柳,鐘誠(chéng),陸向艷.一個(gè)P2P門限數(shù)字簽名方案[J].微計(jì)算機(jī)信息,2008,24(7):54~55.
[5]楊帆,沙瀛,程學(xué)旗.一個(gè)P2P分布式數(shù)字簽名系統(tǒng)[J].計(jì)算機(jī)應(yīng)用,2007,27(2):308~310.
[6]沈濤,馬紅光.網(wǎng)絡(luò)數(shù)據(jù)加密算法研究及其應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,2005,17:21~22.
[7]王尚平,侯紅霞,李敏.基于橢圓曲線的前向安全數(shù)字簽名方案[J].計(jì)算機(jī)工程與應(yīng)用,2006,42(18):150~151.
THE RESEARCH OF DISTRIBUTED DISTRIBUTED OF DISTRIBUTED DIGITAL SIGNATURE SYSTEM BASES ON P2P NETWORKS
Cheng Hong-fang Hu Bo
(Wuhu Vocation Institute of Technology,Wuhu Anhui 241000)
With the development of computer,network security was the concerned by the people,especially network services,network transactions and other areas of security.The elliptic curve digital signature technology is used more and more widely.This paper introduces the idea of the threshold cryptography to design the environment based on P2P platform for distributed digital signatures,and the scheme use a trusted security enhancements elliptic curve based threshold digital signature in the overall.The experiment proves that the high-key security system has high system availability and performance.
distributed;digital signature;Peer-to-Peer
A
1672-2868(2011)03-0036-05
2010-12-29
安徽高校省級(jí)自然科學(xué)研究計(jì)劃項(xiàng)目(項(xiàng)目編號(hào):KJ2009B229ZC)
程鴻芳(1983-),女,碩士,安徽黃山人。蕪湖職業(yè)技術(shù)學(xué)院講師,研究方向:計(jì)算機(jī)網(wǎng)絡(luò)與信息安全
責(zé)任編輯:陳 侃