您現在的位置是:首頁 > 手機遊戲首頁手機遊戲

林林總總的密碼安全裝置(二)

  • 由 密碼學普通工程師 發表于 手機遊戲
  • 2021-09-25
簡介在使用者進行指紋驗證時,指紋Key使用相同的演算法計算採集到指紋的特徵值,然後將此特徵值與裝置中儲存的特徵值進行對比,以驗證使用者身份

密碼機器是啊嘛

林林總總的密碼安全裝置(二)

指紋USB Key

林林總總的密碼安全裝置(二)

指紋USB Key或叫(指紋Key)本質上仍是一種USB Key,但它用指紋驗證來保護私鑰而不是口令保護,因此使用者在使用指紋Key簽名或解密時需要驗證指紋,其他方面和普通的USB Key沒有區別。指紋驗證大家都不陌生,上下班指紋打卡、手機指紋開機,都是每天用到的。指紋驗證的原理是 “世界上沒有相同指紋的手指”這一生物學特徵,大家都也都知道。但指紋驗證對比的是指紋影象的特徵點而非影象本身,因為就算同一個手指,每次採集的指紋影象都不會相同。具體工作過程是:使用者首先將常用的手指指紋錄入到指紋Key中,指紋Key根據特定的演算法計算出指紋影象的特徵點並儲存,留做驗證對比使用。在使用者進行指紋驗證時,指紋Key使用相同的演算法計算採集到指紋的特徵值,然後將此特徵值與裝置中儲存的特徵值進行對比,以驗證使用者身份。指紋影象的特徵值可以理解成有著很多特徵點的點陣,對比就是看兩個特徵值點陣中的特徵點有多少重合。一般要設定驗證閾值,重合特徵點個數不低於閾值,就可以認為兩個特徵值匹配,指紋驗證透過。可以根據實際應用情況調整閾值,比如假設影象有100個特徵點,我們可以把閾值設定成85,90或95,一般來講,閾值設定越高,指紋驗證就越嚴格。

反映指紋驗證演算法質量有兩個指標:拒真率和認假率。拒真率是正確指紋驗證不透過的機率,它與指紋驗證的效率負相關,拒真率越高,使用者驗證的效率就越低;認假率是錯誤的指紋驗證透過的機率,它與指紋驗證的質量負相關,認假率越高,指紋驗證越不靠譜。當然,指紋Key拒真率會遠高於認假率,因為“寧可錯殺三千,也不放過一個”。指紋作為身份驗證手段,安全永遠是第一位的。

電子裝置中的指紋採集模組主要有兩種型別,一種是光學採集,即利用光學裝置給指紋照相。光學指紋儀結構簡單,成本低廉,適用於多使用者使用的場景,常用於門禁、打卡等裝置。但由於光學採集需要較大面積的採集視窗和照明光源,體積一般較大,無法用在手機等移動裝置上。更重要的是,由於光學採集的原理就是照相,所以對於有指紋影象的物體(如高畫質的指紋照片、有完整指紋印記的橡皮泥),都可以採集到影象,而造成指紋驗證透過。因此指紋USB Key不能採用光學採集。第二種是活體採集,簡單的理解就是利用面板導電的原理,採集手指真皮層紋路的資訊。這樣就確保了只有對真人的手指才能採集到影象,而且採集視窗可以做的比較小。因此指紋USB Key、手機都採用這種採集方式。

應用系統結合指紋USB Key的開發方式和結合普通的USB Key沒有區別。

密碼機

這裡說的密碼機並不是那種古老的Enigma密碼機,而是指伺服器密碼機。

林林總總的密碼安全裝置(二)

伺服器密碼機本質上就是一臺專用伺服器計算機,內建了定製過的作業系統(基本都是Linux),只能執行預裝的程式,使用者無法自行裝和解除安裝程式,而且系統只能透過指定的方式訪問。你可以把密碼機理解成伺服器版的USB Key,因為它實現的密碼學功能和USB Key並無二致。如證書金鑰的儲存管理、數字簽名、對稱及非對稱加解密等。但由於密碼機畢竟是真正的計算機,而且還是伺服器型別,它的功能和效能當然不是USB Key可同日而語的。密碼機可以儲存管理多組證書和金鑰;快速進行海量的數字簽名(這一點可以說是密碼機的靈魂了)及加解密運算;有著完備的安全保障機制和資料備份機制。因此,密碼機一般應在業務系統後臺,處理高併發、大資料量的密碼服務應用。如CA伺服器簽發數字證書、金融系統重要業務資料的傳輸加解密。當然密碼機的價格也是USB Key問都不敢問的,市面上主流密碼機在幾萬到十幾萬一臺左右。

密碼機在使用時,和一般的伺服器類似,透過交換機、閘道器等裝置接入網路,與業務系統伺服器連線。出於安全考慮,密碼機都提供白名單功能,只有指定的網路地址才能訪問密碼機。但就算沒有白名單功能,在設計應用的網路拓撲時,也應該做到密碼機只對用到它的業務系統伺服器開放,對其他伺服器隱藏或不可訪問。對於簽發證書的CA系統來講,密碼機更是其安全保護的核心,那個簽發了無數張證書,處於龐大證書鏈頂端的私鑰,就是存放在密碼機裡。

雖然說密碼機性質上和USB Key一致,但很少有廠商為密碼機提供CSP的(我這麼多年就遇到過一次),基本上都是提供基於Java的介面,開發時照著手冊呼叫即可。這些介面一般都是基於對Socket通訊的封裝。密碼機的結合難度明顯高於USB Key,這就更凸顯出了學習密碼學的重要性了。

密碼卡

林林總總的密碼安全裝置(二)

此外,鑑於密碼機美麗的價格,市場上還有一種密碼機的替代品——密碼卡。密碼卡是一塊可插入計算機主機板的板卡,一般採用PCI介面,板卡上安裝了實現密碼功能的硬體和預置的軟體。那些有高效能密碼運算需求但又沒那麼多預算的業務系統,可以在其伺服器上嵌入密碼卡,呼叫其介面,實現密碼功能。另外,密碼卡可以將一臺普通的計算機變成密碼機。在計算機主機板上插入密碼卡,並進行相應的二次開發,這臺計算機就可以依託密碼卡實現密碼功能,並對外提供服務,就像一臺真正的伺服器密碼機那樣。密碼卡的價格有高有低,幾千元的居多,很少能超過一萬元。

Top