摘 要: 將PKI技術(shù)和生物認(rèn)證相結(jié)合,提出了基于生物證書的身份認(rèn)證和權(quán)限管理的生物認(rèn)證系統(tǒng),相對原來單一基于PKI的認(rèn)證系統(tǒng)具有更高安全性。
關(guān)鍵詞: PKI; PMI; 生物認(rèn)證;生物證書
隨著國家電力信息網(wǎng)的建設(shè),電力工業(yè)中網(wǎng)絡(luò)應(yīng)用的數(shù)量不斷增加,信息技術(shù)給電力工業(yè)發(fā)展帶來了諸多便利的同時,也將其負(fù)面影響波及到了電力系統(tǒng)。隨著計算機(jī)、網(wǎng)絡(luò)等技術(shù)的蓬勃發(fā)展,信息技術(shù)的軟件和硬件環(huán)境均發(fā)生了巨大的變化,電力工業(yè)的信息安全已成為影響電力系統(tǒng)穩(wěn)定運(yùn)行的主要問題。公網(wǎng)上的黑客和病毒的日益盛行,在電力系統(tǒng)通信網(wǎng)絡(luò)中也發(fā)現(xiàn)了黑客活動的蹤跡。與此同時,電力工業(yè)市場化改革使得具備潛在攻擊能力和知識的內(nèi)部用戶數(shù)量增加,內(nèi)部攻擊威脅不容忽視。因此,電力工業(yè)的信息安全已成為影響電力系統(tǒng)穩(wěn)定運(yùn)行的重要問題。
電力工業(yè)信息安全包括電網(wǎng)調(diào)度自動化、配電網(wǎng)自動化、廠站自動化、電力市場運(yùn)營、企業(yè)管理信息系統(tǒng)等有關(guān)生產(chǎn)、經(jīng)營、管理的各個方面。研究范圍包括信息網(wǎng)絡(luò)安全體現(xiàn)結(jié)構(gòu)、安全需求與策略分析、基礎(chǔ)支持系統(tǒng)的時間與應(yīng)用、信息系統(tǒng)與業(yè)務(wù)系統(tǒng)的安全保障措施、系統(tǒng)的安全評估和容侵能力等多個方面[1]。
本文結(jié)合生物認(rèn)證系統(tǒng),對用戶訪問電力信息系統(tǒng)的身份認(rèn)證和訪問控制提出了基于公鑰基礎(chǔ)設(shè)施的訪問安全解決方案。
1 訪問安全技術(shù)分析
1.1 PKI
對于傳統(tǒng)的電力企業(yè)應(yīng)用系統(tǒng),認(rèn)證和授權(quán)功能都嵌在應(yīng)用(提供特定功能的程序集合)的內(nèi)部,增加了應(yīng)用的復(fù)雜性。對于用戶來說,需要設(shè)定多個用戶名和口令,因此,在使用中很容易混淆。而對于管理者而言,需要多個管理者來管理用戶名/口令列表和接入控制列表,增加了管理的費(fèi)用,并且各個管理者各自為政,很難使用通用的安全策略。
公共密鑰基礎(chǔ)設(shè)施PKI(Public Key Infrastructure)可以部分地解決以上的問題。PKI是一種運(yùn)用非對稱密碼技術(shù)實(shí)施并提供安全服務(wù)的具有普遍適用性的網(wǎng)絡(luò)安全基礎(chǔ)設(shè)施。作為一種基礎(chǔ)安全平臺,PKI能為各種不同安全需求的用戶提供各種不同的安全服務(wù)。目前PKI可以提供的安全服務(wù)包括:身份認(rèn)證、數(shù)據(jù)保密性、數(shù)據(jù)完整性、不可抵賴性等。用戶可以利用PKI所提供的這些安全服務(wù),進(jìn)行安全電子交易、電子政務(wù)等服務(wù)。PKI可以提供認(rèn)證、完整性和機(jī)密性等核心服務(wù),還可支撐安全通信、安全時間戳、公正、不可否認(rèn)等服務(wù)。這時認(rèn)證功能放到了應(yīng)用的外部,但是授權(quán)功能(即接入控制列表的管理)仍然需要嵌入到應(yīng)用中。此時的用戶從設(shè)定和記憶多個用戶名、多個口令中解放出來,用戶只需設(shè)定、記憶單個用戶名和單個口令[2]。
1.2 生物認(rèn)證技術(shù)
生物特征認(rèn)證是指通過驗(yàn)證人的生理或行為特征來確認(rèn)身份,一般應(yīng)該滿足以下4點(diǎn)要求:
(1)普遍性:每個人都應(yīng)該擁有該特征。
(2)唯一性:兩個人之間不存在相同的該特征。
(3)穩(wěn)定性:這種特征至少在一段時間內(nèi)是不變的。
(4)可采集性:該特征可以定量采集。
在實(shí)際應(yīng)用中,很難找到能夠同時滿足以上所有條件的生物特征。同時,對于一個實(shí)際應(yīng)用系統(tǒng),還要考慮一些其他指標(biāo),例如:
(1)性能:包括識別準(zhǔn)確率,識別速度,系統(tǒng)魯棒性,系統(tǒng)所需資源和影響系統(tǒng)性能的因素等。
(2)可接受性:指用戶對系統(tǒng)的接受度。
(3)可欺騙性:用欺詐的方法騙過系統(tǒng)的難易度。
因此,一個實(shí)際的生物特征識別系統(tǒng)應(yīng)做到以下3點(diǎn):
(1)在合理的資源需求下實(shí)現(xiàn)可接受的識別準(zhǔn)確度和速度。
(2)對人沒有傷害而且可為人們所接受。
(3)對各種欺詐方法有足夠的防御性。
目前人們研究和使用的生物特征識別技術(shù)主要有:指紋識別、人臉識別、虹膜識別、掌形識別、掌紋識別、簽名識別、語音識別、鍵擊識別等。
2 生物特征認(rèn)證技術(shù)
2.1 生物認(rèn)證系統(tǒng)基本框架
身份認(rèn)證驗(yàn)證者根據(jù)用戶的生物特征數(shù)據(jù)、生物證書BC、生物算法證書BAC、生物設(shè)備證書BDC和系統(tǒng)的環(huán)境、策略設(shè)置等對用戶進(jìn)行身份認(rèn)證。基于生物證書的生物認(rèn)證系統(tǒng)框架如圖1所示。
身份驗(yàn)證者(IDV)是對用戶進(jìn)行身份驗(yàn)證的部分。IDV根據(jù)采集的用戶生物數(shù)據(jù)及其生物證書,結(jié)合生物算法證書、系統(tǒng)環(huán)境變量和策略設(shè)置等對用戶進(jìn)行身份認(rèn)證。系統(tǒng)環(huán)境變量和測試對于身份認(rèn)證系統(tǒng)十分重要。認(rèn)證系統(tǒng)的安全級別可以由系統(tǒng)直接設(shè)置也可以由擴(kuò)展定義后屬性證書提供。系統(tǒng)的生物識別算法可以由系統(tǒng)直接設(shè)定也可以根據(jù)生物算法證書確定。同時,生物認(rèn)證系統(tǒng)內(nèi)的各種相關(guān)設(shè)備必須保證其安全性?;诮M件的生物認(rèn)證系統(tǒng),最大的優(yōu)點(diǎn)就是能夠?qū)⒏鱾€組件靈活地結(jié)合運(yùn)用起來,實(shí)現(xiàn)滿足客戶不同需求的應(yīng)用系統(tǒng)[3]。
2.2 結(jié)合PKI技術(shù)的生物認(rèn)證機(jī)制
基于生物認(rèn)證系統(tǒng)基本認(rèn)證模型,將生物識別技術(shù)和PKI技術(shù)融合,創(chuàng)建了一種新的生物認(rèn)證系統(tǒng)。根據(jù)認(rèn)證系統(tǒng)進(jìn)行生物比對匹配的位置不同,設(shè)計了2種不同的實(shí)現(xiàn)方法。
客戶端進(jìn)行生物比對匹配的認(rèn)證系統(tǒng)的工作流程如圖2所示,具體步驟如下:
(1)用戶通過客戶端向應(yīng)用服務(wù)器申請服務(wù)。
(2)客戶端和服務(wù)端設(shè)備互相發(fā)送生物設(shè)備證書,驗(yàn)證對方的生物認(rèn)證設(shè)備是否合法。如果互認(rèn)證成功,則進(jìn)行下一步操作。
(3)用戶和服務(wù)端協(xié)商生物認(rèn)證機(jī)制和模型等參數(shù)。
(4)用戶輸入公鑰證書PKC和生物證書BC,如果系統(tǒng)需要,還將輸入生物算法證書BAC。
(5)驗(yàn)證公鑰證書和生物證書(及生物算法證書)的有效性,并解析生物證書(生物算法證書)。如果發(fā)現(xiàn)證書被篡改,則直接跳到步驟8。
(6)用戶通過生物數(shù)據(jù)采集設(shè)備輸入個人生物信息。
(7)客戶端設(shè)備根據(jù)系統(tǒng)設(shè)置或者從生物算法證書中解析出的認(rèn)證策略和參數(shù),將用戶生物特征和從BC中解析出的生物特征模板進(jìn)行比對。如果比對失敗,則認(rèn)為用戶是冒充者。
(8)使用用戶的私鑰對生物認(rèn)證的結(jié)果進(jìn)行數(shù)字簽名。生物認(rèn)證的結(jié)果可以用處理代碼表示,如公鑰證書被篡改可以用“PKC-Alteration”表示、公鑰證書過期可以用“PKC-Outdate”表示、生物證書被篡改可以用“BC-Alteration”表示、生物算法證書被篡改可以用“BAC-Alteration”表示、身份認(rèn)證失敗發(fā)現(xiàn)冒充可以用“Identity-Impersonating”表示、身份認(rèn)證成功可以用“Identity-Success”表示等等。
(9)將簽名后的認(rèn)證結(jié)果發(fā)送給服務(wù)端。
(10)應(yīng)用服務(wù)器使用用戶的公鑰對認(rèn)證結(jié)果進(jìn)行驗(yàn)證。
(11)應(yīng)用服務(wù)器根據(jù)認(rèn)證結(jié)果,通知客戶端用戶,身份認(rèn)證完成。
在客戶端有能力進(jìn)行生物認(rèn)證比對時,服務(wù)端不具備生物比對功能或者不適合進(jìn)行生物比對。在信任客戶端的前提下,客戶端進(jìn)行生物比對無疑成為生物認(rèn)證系統(tǒng)一個很好的選擇。該機(jī)制在客戶端直接比對完成后通知服務(wù)端認(rèn)證結(jié)果,攻擊者可能利用該環(huán)節(jié)的脆弱性進(jìn)行攻擊,冒充真實(shí)用戶申請服務(wù)端服務(wù)。因此,在客戶端比對時,必須保證客戶端的可靠性。比如從物理環(huán)境上,保證客戶端處于一個絕對安全的環(huán)境中,防止攻擊者在客戶端破壞系統(tǒng),冒充真實(shí)用戶申請服務(wù)端服務(wù)[4]。
在服務(wù)端進(jìn)行生物比對匹配認(rèn)證系統(tǒng)的工作流程如圖3所示。
(1)用戶通過客戶端向應(yīng)用服務(wù)器申請服務(wù)。
(2)客戶端和服務(wù)端設(shè)備互相發(fā)送生物設(shè)備證書,驗(yàn)證對方的生物認(rèn)證設(shè)備是否合法。如果互認(rèn)證成功,則進(jìn)行下一步操作。
(3)用戶和服務(wù)端協(xié)商生物認(rèn)證機(jī)制和模型等參數(shù)。
(4)用戶輸入其公鑰證書PKC。
(5)用戶通過生物數(shù)據(jù)采集設(shè)備輸入個人生物信息。
(6)使用用戶的私鑰對生物數(shù)據(jù)進(jìn)行加密和數(shù)字簽名。
(7)將加密簽名后的生物數(shù)據(jù)發(fā)送給應(yīng)用服務(wù)器。
(8)驗(yàn)證用戶PKC的有效性和簽名后的生物數(shù)據(jù)是否被篡改,如果發(fā)現(xiàn)篡改,直接跳到步驟11。
(9)根據(jù)PKC的序列號調(diào)出相對應(yīng)用戶的生物證書,并解析用戶生物特征模板。如果系統(tǒng)是生物算法證書,同時調(diào)出對應(yīng)生物算法證書并解析出認(rèn)證相關(guān)參數(shù)。
(10)應(yīng)用服務(wù)器根據(jù)系統(tǒng)設(shè)置或者從生物算法證書中解析出認(rèn)證策略和參數(shù),將用戶生物特征和從BC中解析出的生物特征模板進(jìn)行比對。如果比對失敗,則認(rèn)為用戶是冒充者。
(11)將認(rèn)證結(jié)果發(fā)送給客戶端用戶。
在服務(wù)端進(jìn)行生物比對的認(rèn)證機(jī)制,避免了攻擊者利用客戶端直接輸出認(rèn)證結(jié)果,對服務(wù)端進(jìn)行攻擊,而且客戶端簡化了操作,降低了客戶端的復(fù)雜度,相對于在客戶端進(jìn)行比對的認(rèn)證機(jī)制,系統(tǒng)實(shí)施更簡單、成本更低廉。
將生物識別技術(shù)和PKI技術(shù)相結(jié)合,實(shí)現(xiàn)生物認(rèn)證系統(tǒng)組件之間的安全通信了。生物認(rèn)證系統(tǒng)利用PKI技術(shù)實(shí)現(xiàn)組件間的相互認(rèn)證,建立了安全通信管道,防止黑客竊聽,保證了系統(tǒng)的整體安全性,提高了系統(tǒng)的可接受度。
參考文獻(xiàn)
[1] 段斌.基于PKI/PMI的變電站自動化系統(tǒng)訪問安全管理[J].電力系統(tǒng)自動化,2005,23.
[2] 馮登國.PKI技術(shù)及其發(fā)展現(xiàn)狀[J].計算機(jī)安全,2001(1):46-51.
[3] 田捷,楊鑫.生物特征識別技術(shù)理論與運(yùn)用[J].北京:電子工業(yè)出版社,2005.
[4] WAYMAN J L.Fundamentals of biometric authentication technologies [J].Int.J.Image Graph,2001,1(1):93-113.
[5] SANDHU R,COYNE E J,F(xiàn)EINSTEIN H L.Role-based access control models[J].IEEE Computer,1996,29(2):38-46.