ePassNG是基於USB Key身份驗證硬體的一個中間件平台
是基於USB Key身份驗證硬體的一個中間件平台---ePassNG,廠家基於這個標準生產的USB Key,都可以通用。
隨著網際網路和電子商務的發展,USB Key作為網路用戶身份識別和數據保護的"電子鑰匙",正在被越來越多的用戶所認識和使用。本文對USB Key的產生和未來的發展趨勢作了一個簡單的介紹。
目前市場上見到的USB Key 按照硬體晶片不同可以分為使用智慧卡晶片的和不使用智慧卡晶片兩種,按照CPU是否內置加密算法又可以分為帶算法和不帶算法的USB Key。一般我們把不帶加密算法的稱為存儲型USB Key,帶加密算法的稱為加密型USB Key。
軟體保護思想的發展催生了USB Key
USB Key 這個概念最早是由加密鎖廠家提出來的,加密鎖是用來防止軟體盜版的硬體產品,加密鎖的概念是使安裝在計算機內的應用程式脫離加密鎖硬體無法運行來達到保護軟體不被盜版的目的。隨著網路套用的不斷深入和套用軟體銷售模式的改變,未來的軟體用戶可能不需要購買軟體在本地計算機上安裝運行,而是將要處理的數據通過網路上傳到專門運行該軟體服務的套用伺服器上處理,再通過網路取得數據處理的結果,軟體開發商通過提供該套用服務收取軟體費用。這個時候,軟體廠商面臨的問題就不再是如何防止本地軟體被複製,而是如何確認網路用戶的身份和用戶數據的安全。於是加密鎖廠商提出了USB Key的概念,用於識別用戶身份。作為國內最大的軟體保護廠家,北京飛天誠信科技有限公司於2000年推出了國內第一款USB Key產品---ePass1000。
此後,隨著電子商務和PKI套用的興起,數字證書作為確認用戶身份和保護用戶數據有效手段越來越被人們所接受。然而數字證書實質上表現為帶有用戶信息和密鑰的一個數據檔案,如何保護數字證書本身又成為PKI體系中最薄弱的環節。數字證書可以保存在各種存儲介質上,如軟碟、硬碟等。國內CA早期頒發的數字證書都是以軟碟的形式發放,或者由用戶從網路上下載,然後導入到系統中保存在硬碟上。然而,用軟碟保存數據是非常不可靠和不安全的,軟碟雖然便於攜帶,卻非常容易損壞,而用硬碟保存數據雖然不容易損壞,但是不便於攜帶,更致命的是不論用硬碟還是用軟碟保存數字證書都非常容易被複製或被病毒破壞。雖然一般數字證書都帶有密碼保護,然而一旦證書被非法複製,整個安全系統的安全性就降低到僅僅靠密碼保護的級別。於是,專門用於存儲秘密信息的USB Key就很自然的成為數字證書的最佳載體。
USB Key 廠家將USB Key與PKI技術相結合,開發出了符合PKI標準的安全中間件,利用USB Key來保存數字證書和用戶私鑰,並對套用開發商提供符合PKI標準的編程接口如PKCS#11和MSCAPI,以便於開發基於PKI的應用程式。由於USB Key 本身作為密鑰存儲器,其自身的硬體結構決定了用戶只能通過廠商編程接口訪問數據,這就保證了保存在USB Key中的數字證書無法被複製,並且每一個USB Key都帶有PIN碼保護,這樣USB Key的硬體和PIN碼構成了可以使用證書的兩個必要因子。如果用戶PIN碼被泄漏,只要保存好USB Key的硬體就可以保護自己的證書不被盜用,如果用戶的USB Key丟失,獲得者由於不知道該硬體的PIN碼,也無法盜用用戶存在USB Key中的證書。與PKI技術的結合使USB Key的套用領域從僅確認用戶身份,到可以使用數字證書的所有領域。
與智慧卡技術結合增強了USB Token的安全性
存儲型的USB Key由於其硬體功能的限制,僅能實現簡單的數據摘要算法,對於PKI中廣泛使用的對稱和非對稱加密算法只能通過運行在PC上的中間件來實現,這樣在加密和簽名運算中用戶的密鑰就會出現在記憶體中,有可能被技術高超的黑客獲取。隨著用戶對信息安全要求的提高,市場出現了由硬體實現加密運算的需求。智慧卡技術的發展,智慧卡運算能力不斷提高,出現了可以運行加密算法的智慧卡。然而,以卡片形式存在的智慧卡在使用時必須通過讀卡器與電腦通訊,非常不方便用戶使用。於是出現了將智慧卡晶片和讀卡器結合在一起的USB Key。飛天誠信的ePass2000系列USB Key就是帶有智慧卡晶片的USB Key。ePass2000可以通過內置的智慧卡晶片在Key內部硬體實現DES/3DES、RSA加解密運算,並支持Key內生成RSA密鑰對,杜絕了密鑰在客戶端記憶體中出現的可能性,大大提高了安全性。
隨著電子政務和電子商務的發展,國內各地區和各行各業都建立了自己的CA並向各自的客戶提供數字證書服務,使用數字證書的用戶越來越多,由於USB Key在證書存儲方面的優越性,越來越多的CA和用戶選擇了USB Key作為他們的證書存儲介質。另一方面,隨著USB Key市場的擴大,越來越多的廠家特別是原來的智慧卡廠家進入USB Key的市場,隨之也帶來了一些問題。目前困擾用戶與各CA中心的主要有以下幾個問題:
一是現在市場上的USB Key在客戶端都需要安裝驅動程式,由於證書用戶計算機套用水平的參差不齊,安裝驅動程式成為一個讓廣大用戶頭疼的問題,各CA中心在客戶服務中也需要投入大量的人力物力來解決用戶驅動安裝中出現的種種問題。
最近,北京飛天誠信科技有限公司推出了國內第一款無驅型的USB Key---ePassND。ePassND採用HID擴展設備技術,利用作業系統內置的標準HID驅動實現對USB Key的訪問。在Windows 98以上的作業系統中使用ePassND無需另外安裝驅動程式,大大方便了廣大用戶的使用並大大降低了各CA中心的客戶維護成本。作為標準HID設備,ePassND不僅在微軟平台上能實現無驅,在Linux和Mac OS等作業系統下也無需安裝驅動程式。
其二是隨著USB Key廠家越來越多,各廠家USB Key的硬體功能和中間件操作方式不盡相同,各CA中心為了支持多家的USB Key,不得不在自己的系統中使用和維護各廠家的初始化工具,給CA中心在頒發USB Key的過程中添加了巨大的工作量。
作為國內首家推出USB Key的廠家,北京飛天誠信科技有限公司為了解決這個問題,推出了與硬體無關的中間件平台---ePassNG,ePassNG通過在標準PKI接口和硬體驅動之間加入一個TSP(Token Service Provider)的方式來實現對硬體的操作。ePassNG將與硬體有關的所有操作封裝在TSP中,PKI應用程式無需了解其使用的硬體的特性,硬體廠家只需要提供符合ePassNG標準的TSP,就可以在用戶原來的套用中使用。
ePassNG套用構架
可以看到,在ePassNG構架中,CA中心和PKI應用程式開發商只需要針對ePassNG提供的中間件進行開發,而不必考慮使用的USB Key或其他證書存儲介質的硬體特性,真正實現套用系統的硬體無關性。而硬體廠家也不需要開發自己的中間件,只需要提供符合ePassNG的TSP就可以在原有的套用中使用。
ePassNG不僅支持Windows平台,也同時支持Linux和Mac OS平台,真正實現了套用與硬體無關。