用戶身份驗證:超越密碼
對于廣大普通用戶來說,在訪問需要對身份進行確認的指定系統時,密碼就屬于最經常見到的工具之一。不過,由于密碼已經被公認屬于效力比較弱的身份驗證模式;所以,我們現在就需要利用到替代或者補充措施來對用戶實際身份進行更準確的確認。本文將對目前最經常使用的多因素身份驗證技術進行全面介紹,并對相關的優缺點進行詳細說明,為接下來的深入討論打好理論基礎。
身份驗證意味著什么?
所謂身份驗證,指的就是對一名普通人(或者一位用戶)所聲稱的情況是否符合實際進行確認的基本過程。在對用戶身份標識進行確認的時間,我們通常需要用到下面列出的三項基本“因素”:
1.使用只有用戶才能知道的隱私信息
2·使用只有用戶才能擁有的專門物品
3·使用只有用戶才能代表的獨特事物
當然,某些情況下,我們也可以在驗證過程中使用到包含時間與位置信息在內的其它類型因素。舉例來說,我們可以選擇利用某位特定用戶工作日程中的相關設定來對登錄時間的有效范圍進行相應的限制,還能夠利用地理位置信息來對用戶登錄網絡的具體位置進行控制。不過,由于這些因素往往只適用于非常特殊的情況下,所以它們在絕大多數時間里都只能作為基本身份驗證因素的補充措施使用。接下來,我們就一起來深入了解一下基礎認證因素的具體內容。
只有用戶才能知道的隱私信息
在所有基本因素的應用中,使用范圍最廣闊的一種情況就是依靠只有用戶才能知道的隱私信息(最常見的形式就是密碼)來對實際身份進行驗證。造成這種情況的原因就是,作為一種身份驗證方式,密碼不僅使用起來非常方便,而且在絕大多數情況下都可以達到成本低廉的效果。至于密碼的具體內容,則可以從最簡單的4位個人身份號碼到由字母數字組成非常復雜的口令這一寬廣領域中隨意選擇。
由于密碼已經變得非常流行,所以我們在選擇使用的時間就需要進行極其嚴格的專門審核。并且,在絕大多數情況下,它應該被認為屬于效力薄弱的驗證模式。單就密碼本身而言,最大的薄弱環節是用戶在使用時經常會表現出來的各種不良習慣。在確認密碼的時間,用戶往往會選擇利用可以被輕易猜到的簡單信息作為基礎,還有可能無法做到內容足夠復雜,而這就會導致系統被暴力破解攻擊輕松搞定的情況出現。當然,在某些情況下,錯誤的密碼策略也需要對所出現的問題承擔部分責任。不過,上面提到的部分問題可以通過對(包括最終用戶和技術人員在內的所有人員)使用者進行培訓和教育的方式來進行清除處理。
只有用戶才能擁有的專門物品
它作為另一項已經獲得了廣泛使用的因素,目前最常見的表現形式就是銀行卡。在這種情況下,系統所采用的基本原則就是:由于“用戶所擁有的專門物品”屬于特定人員所擁有的唯一項目,所以系統可以接受它作為用戶獲得授權的證明文件。
以計算機系統為例,里面就涉及到很多種采用該因素的驗證模式。它的使用范圍也非常廣泛,從智能卡,到USB令牌,無線令牌/卡以及最近出現利用手機作為令牌的項目(通過短信或下載的應用程序)不一而足。如果需要對這種類型的解決方案進行評估的話,我們就應該考慮到包括部署成本、硬件和軟件方面的需求、易用性、用戶驗收情況、項目耐久性等部分在內的的問題。
如果攻擊者試圖對這種類型的系統進行破壞,最直接的選擇就是竊取相關設備。這樣的話,攻擊者就可以利用擁有者報告遺失系統將被盜設備標記為無效之前的空窗期作為進行入侵的有效時間。此外,如果對設備進行復制處理的話,就可以在攻擊時帶來更好的效果。當然,不少系統中也可能會設置有復制保護機制,從而實現有效阻止這種類型攻擊的目標。在某些情況下,攻擊者也會選擇利用中間人模式來進行系統入侵。盡管這么做會讓實際操作變得更加復雜,但卻可以保證攻擊的隱蔽性和有效性獲得極大提高。舉例來說,最近針對RSA令牌所發起的成功攻擊就屬于極佳的例證。而移動類惡意軟件的蔓延則屬于另外一個典型的例子,攻擊者通過對手機造成威脅的方式變相實現了降低該認證因素實際效力的目標。
只有用戶才能代表的獨特事物
對于利用只有用戶才能代表的事物作為身份驗證模式的解決方案來說,通常選擇的是使用者生物體征方面的基本信息。而這往往就會涉及到指紋、聲紋或者虹膜類掃描技術,以及利用原始記錄中存檔進行比較的工作。
通常情況下,系統會將利用計量生物學技術獲得的具體讀數用某種數學算法處理成為一個哈希值并保存起來。在對用戶進行認證的時間,系統就會對兩個哈希值進行比較;如果它們之間的相似度達到了設定要求的話,用戶就會被認為確實屬于本人從而獲得系統訪問權限。對于生物識別設備來說,可能出現的錯誤有將虛假讀數當作正確的(假陽性)或者正確讀數被拒絕(假陰性)兩種。而對于制造商來說,用來計量這些錯誤等級的具體參數就是假陽性導致的錯誤接受率(FAR)以及假陰性導致的錯誤拒絕率(FRR)。為了對兩項讀數之間的準確性進行更好的比較,我們在這里還需要使用到相等錯誤率(EER,兩種錯誤相等時間的比率)。通常情況下,設備的EER越低,就意味著實際準確度越高。具體到實際部署的過程,這些類型的身份驗證措施也往往會面臨來自其它方面的挑戰。這其中就包括了相對較高的成本、用戶的抵制以及硬件方面的特殊需求。此外,我們必須考慮到的問題還包括了采集用戶原始讀數(“注冊”)并輸入到生物識別系統中這一啟動過程中會出現的問題。
對于生物識別器來說,工作時遭遇到有針對性的中間人攻擊并不屬于非常罕見的情況。而造成這種情況的原因就在于攻擊者能夠捕獲并記錄下原始讀數,隨意進行發送或者重播。此外,生物識別讀數的固有缺點就是可以被輕松復制或偽造(舉例來說,我們只要利用明膠就可以復制出一枚假指紋來,而依靠錄音技術就可以獲得識別語音),并且非常難于進行調整。畢竟,對于用戶來說,更換泄露的密碼或者領取新的智能卡都屬于非常簡單的工作,但如果想改變自己固有聲紋的話,基本上就屬于不可能完成的任務了。
對于生物類別的身份驗證技術來說,有時間還會涉及到“使用者行為表現”領域的相關工作。這種情況下,該技術通常不會被用來進行初始驗證,而是將側重于對既定身份進行確認。最典型的例子就是,當信用卡交易中出現反常使用情況時,用戶身份的真實有效性就會受到懷疑。目前,美國國防部高級研究計劃局正在尋找行為模式應用的新方法,以達到在無需打斷用戶正?;顒拥那闆r下對身份有效性進行驗證的目標。#p#
實施多因素認證:該考慮的問題
上面介紹了幾種基本的用于身份認證的認證要素,以及它們各自的優劣。下文將討論在采用多因素認證(多重認證)系統的時候要考慮哪些問題。
什么是多因素認證?
從字面理解,多因素認證即采用兩種或兩種以上的認證因素對用戶的身份進行認證。采用兩種認證因素的認證機制被稱作雙重認證或雙因素認證。典型的雙重認證是ATM卡和PIN碼組合而成的認證機制。它采用的是“你所持有的”(卡片)與“你所知道的”(PIN密碼)組合的機制。這里重點要強調的是,認證所考慮的多種因素之間應該是相互獨立的關系。比如,采用兩組密碼作為認證因素,并不能稱之為多因素認證,因為這種方式雖然經過多次認證過程,但只采用了一種認證因素即密碼因素。
多因素認證由于采取了類型獨立的多種認證因素,導致攻擊者也必須同時采用多種攻擊手段進行攻擊,大大增加了攻擊成功的難度。而要想有效的實施多因素認證機制,必須要注意一些要點。
成本
首先要考慮的就是成本問題。與直接購買軟件的許可證相比,實施多因素認證系統會涉及到一些隱性成本。比如你可能需要考慮到硬件設備分發的成本(口令卡,智能卡或生物特征識別器),或者涉及到生物特征識別的合理的成本。另外,技術支持的成本也要計算在內,因為能夠想象到在整套機制部署過程甚至部署完成后的一定時期內,要求技術支持的電話都會很頻繁。
事先評估解決方案的成本將有助于防止項目經費超過預算。對于那些沒有合適的風險管控機制,以及對企業最重要的資產和數據到底是什么或者存放在哪里都不清楚的企業領導來說,事先評估尤其重要。當然,也有可能你的項目成本就是企業的運營成本,尤其是在一些高度規范的行業,比如金融行業。
用戶接受度
其次考慮的就是用戶接受度了,也可以叫做“用戶排斥度”。比如對于大多數人來說,潛意識中都比較排斥和拒絕別人對自己進行的身體特征的掃描行為。另外對于體積笨重的身份識別設備,人們也不喜歡隨身攜帶,那些會影響到人們正常工作和生活流程的驗證步驟,他們也比較排斥。這些反對的聲音可以通過適當的管理策略來調和或強制實施,另一些則需要通過教育,改變人們的思維觀念和態度。
你還要清楚哪類人群將會是多因素驗證方案的最終用戶,他們的技術經驗如何,他們所使用的硬件和軟件類型是什么樣的。比如,如果企業用戶都在使用你所提供的標準的硬件和軟件,那么這種情況將幫你更恰當的制定出解決方案,并充分利用現有環境。相反,如果最終用戶與你的企業關系并不是那么緊密,你可能無法確切的知道他們在使用什么樣的硬件和軟件,因此你就需要找到一個適用范圍更廣的解決方案。
支持過程
在項目部署開始前,必須要對用戶進行日復一日的研究。比如,如果在你的多因素認證解決方案中,需要引入“你所知道的”這個因素作為身份認證的因素之一,你必然會遇到用戶忘記他們的密碼這種問題,因此你的解決方案中還應該加入密碼重置功能。此外還有很多需要考慮的,他們都與你所選擇的認證因素有關。下面就是一些你可能需要考慮到的事項:
1·口令或證書的撤銷
2·身份丟失或被盜的后續補救動作。
3·驗證系統受損或失敗后的替代方案。
另外,在認證系統中還要小心布置后門。很多時候,設計人員會出于“萬一”的考慮,在系統中留下一個后門,但是這個后門如果設置不當,將有可能讓整個身份認證系統形同虛設。
方案安全性
再次檢查你的方案的安全性,以確保驗證機制安全可靠,這聽上去有些多余,但是能讓你進一步確定整個驗證環節中不存在安全弱點。目前市場上很多產品會將關鍵內容以明文形式存放,比如存放在令牌或智能卡上,或者存放在后端服務器上。這對于生物學數據來說非常危險,因為一旦數據遭到竊取,受害人基本無法修改這些數據以避免未來身份被盜用的風險。
方案多種多樣
能夠使用多因素驗證系統的環境很多,而且不同的驗證因素相互組合,會令解決方案更加多種多樣,希望本文能幫助你設計出適合需求的更加有效的多因素身份認證系統方案。

























