計算機身份認證的技術分析和比較
摘要:本文綜合評價了某些認證機制和方案的優(yōu)劣,并分析了身份認證的理論和應用,列舉了一些對身份認證的各種實現方法、技術現狀及發(fā)展趨勢,同時設計了一個利用數字簽名實現的簡單的身份認證方案。
本文引用地址:http://butianyuan.cn/article/202265.htm關鍵詞:身份認證技術 分析 比較 運用
隨著網絡時代的到來,人們可以通過網絡得到各種各樣的信息。但由于網絡的開放性,它正面臨著如計算機病毒、人為的惡意攻擊、網絡軟件的漏洞和“后門”、非授權訪問等安全威脅。因此,網絡安全越來越受到重視。作為網絡安全的第一道防線,亦即是最重要的一道防線,身份認證技術受到普遍關注。
一、基于秘密信息的身份認證方法
1、口令核對
口令核對是系統(tǒng)為每一個合法用戶建立一個用戶名/口令對,當用戶登錄系統(tǒng)或使用某項功能時,提示用戶輸入自己的用戶名和口令,系統(tǒng)通過核對用戶輸入的用戶名、口令與系統(tǒng)內已有的合法用戶的用戶名/口令對(這些用戶名/口令對在系統(tǒng)內是加密存儲的)是否匹配,如與某一項用戶名/口令對匹配,則該用戶的身份得到了認證。
缺點:其安全性僅僅基于用戶口令的保密性,而用戶口令一般較短且是靜態(tài)數據,容易猜測,且易被攻擊,采用窺探、字典攻擊、窮舉嘗試、網絡數據流竊聽、重放攻擊等很容易攻破該認證系統(tǒng)。
2、單向認證
如果通信的雙方只需要一方被另一方鑒別身份,這樣的認證過程就是一種單向認證,即前面所述口令核對法就算是一種單向認證,只是這咱簡單的單向認證還沒有與密_分發(fā)相結合。
與密_分發(fā)相結合的單向認證主要有兩類方案:一類采用對密_加密體制,需要一個可信賴的第三方DDD通常稱為KDC(密_分發(fā)中心)或AS (認證服務器),同這個第三方來實現通信雙方的身份認證和密_分發(fā)如DES算法,優(yōu)點運算量小、速度快、安全度高,但其密_的秘密分發(fā)難度大;另一類采用非對稱密_加密體制,加密和解密使用不同的密_SK,無需第三方參與,典型的公_加密算法有RSA。認證優(yōu)點能適應網絡的開放性要求,密_管理簡單,并且可方便地實現數字簽名和身份認證等功能,是目前電子商務等技術的核心基礎。其缺點是算法復雜。
3、雙向認證
雙向認證中,通信雙方需要互相鑒別各自的身分,然后交換會話密_,典型方案是Needham/Schroeder協(xié)議。優(yōu)點保密性高但會遇到消息重放攻擊。
4、身份的零知識證明
通常的身份認證都要求傳輸口令或身份信息,但如果能夠不傳輸這些信息身份也得到認證就好了。零知識證明就是這樣一種技術:被認證方A掌握某些秘密信息,A想設法讓認證方B相信他確實掌握那些信息,但又不想讓認證方B知道那些信息。
如著名的Feige-Fiat-shamir零知識身份認證協(xié)議的一個簡化方案。
假設可信賴仲裁選定一個隨機模數n,n為兩個大素乘積,實際中至少為512位或長達1024位。仲裁方產生隨機數V,使X2=V mod n,即V為模n的剩余,且有V-1mod n存在。以V作為證明者的公_,而后計算最小的整數s:s=sqrt(v-1)mod n作為被認證方的私_。實施身份證明的協(xié)議如下:被認證方A取隨機數r,這里rm,計算x=r2 mod m,把X送給認證方B;若b=1,則A將Y=RS送給B;若b=0,則B驗證x=r2 mod m,從而證實A知道sqrt(x);若b=1,則B驗證x=y2.v mod m,從而證實A知道S。
這是一輪鑒定,A和B可將此協(xié)議重復t次,直到A相信B知道S為止。
二、基于物理安全性的身份認證方法
盡管前面提到的身份認證方法在原理上有很多不同,但他們有一個共同的特點,就是只依賴于用戶知道的某個秘密的信息。與此對照,另一類身份認證方案是依賴于用戶特有的某些生物學信息或用戶持有的硬件。
基于生物學的方案包括基于指紋識別的身份認證、基于聲音識別身份認證以及基于虹膜識別的身份認證等技術。該技術采用計算機的強大功能和網絡技術進行圖像處理和模式識別,具有很好的安全性、可靠性和有效性,與傳統(tǒng)的身份確認手段相比,無疑產生了質的飛躍。近幾年來,全球的生物識別技術已從研究階段轉向應用階段,對該技術的研究和應用如火如茶,前景十分廣闊。
三、身份認證的應用
1、Kerberos是MIT為分布式網絡設計的可信第三方認證協(xié)議。網絡上的Kerberos服務起著可信仲裁者的作用,它可提供安全的網絡認證,允許個人訪問網絡中不同的機器。Kerberos基于對稱密碼技術(采用DES進行數據加密,但也可用其他算法替代),它與網絡上的每個實體分別共享一個不同的密_,是否知道該密_便是身份的證明。其設計目標是通過密_系統(tǒng)為客戶/服務器應用程序提供強大的認證服務。該認證過程的實現不依賴于主機操作系統(tǒng)的認證,無需基于主機地址的信任,不要求網絡上所有主機的物理安全,并假定網絡上傳送的數據包可以被任意地讀取、修改和插入數據。
Kerberos也存在一些問題: Kerberos服務服務器的損壞將使得整個安全系統(tǒng)無法工作;AS在傳輸用戶與TGS間的會話密_時是以用戶密_加密的,而用戶密_是由用戶口令生成的,因此可能受到口令猜測的攻擊;Kerberos 使用了時間戳,因此存在時間同步問題;要將Kerberos用于某一應用系統(tǒng),則該系統(tǒng)的客戶端和服務器端軟件都要作一定的修改。
2、HTTP中的身份認證
HTTP提供了一個基于口令的基本認證方法,目前,所有的Web服務器都可以通過“基本身份認證”支持訪問控制。當用戶請求某個頁面或運行某個CGI程序時,被訪問訪問對象所在目錄下有訪問控制文件(如NCSA用.haaccess文件)規(guī)定那些用戶可以訪問該目錄,Web服務器讀取該訪問控制文件,從中獲得訪問控制信息并要求客戶提交用戶名和口令對經過一定的編碼(一般是Base64方式),付給服務方,在檢驗了用戶身份和口令后,服務方才發(fā)送回所請求的頁面或執(zhí)行EGI程序。所以,HTTP采用的是一種明文傳輸的口令核對方式(傳輸過程中盡管進行了編碼,但并沒有加密),缺少安全性。
用戶可以先把使用SSI建立加密信道后再采用基本身份認證方式進行身份認證,而是基于IP地址的身份認證。
3、IP中的身份認證
IP協(xié)議由于在網絡層,無法理解更高層的信息,所以IP協(xié)議中的身份認證實際不可能是基于用戶的身份認證,而是基于IP地址的身份認證。
評論