摘 要:針對傳統(tǒng)數(shù)字證書認證技術(shù)中證書主體信息不明確、通信量大等問題,提出了一種基于基因證書的身份鑒別方法(GCUA)。GCUA按照開放式網(wǎng)絡(luò)服務(wù)架構(gòu)及網(wǎng)絡(luò)拓撲,構(gòu)造真實網(wǎng)絡(luò)的家族演化圖譜;然后通過基因指派、基因簽名等途徑給網(wǎng)絡(luò)實體簽發(fā)惟一的基因證書,并通過驗證簽名信息鑒別身份。實驗結(jié)果表明該方法是鑒別用戶身份的一種有效新途徑。
關(guān)鍵詞:網(wǎng)絡(luò)安全;身份鑒別;基因證書
中圖分類號:TP393.08 文獻標志碼:A 文章編號:1001-3695(2008)08-2454-03
Gene certificate-based method for user authentication
SUN Fei-xian1, WANG Wen-qi1, ZHENG Qiu-sheng1, ZENG Jin-quan2, XIA Bing1
(1. School of Computer Science, Zhongyuan University of Technology, Zhengzhou 450007, China;2.School of Computer Science, Sichuan University, Chengdu 610065, China)
Abstract:Inspired by the principle of inheritance of mankind, this paper presented a gene certificate-based method for user authentication (GCUA). According to the architecture of opening network services, considered network entities to be family-members, and regarded a real network as a network-family. Then, through gene-assignment and gene-signature,assigned each network-family member a gene-certificate. Finally, authenticated network users through analyzing their gene codes. By GCUA, the problem of ambiguity of X.509 certificates was overcome, and solved the deficiency of high communication traffic of PKI-based techniques to a certain degree. Experiment results show that the proposed method is a good solution to network user authentication.
Key words:network security;user authentication;gene certificate
0 引言
身份鑒別是保證計算機網(wǎng)絡(luò)與信息系統(tǒng)安全的重要措施之一。現(xiàn)行的身份鑒別方法主要包括口令、公鑰證書、基于生物特征的技術(shù)等,但都存在這樣或那樣的問題[1,2]:基于口令的身份鑒別方法中,短口令易被猜測,長口令難以記憶,明文口令易被截獲,密文口令難逃脫字典式攻擊,靜態(tài)口令不安全,動態(tài)口令難實現(xiàn);基于X.509證書的身份鑒別方法因PKI機制自身的缺陷,存在證書主體信息不明確、通信量大、實現(xiàn)復(fù)雜、使用和維護成本高等不足;而基于生物特征(如指紋)的鑒別技術(shù)無法識別網(wǎng)絡(luò)設(shè)備的身份。
免疫計算[3,4]、DNA計算[5,6]是智能計算領(lǐng)域繼神經(jīng)網(wǎng)絡(luò)、模糊控制和進化計算之后新的研究熱點,這些生物計算技術(shù)的出現(xiàn)預(yù)示著生命科學(xué)與IT技術(shù)有相互融合的趨勢。針對傳統(tǒng)數(shù)字證書認證技術(shù)中證書主體信息不明確、通信量大等問題,本文借鑒生物基因技術(shù),提出了一種基于基因證書的身份鑒別方法(gene certificate-based method for user authentication, GCUA)。給出了相關(guān)概念的定義,描述了具體的實現(xiàn)算法,進行了理論分析和對比實驗。
1 實現(xiàn)方法
1.1 相關(guān)概念
定義1 網(wǎng)絡(luò)家族F是由家族成員m構(gòu)成的集合,形式化定義F={m | m = (gene-certificate, inheritance-password)}。其中:gene-certificate和inheritance-password分別表示家族成員m的基因證書和遺傳密碼。
家族成員m可以是家長、子女或訪客。其中,家長代表網(wǎng)絡(luò)管理員,并負責管理自己的子女和訪客;子女表示網(wǎng)絡(luò)對外提供的具體服務(wù);網(wǎng)絡(luò)用戶描述為訪客。家族成員m惟一的基因證書標志了m的數(shù)字身份,m的遺傳密碼用于加密和數(shù)字簽名。
定義2 定義家族成員m的基因證書gene-certificate =(version, name, type, description, family-gene, member-gene, extension, signature-id, signature)。家族基因family-gene用來標志m所在的子網(wǎng),成員基因member-gene用于區(qū)別同一子網(wǎng)的不同成員。設(shè)m, p∈F,且p是m的家長,m的基因genem=m.gene-certificate.family-gene+m.gene-certificate.member-gene,m.gene-certificate.family-gene=genep。
1.2 具體實現(xiàn)
1.2.1 構(gòu)造網(wǎng)絡(luò)家族圖譜
依據(jù)開放式的網(wǎng)絡(luò)服務(wù)架構(gòu)及網(wǎng)絡(luò)拓撲,GCUA將整個網(wǎng)絡(luò)看做是由始祖網(wǎng)絡(luò)演化而成,將實際的子網(wǎng)類比成子網(wǎng)絡(luò)家族,并依據(jù)定義1和2將網(wǎng)絡(luò)管理員、一般用戶及網(wǎng)絡(luò)對外提供具體的服務(wù)分別轉(zhuǎn)換為家長、訪客和子女,進而構(gòu)造真實網(wǎng)絡(luò)的家族圖譜,如圖1所示。
從圖1可知,網(wǎng)絡(luò)家族演化圖譜樹的構(gòu)造包括根節(jié)點(始祖網(wǎng)絡(luò)的家長)和葉節(jié)點(始祖網(wǎng)絡(luò)的子女、訪客以及子網(wǎng)絡(luò)家族成員等)的生成,實現(xiàn)算法形式化描述如下:
算法1 構(gòu)造始祖網(wǎng)絡(luò)家長
輸入始祖網(wǎng)絡(luò)家長的名字、簽名算法標志符等信息;
輸出 構(gòu)造成功返回“真”,否則返回“假”;
a)初始化網(wǎng)絡(luò)家族演化圖譜樹T為空;
b)創(chuàng)建新節(jié)點n,n∈F;
c)置n.gene-certificate.family-gene為空; //依據(jù)定義2
d)生成公鑰對,令n.gene-certificate.member-gene=kpub,n.inheritance-password=kpri;
e)生成始祖網(wǎng)絡(luò)家長的自簽名基因證書;
f)將節(jié)點n插入到T;
g)結(jié)束。
網(wǎng)絡(luò)家族成員m生成時,要向其家長p申請注冊,由p指派其家族基因、成員基因,并生成其基因證書,算法如下:
算法2 構(gòu)造網(wǎng)絡(luò)家族其他成員
輸入 m、p、簽名算法標志符;
輸出構(gòu)造成功返回“真”,否則返回“假”;
a)p審核m的注冊申請;
b)若審核通過則:
創(chuàng)建新節(jié)點n,n∈F;
n.gene-certificate. family-gene=genep;
n.gene-certificate.member-gene=kpub;
n.inheritance-password=kpri;
c)生成m的基因證書;
d)將節(jié)點n插入到T;
e)結(jié)束。
1.2.2 構(gòu)造基因證書
由前述說明可知,家族成員m的基因證書是其身份的象征,基因證書的構(gòu)造算法描述如下:
算法3 構(gòu)造基因證書
輸入 m的名字、類型、描述等信息;//依照定義2
輸出 構(gòu)造成功返回“真”,否則返回“假”;
a)設(shè)置基因證書版本以及m的名字、類型、描述;
b)依據(jù)算法1、2生成m的家族基因和成員基因;
c)計算除signature外的其他所有信息的摘要值h;
d)m.gene-certificate.signature=Ep.inheritance-password (h);
e)結(jié)束。
1.2.3 鑒別用戶身份流程
假定成員m和子女c的家長分別是p和q, m′∈F,Dk(s)表示用密鑰k解密信息s。m訪問c時, q通過檢驗m基因證書上簽名信息的完整性以及m所屬網(wǎng)絡(luò)家族的合法性鑒別m的身份,實現(xiàn)流程如圖2所示。
從圖2可以看出,基于基因證書的身份鑒別過程包括以下兩個階段:
a)自身合法性鑒別。通過重新計算并比對m基因證書上的簽名信息,判定m所持基因證書的原始性和完整性;
b)家族合法性鑒別。家族合法性鑒別是一個循環(huán)過程,方法是驗證m的父親、m父親的父親,直至網(wǎng)絡(luò)始祖自身的合法性。若m所有祖先自身均合法,則其家族血統(tǒng)合法,進而保證了m基因證書來源的真實性。
不難看出,GCUA中m身份合法的充分必要條件是m自身以及m所在的家族均合法。
2 理論分析與對比實驗
2.1 理論分析
GCUA中的每個成員m都有自己秘密的遺傳密碼inheri-tance-password和成員基因member-gene。由算法1、2知member-gene和inheritance-password構(gòu)成一對非對稱密鑰,公鑰加密算法的強壯性保證了GCUA的安全。GCUA的安全性體現(xiàn)在:a)GCUA不涉及用戶登錄密碼的傳輸問題,網(wǎng)絡(luò)監(jiān)聽、口令猜測等攻擊對該方法無效;b)成員m的基因證書是經(jīng)過數(shù)字簽名的,從而能保證基因證書的原始性和完整性,即便基因證書被仿冒,也能夠輕易地識別出來; c)與基于X.509證書的身份鑒別技術(shù)相比,GCUA的基因證書包含了網(wǎng)絡(luò)用戶的名字、類型、詳細描述、出身及來歷(屬于哪個子網(wǎng)及具體的某個成員)等詳盡的身份信息,克服了數(shù)字證書主體信息不明確(如對于一本“張三”的X.509證書,因存在重名現(xiàn)象,無法斷定究竟是哪個“張三”,更不知其來自何方)的安全缺陷;d)GCUA用家族基因能確保家族成員的純正血統(tǒng),使之免受病毒、網(wǎng)絡(luò)入侵等外來抗原的侵襲。
在效率方面,與傳統(tǒng)基于X.509證書的身份鑒別技術(shù)相比,GCUA運行效率有所提高,原因是:a)傳統(tǒng)CA不僅負責簽發(fā)和管理數(shù)字證書,而且要負責證書狀態(tài)查詢,致使CA成為PKI的嚴重瓶頸,而GCUA的子網(wǎng)絡(luò)家族是一個規(guī)模不大的子網(wǎng),系統(tǒng)負載明顯降低;b)GCUA對數(shù)據(jù)加/解密的次數(shù)更少,身份鑒別效率更高;c)由上述網(wǎng)絡(luò)家族成員構(gòu)造算法可知,成員m產(chǎn)生時,只用向所在的子網(wǎng)絡(luò)家族的家長注冊即可,不像PKI那樣先去RA注冊,由CA生成證書后再由RA發(fā)放等,因此證書生成過程中的通信次數(shù)明顯減少。
綜上所述,GCUA家族成員基因證書的惟一性保證了身份鑒別的可行性,基因證書的原始性和完整性鑒別機制保證了鑒別結(jié)果的正確性,家族成員基因的遺傳性適應(yīng)了真實網(wǎng)絡(luò)環(huán)境中用戶繼承權(quán)限的實際。同時,基因指派、數(shù)據(jù)加密、數(shù)字簽名、基因證書構(gòu)造等機制保障了GCUA的安全性和效率。因此,基于基因證書的身份鑒別方法不僅理論上可行,且具有安全、高效等特點。
2.2對比實驗
為驗證GCUA的有效性,筆者對其中的網(wǎng)絡(luò)家族構(gòu)造、基因指派、基因證書生成、身份鑒別等進行了對比實驗,并進行了綜合分析。
實驗環(huán)境及參數(shù):CPU是C4 1.8 GHz,數(shù)字摘要算法選用MD5,密鑰長度512 bit。
為了增加實驗結(jié)果的說服力,本文構(gòu)造了由三個子網(wǎng)組成的網(wǎng)絡(luò)家族圖譜。每個子網(wǎng)絡(luò)家族三臺機器,在線申請注冊家族成員,注冊和基因指派等信息通過安全信道傳輸,成員基因member-gene和遺傳密碼inheritance-password用ECC算法產(chǎn)生。
圖3描述了GCUA中基因證書與X.509V3數(shù)字證書生成速度(不包括通信時間)的對比情況,每組實驗結(jié)果都是20次實驗的平均值。
從圖3的實驗結(jié)果可以看出,GCUA中基因證書的生成速度較X.509 V3證書快,其原因在于GCUA基因證書的格式更簡潔。圖4給出了GCUA與基于X.509 V3證書的身份鑒別方法在鑒別速度方面的對比結(jié)果。其中,曲線GCUA1和GCUA2分別表示被認證的成員m與其訪問的子女c在相同和不同的子網(wǎng)時的身份鑒別時間。
從圖4的實驗結(jié)果可知,GCUA方法的身份鑒別速度較快。曲線GCUA2波動大的原因是m到c的距離長短不一,與前述身份鑒別算法吻合。上述實驗結(jié)果表明GCUA是可行的,且具有基因證書生成速度快、身份認證效率高等特點,為網(wǎng)絡(luò)信息系統(tǒng)鑒別用戶的數(shù)字身份提供了一種有效的新途徑。
3 結(jié)束語
受人體“生物密碼”各不相同且絕對不可偽造等事實啟發(fā),同時吸取了PKI機制的優(yōu)點,本文提出了一種基于基因證書的身份鑒別方法GCUA。與傳統(tǒng)基于X.509證書的身份簡介技術(shù)相比,GCUA不僅安全地守住了計算機網(wǎng)絡(luò)的入口,而且解決了X.509證書認證效率低、證書主體信息不明確等缺陷。同時,基因證書能確定網(wǎng)絡(luò)用戶的名字、類型、詳細描述、出身和來歷等詳盡的身份信息,為網(wǎng)絡(luò)信任體系中的取證和責任認定工作提供了有力保障。理論分析和實驗結(jié)果表明GCUA是網(wǎng)絡(luò)信息系統(tǒng)鑒別用戶數(shù)字身份的一種有效新方法。
基于基因證書的身份鑒別方法是基于基因證書的網(wǎng)絡(luò)信任體系研究課題的一個重要組成部分,下一步將研究基因加密、基因簽名以及基于基因證書的計算機取證等技術(shù),進而探索基因證書、通信過程安全保障及入侵者責任認定等新方案。
參考文獻:
[1]DAS M L, SAXENA A, GULATI V P. A dynamic ID-based remote user authentication scheme [J].IEEE Trans on Consumer Electronics,2004,50(2):629-631.
[2]WEAVER A C. Biometric authentication [J].Computer,2006,39(2):96-97.
[3]LI Tao.An immunity based network security risk estimation [J].Science in China Ser F Information Science, 2005,48(5):557-578.
[4]劉芳, 潘曉英. 基于免疫克隆選擇的塊匹配運動估計[J]. 軟件學(xué)報, 2007,18(4): 850-860.
[5]朱軍, 唐常杰, 魏大剛, 等. 基于動態(tài)適應(yīng)度的基因表達式編程挖掘反函數(shù)[J]. 計算機應(yīng)用研究, 2007,24(9):40-42.
[6]許進, 譚鋼軍, 范月科, 等. DNA計算機原理、進展及難點(Ⅳ):論DNA計算機模型[J]. 計算機學(xué)報, 2007,30(6):881-893.
[7]ELLISON C, SCHNEIER B. Ten risks of PKI: what you’re not being told about public key infrastructure [J].Computer Security Journal,2000,8(1):1-8.
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文