徐 輝,張 瑩,步曉亮,李 強
(中國電子科技集團公司第三十研究所,四川 成都 610041)
為了確保各種信息和服務在網絡上安全進行,安全身份認證是網絡安全系統措施的一個重要部分。
目前,PKI認證體系是應用最廣泛、最成熟的一種身份認證機制,但要求用戶必須安全保存其密鑰。一方面復雜的口令難以記住,另一方面簡單的口令密碼容易被黑客通過各種方式破解而造成安全威脅,因此在安全要求更高或者某些特殊場合,需要其他的方法來保護密碼。
生物特征認證是利用人的生物特征來進行身份認證的一種手段。隨著計算機的發展和各種算法的不斷改進,生物特征認證技術作為一種準確、快速和高效的身份認證方法,正被越來越廣泛地應用于各種需要身份認證的領域[1]。
本文設計了一套將生物特征和PKI認證相結合的PKI/CA系統,實現了生物特征和PKI認證兩種認證技術的優勢互補,可提供更安全性、更可靠的身份認證服務,以滿足不同安全級別的身份認證應用場景。
人的生物特征可以分為兩大類:動態特征(如語音、簽名、不太、唇形動作和擊鍵模式)和靜態特征(如指紋、虹膜、視網膜、手形、耳形和手掌靜脈圖)。生物特征認證技術是提取具有唯一性的生理特征或行為方式作為認證依據的技術。整個認證過程分為四個步驟:生物特征提取、特征模板生成、特征策略與比較和特征匹配。生物特征認證系統首先提取人的生物特征,經過數模轉換后提取其唯一的特征。然后,把這些特征描述進一步歸納和總結生成特征模板。認證系統在驗證人的身份時,利用相應傳感器獲取其特征,并轉換成預定義的數字格式,對比測量結果和特征模板,根據匹配程度判斷這個人的合法性。
理論上,一個生物特征要想用于身份認證系統,必須滿足如下要求[2]:
唯一性:必須可以從此特征導出此人的身份,沒有兩個人有相匹配的特征值;
穩定性:此特征不會隨時間推移顯著改變;
普遍性:所有需要進行身份認證的人都擁有此特征;
可收集性:此特征能夠被量化測量。
實際應用中,還有三個重要因素也需要考慮[2]:
(1)在合理的資源需求下,實現可接受的識別準確度和速度;
(2)對人沒有傷害且可為人們接受;
(3)對各種欺詐方法有足夠的防御性。
目前,人們研究和使用的生物特征識別技術主要有指紋識別、人臉識別、虹膜識別、掌形識別、掌紋識別、簽名識別、語音識別和鍵擊識別等。每種生物特征測定技術都有各自的長處和局限,適用于不同的認證應用。
公共密鑰基礎設施PKI(Public Key Infrastructure)技術以公鑰技術為基礎,以數字證書為媒介,將個人、組織、設備的標識信息與各自的公鑰捆綁,主要目的是通過自動管理密鑰和證書,為用戶建立一個安全、可行的網絡運行環境,使用戶可以在多種應用環境下方便地使用加密和數字簽名技術,在互聯網上驗證用戶身份,從而保證互聯網上傳輸信息的真實性、完整性、機密性和不可否認性[2]。目前,PKI可以提供的安全服務包括:身份認證、數據保密性、數據完整性能夠和不可抵賴性等。用戶可以利用PKI提供的這些安全服務進行安全電子交易、電子政務等服務。PKI可以提供認證、完整性和機密性等核心服務,還可以支撐安全通信、安全時間戳、公正和不可否認等服務。
當前,PKI/CA技術體系比較成熟,國內外相關的PKI/CA產品和實際運用均比較成熟。隨著生物特征識別及相關認證技術的快速發展,如何將生物特征與PKI/CA技術相結合,以改進基于PKI/CA認證的安全性,降低PKI/CA維護和管理的復雜性,是當前身份認證研究的一個熱點。目前,生物特征主要可從以下三個方面與PKI/CA技術體系相結合。
因PKI/CA頒發的數字證書通常存儲在USBKEY、IC卡中或其他文件中。使用USBKEY、IC卡中數字證書時,都需要使用口令,存在口令易忘記、易竊取的風險。生物特征作為口令是指將生物特征識別數據作為訪問這些證書存儲介質的口令,以避免出現上述風險,且更容易保管。比如:使用具有指紋識別的USBKEY存儲PKI/CA頒發的證書,將指紋信息作為訪問口令,一定程序上改善并提高了安全性。
生物特征作為認證因子是指將生物特征信息作為PKI/CA系統中數字證書的一個證書項或擴展項存儲,使個人的數字證書能夠與其生物特征信息捆綁起來,為雙重認證提供技術手段。在使用數字證書進行身份認證時,由數字證書完成傳統的證書認證過程部分;由證書中的生物特征信息完成基于生物特征的識別和認證過程;最后,將兩部分認證結果歸結在一起作為一個認證結果反饋。也可以根據實際需要,分別只作基于證書的認證或生物特征識別的認證。通常,此種方式運用在安全級別較高的場景。這種結合方式提升了PKI/CA認證系統的靈活性、安全性,滿足了不同的證書運用需求。
生物特征作為密鑰是指將生物特征信息作為個人密鑰信息,通過某種算法對敏感數據進行保護。比如:將生物特征作為對稱密鑰,用于加密/解密一些重要數據信息;或將生物特征作為非對稱密鑰對中的私鑰信息,通過某種密碼算法計算相應的公鑰信息,而該公鑰信息則通過PKI/CA中的證書形式進行分發和使用。由于生物特征的唯一性且其依附在具體每個個人身體上,因此通過此種方式可確保生物特征作為密鑰在分發、使用和存儲中的安全。
本文基于生物特征作為認證因子的思路,采用相對松耦合方式進行設計。生物特征數據信息本身不存儲在證書中,僅通過PKI/CA系統頒發可索引生物特征信息的數字證書,實現證書+生物特征的雙因子機制。具體地,PKI/CA系統采用X.509數字證書將生物特征有關信息與證書關聯起來。但是,生物特征數據信息本身不存儲在證書中,僅在證書擴展項存儲生物特征信息的索引標記。通過該索引標記項可以檢索到后端相應的生物特征數據信息庫。后端的生物特征數據信息庫和PKI/CA的證書數據信息庫分別獨立。設計原理如圖1所示。

圖1 設計原理
本設計中采用X.509V3標準的證書格式存儲個人相關的基本信息,并由PKI/CA進行簽發,設計了生物特征數據模板來存儲有關個人的生物特征信息,兩者之間通過自定義的特征標識進行關聯和索引。本文重點對系統的關鍵證書項和生物特征數據信息項進行研究和設計,有關生物特征信息的保護是另一個研究方向,在文獻[3]中有進一步研究,本文不再贅述。本設計中,證書和生物特征數據模板存儲數據如圖2所示。

圖2 關鍵數據信息
其中,系統頒發的證書由基本證書域和證書擴展構成。基本證書域是填充有關證書信息的基本信息,證書擴展則提供了關聯用戶或公鑰的附加性質和管理驗證層次的方法,允許自定義私有的擴展,使證書具備獨有的信息?;咀C書域包括版本、序列號、使用者主題、有效期、頒發者主題、證書公鑰信息、擴展項和頒發者簽名等。證書擴展項中除了包含X.509標準的證書擴展項外,自定義了一個生物特征信息標識項,可通過該項將標準的證書與其相對應的生物特征信息關聯起來。
生物特征數據模板主要由以下項構成。
生物特征標識:唯一,是證書與生物特征數據信息關聯的關鍵項。通常,可將計算生物特征數據信息內容計算HASH值作為該項的填充值,以確保其唯一性。
數據信息內容:存儲的生物特征具體內容。本設計中該項作為生物特征識別驗證的基準值。
生物特征算法:指定進行生物特征驗證時所采用的算法。
特征類型:指定相應的生物特征類型,如0代表指紋、1代表面部照片等。
識碼率:指定生物特征所容忍的識別校驗偏差,如1%,表示生物特征信息識別驗證誤差在±1%之內均可接受。
有效期:指定該生物特征數據信息的有效時間段。
頒發者簽名:對該生物特征數據信息模板進行簽名,保護其完整性和真實性。該項由和數字證書相同的權威頒發者進行簽名。
基于上述生物特征數據模板數據項進行驗證的原理,如圖3所示。

圖3 生物特征驗證原理
如圖3所示,生物特征數據通過相應的算法計算生物特征數據,之后通過與生物特征基準數據進行對比[4-5],偏差在識碼率范圍之內則認為生物特征匹配,否則認為不匹配。
在結合生物特征的PKI/CA系統中,證書申請過程中除了提交個人的基本信息外,還需要提交相應的個人生物特征信息,以便系統能夠頒發數字證書,并按照生物特征數據信息模板存儲相應的生物特征數據。證書驗證過程中,需要提交個人數字證書和生物特征信息,系統可通過證書和生物特征信息進行雙重驗證,確保驗證的真實可靠。本章將重點說明上述兩個流程,其他有關證書全生命周期的管理與此類似,不再復述。
4.3.1 證書申請流程設計
結合生物特征通過本系統注冊申請數字證書的過程,如圖4所示。
證書申請流程說明如下:在通過本系統申請證書時,首先注冊填寫個人信息,同時提交個人的生物特征信息。系統分別對提交的個人信息和生物特征信息進行有效性驗證。通過檢查的信息,系統將根據生物特征信息生成相應的模板數據,同時頒發與之對應的數字證書。最后,系統分別將證書信息存儲至證書數據庫中,將生物特征模板信息存儲至生物特征庫中。
4.3.2 證書驗證流程設計
系統頒發的證書在進行證書驗證時,流程如圖5所示。

圖4 證書申請流程

圖5 證書驗證流程
證書驗證流程說明。系統接收到證書驗證請求信息后,首先解析請求中是否包含被驗證人的證書和生物特征信息。如果含有生物特征信息,則通過解析證書中的擴展項取得特征信息標識,并通過該特征信息標識檢索特征信息庫,取得相應生物特征基準數據,驗證被驗證人的生物特征信息。通過生物特征信息驗證后,再對個人的證書進行有效性驗證。上述設計了證書驗證的基本原理流程,詳細的生物特征雙因子認證協議設計可參照文獻[6],本文不再贅述。
安全性方面,本系統分別設計了證書庫、生物特征信息庫兩個相互獨立庫,實現了證書信息和生物特征信息的邏輯隔離。個人證書基于X.509V3標準證書格式,使用PKI/CA系統中證書權威頒發機構對其簽名,保證了證書中信息的完整性和可信性。同時,對存儲生物特征信息模板數據進行并使用PKI/CA系統中證書權威頒發機構的簽名保護,確保了其完整性和可信性。
效用性方面,本系統能夠頒發數字證書,滿足傳統的基于證書進行身份驗證的應用需求。還能夠使得證書與個人的生物特征信息進行捆綁,實現證書+生物特征的雙重身份認證,滿足安全性較高、對身份驗證要求較嚴格的應用場景。
本文描述的結合生物特征的PKI/CA系統采用X.509v3數字證書格式和制定的生物特征信息模板,實現了證書與個人生物特征的結合,對主要的證書申請、證書驗證流程進行了設計。該設計可將個人指紋、面部圖像等生物特征有效的運用到傳統的PKI/CA體系中,分別滿足了僅基于證書、僅基于生物特征或證書+生物特征的雙重認證三種身份驗證的應用場景,極大地提升了傳統PKI/CA認證體系的實際使用范圍,提高了相關應用的安全性。