專利名稱:自動隨機一次性密碼提高網絡交易安全的認證方法
技術領域:
本發明涉及一種在計算機網絡上進行商務交易的加密技術。尤其是一種通過自動隨機一次性密碼提高網絡交易安全的認證方法。
為達到上述目的,本發明采用如下技術方案它有網絡服務器和用戶計算機,由服務器端認證程序模塊、下載到用戶端的Applet程序模塊、插接在用戶端計算機USB接口上的密碼安全裝置、該密碼安全裝置對應的驅動程序及用戶端應用程序模塊組成;用戶在ID密碼登錄方式認證后增加如下認證方法服務器端根據用戶通常的ID-密碼登錄方式要求的用戶ID,將對應的已在服務器端預先登錄的永久性USB固有制造ID,用戶ID,用途ID及Applet程序模塊傳送給用戶端;其中用途ID可對應網上交易的多種用途使用。
傳送至用戶端的Applet程序模塊與用戶端應用程序模塊進行通信,通過驅動程序取得插接在用戶計算機USB接口上的密碼安全裝置內的原密碼;下載到用戶端的Applet程序模塊將該原密碼發送給服務器端的認證程序模塊;認證程序模塊對得到的原密碼進行認證,如果是合法的,將發行新的密碼;否則,通知用戶端認證工作失敗;認證程序模塊將新密碼發送給用戶端的Applet程序模塊;用戶端的Applet程序模塊與用戶端應用程序模塊進行通信,將上述發行的新密碼保存于插接在用戶計算機USB接口上的密碼安全裝置內;用戶端的Applet程序模塊通知服務器端的認證程序模塊插接在用戶計算機USB接口上的密碼安全裝置內的新密碼保存完畢;服務器端的認證程序模塊通知用戶端的Applet程序模塊,收到以上信息;用戶端的Applet程序模塊與用戶端應用程序模塊進行通信,完成插接在用戶計算機USB接口上的密碼裝置內新密碼的更換;用戶端的Applet程序模塊通知服務器端的認證程序模塊插接在用戶計算機USB接口上的密碼安全裝置內的新密碼更改完成;服務器端的認證程序模塊記憶新的密碼;進行具體的網上交易活動。
所述插接在用戶端計算機USB接口上的密碼安全裝置內含有USB驅動設備、8-32M存儲器及微處理器(MCU)等硬件。
采用上述技術方案,就是在通常的ID密碼登錄認證之后,又增加了這套自動隨機一次性密碼的認證系統。本認證系統采用128-1024或更長的密碼,每次密碼都發生隨機改變且該密碼保存在可移動的插接在用戶計算機USB接口上的密碼安全裝置內。用戶在使用中需要象鑰匙一樣地去使用該密碼安全裝置,才能進入網上用戶進行交易。沒有它,根本無法進入網上用戶。因此,即使通常的登錄密碼被盜用,本發明的這套自動認證系統仍能防止非法者進入系統。本發明的所有密碼的發行、保存以及通信都是自動進行的。也就是說,本發明在通常的ID密碼登錄認證之后,又加上了一層更加難以破解的密碼認證系統。
作為本發明的進一步改進,所述服務器端認證程序模塊為嵌入服務器端Web系統中的一般應用程序。
所述下載到用戶端的Applet程序模塊為嵌入在HTML內的用JAVA語言寫成的標準Applet程序。
所述插接在用戶端計算機USB接口上的密碼安全裝置對應的驅動程序為使用C語言及匯編語言編寫同時適于Windows2000,WindowsXP,WindowsME,Linux等操作系統中運行的程序。
所述用戶端應用程序為保存在用戶端計算機內系統程序。
作為本發明的更進一步改進,所述插接在用戶端計算機USB接口上的密碼安全裝置還包括一顯示器及該顯示器的驅動設備。
本發明的認證方法同現行網上商務交易的安全防護措施相比具有如下優點在進行通常的ID密碼登錄認證方式后,又增加了自動隨機一次性密碼的認證系統以加強網上商務交易的安全防護;因本發明認證系統在通常的密碼登錄認證的背后,其密碼與通常的ID密碼登錄認證的密碼無任何關系并且每次訪問其密碼都在改變,即使通常的ID密碼登錄認證方式的密碼泄露也可不必擔心;由于幾乎所有的用戶計算機都有USB接口,因此具有廣泛的應用領域;例如網上股票證券交易、網上銀行、網上拍賣、網上教學、網上購物包括利用信用卡或其他付款方式結算等各種網上商業行為;引入本發明是利用計算機串行總線接入的技術對用戶端的計算機系統無任何影響,對服務器端的網上商務交易系統影響較小;不僅服務器端對用戶端進行認證,反過來,用戶端通過系統應用程序取得插接在USB接口上的密碼安全裝置的永久性固有制造ID,用戶ID,用途ID與服務器傳送來的對應數據進行比較,對服務器端進行認證,故具有可靠的安全性能;插接在USB接口上的密碼安全裝置體積較小,便于攜帶。
圖2為本發明自動隨機一次性密碼提高網絡交易安全的認證方法中插接在用戶計算機USB接口上的密碼安全裝置的電路結構示意圖。
圖3為本發明用戶端應用程序模塊的概要程序流程圖。
圖4為本發明服務器端認證程序模塊的概要程序流程圖。
圖5為本發明中Applet程序模塊的概要程序流程圖。
傳送至用戶端的Applet程序模塊5與用戶端應用程序模塊3進行通信,通過驅動程序2取得插接在USB接口上的密碼安全裝置1內的原密碼即上次交易的隨機一次性密碼;下載到用戶端的Applet程序模塊5將該原密碼發送給服務器端的認證程序模塊4;認證程序模塊4對得到的原密碼進行認證,如果是合法的,將發行新的密碼;如否,則通知用戶端認證工作失敗;認證程序模塊4將新密碼發送給用戶端的Applet程序模塊5;用戶端的Applet程序模塊5與用戶端應用程序模塊3進行通信,將上述發行的新密碼保存于插接在用戶計算機USB接口上的密碼安全裝置1內;用戶端的Applet程序模塊5通知服務器端的認證程序模塊4插接在用戶計算機USB接口上的密碼安全裝置1內的新密碼保存完畢;
服務器端的認證程序模塊4通知用戶端的Applet程序模塊5收到以上信息后,用戶端的Applet程序模塊5與用戶端應用程序模塊3進行通信,完成插接在用戶計算機USB接口上的密碼安全裝置1內新密碼的更換工作;用戶端的Applet程序模塊5通知服務器端的認證程序模塊4插接在用戶計算機USB接口上的密碼安全裝置1內的新密碼更改完成;服務器端的認證程序模塊4記憶新的密碼;進行具體的網上交易活動。
所述插接在用戶計算機USB接口上的密碼安全裝置1內含有USB驅動設備、8-32M存儲器及微處理器(MCU)及小型液晶顯示設備LCD、與液晶顯示設備相連的液晶顯示驅動設備(如圖2所示)。插接在用戶計算機USB接口上的密碼安全裝置1是一種基于計算機通用串行總線接口(USB接口)的計算機外圍設備。主要用于保存隨機一次性密碼及與用戶計算機進行通信。本設備有一個永久性固有制造ID,具有唯一性以用于區分及登錄用戶身份。
存儲器內的一次性密碼的長度為128-1024或更長。用戶ID用于區分不同的用途,使一個設備用于多個目的。例如用戶ID1用于某證券公司的網上交易帳戶;用戶ID2用于某銀行的網上帳戶;用戶ID3用于某個網上教學帳戶,用戶ID4用于某軟件的加密等(如表1示)。存儲器內每一條記錄,有當前及上一次兩個密碼,主要用于通信及系統發生障礙時的處理。
表1存儲方式及內容插接在用戶端計算機USB接口上的密碼安全裝置對應的驅動程序為使用C語言及匯編語言編寫的程序,以便計算機的軟件訪問插接在USB接口上的密碼安全裝置。本驅動程序的作用是根據客戶端應用程序模塊的要求,對插接在計算機USB接口上的密碼安全裝置進行讀寫操作。
如圖3示,客戶端應用程序模塊是用戶端計算機內的一種系統級程序,在系統啟動時工作,在系統關閉時終止。在Windows操作系統下,它是一個服務器程序,在UNIX或Linux系統下,它是一個在系統啟動Shell中被調用的程序。它的作用是與網頁內Applet程序進行通信,根據要求訪問插接在USB接口上密碼安全裝置對應的驅動程序以實現對該密碼安全裝置進行讀寫操作。從而使網頁內Applet程序模塊間接地對該密碼安全裝置進行讀寫操作,以達到取得和保存隨機一次性密碼的目的。
如圖4示,服務器端的認證程序模塊是嵌入在服務器端的Web系統內的一般應用程序;它的作用是與用戶端進行通信以接收來自用戶端的密碼及必要的通信信息;訪問用戶登錄表以對隨機一次性密碼進行認證;對于合法的用戶發行新的隨機一次性密碼;在得到插接在USB接口上密碼安全裝置內的新密碼更新成功信息后,更新用戶登錄表內的對應密碼。
如圖5示,用戶端Applet程序模塊是嵌入在HTML內的用JAVA語言編寫的標準Applet程序。該Applet程序是在瀏覽器上可執行的嵌入在HTML內的JAVA程序。用戶端的Applet程序模塊與服務器端的認證程序模塊、用戶端應用程序模塊進行通信,擔當兩者之間的通信代理作用。因為本發明的Applet程序模塊要與客戶端應用程序模塊進行通信,故需要使用JAVA的安全與加密技術。
在實際使用中將密碼安全裝置插入用戶計算機的USB接口,操作系統檢測到一個新的外接硬件USB設備,操作系統查找已被安裝的驅動程序;如果沒有找到將提示用戶安裝驅動程序及用戶端應用程序模塊,安裝驅動程序及用戶端應用程序模塊并將其啟動;利用相應的服務(如網上股票證券交易),拔下USB接口上的密碼安全裝置,利用結束。服務器端的Web系統導入認證程序模塊;與認證有關的網頁及嵌入本發明的Applet程序;建立用戶登錄表,分配及初始化用戶ID;初始化并發行用戶的USB密碼安全裝置。
本發明同現行網上商務交易的安全防護措施相比較具有如下優點在通常的ID密碼登錄認證方式的背后,又增加了自動隨機一次性密碼的認證系統加強網上商務交易的安全防護;用戶仍使用通常的ID密碼方式登錄,不會對前臺操作的用戶增加麻煩。因本發明的認證系統是在通常的ID登錄認證背后,其密碼與通常的ID密碼登錄認證方式的密碼無任何關系且每次訪問的認證密碼都在改變,即使通常的ID密碼登錄認證方式的密碼泄露也不必擔心。插接在USB接口上的密碼安全裝置是便攜設備與普通的門鑰匙大小相當,故攜帶方便;因幾乎所有的計算機都有USB接口,故具有廣泛的應用領域;同時引入本發明對用戶端的計算機系統無任何影響;對服務器端的網上商務交易系統的影響也很小。本發明的認證方法不僅服務器端對客戶端進行認證,反過來,用戶端也可通過系統應用程序取得插接在USB接口上的密碼安全裝置的永久性固有制造ID,用戶ID,用途ID與服務器傳送來的對應數據進行比較,對服務器端進行認證;故具有可靠的安全性能。
權利要求
1.一種自動隨機一次性密碼提高網絡交易安全的認證方法,包括網絡服務器、用戶計算機,其特征是由服務器端認證程序模塊(4)、下載到用戶端的Applet程序模塊(5)、插接在用戶端計算機USB接口上的密碼安全裝置(1)、該密碼安全裝置對應的驅動程序(2)及用戶端應用程序模塊(3)組成;用戶在通常的ID-密碼登錄方式認證后,自動增加如下的認證方法服務器端根據用戶通常的ID-密碼登錄方式要求的用戶ID,將對應的已在服務器端預先登錄的永久性USB固有制造ID,用戶ID,用途ID及Applet程序模塊傳送給用戶端;傳送至用戶端的Applet程序模塊(5)與用戶端應用程序模塊(3)進行通信,通過驅動程序(2)取得插接在USB接口上的密碼安全裝置(1)內的原密碼;下載到用戶端的Applet程序模塊(5)將該原密碼發送給服務器端的認證程序模塊(4);上述認證程序模塊(4)對得到的原密碼進行認證,如果是合法的,將發行新的密碼;否則,通知用戶端認證工作失敗;認證程序模塊(4)將新密碼發送給用戶端的Applet程序模塊(5);用戶端的Applet程序模塊(5)與用戶端應用程序模塊(3)進行通信,將上述發行的新密碼保存于插接在用戶計算機USB接口上的密碼安全裝置(1)內;用戶端的Applet程序模塊(5)通知服務器端的認證程序模塊(4)插接在用戶計算機USB接口上的密碼安全裝置(1)內的新密碼保存完畢;服務器端的認證程序模塊(4)通知用戶端的Applet程序模塊(5),收到以上信息;用戶端的Applet程序模塊(5)與用戶端應用程序模塊(3)進行通信,完成插接在用戶計算機USB接口上的密碼裝置(1)內新密碼的更換;用戶端的Applet程序模塊(5)通知服務器端的認證程序模塊(4)插接在用戶計算機USB接口上的密碼安全裝置(1)內的新密碼更改完成;服務器端的認證程序模塊(4)記憶新的密碼;進行具體的網上交易活動,所述插接在用戶計算機USB接口上的密碼安全裝置(1)內含有USB驅動設備、8-32M存儲器及微處理器等硬件。
2.根據權利要求1所述的隨機一次性密碼提高網絡交易安全的認證方法,其特征是所述服務器端認證程序模塊(4)為嵌入服務器端Web系統中的一般應用程序。
3.根據權利要求1所述的隨機一次性密碼提高網絡交易安全的認證方法,其特征是所述下載到用戶端的Applet程序模塊(5)為嵌入在HTML內的用JAVA語言寫成的標準Applet程序。
4.根據權利要求1所述的隨機一次性密碼提高網絡交易安全的認證方法,其特征是所述插接在用戶端計算機USB接口上的密碼安全裝置(1)對應的驅動程序為使用C語言及匯編語言編寫且適于Windows2000,WindowsXP,WindowsME,Linux等操作系統中運行的程序。
5.根據權利要求1所述的隨機一次性密碼提高網絡交易安全的認證方法,其特征是所述用戶端應用程序(3)為保存在用戶端計算機內的系統程序。
6.根據權利要求1所述的隨機一次性密碼提高網絡交易安全的認證方法,其特征是所述插接在用戶端計算機USB接口上的密碼安全裝置(1)還包括一顯示器及該顯示器的驅動設備。
全文摘要
本發明涉及一種計算機網絡加密技術,尤其是一種利用自動隨機一次性密碼提高網絡交易安全的認證方法。它是在原有的ID密碼登錄認證的背后,又增加了自動隨機一次性密碼的認證系統以加強網上商務交易的安全防護;通過插接在用戶端計算機USB接口上的密碼安全裝置、該密碼安全裝置對應的驅動程序、服務器端認證程序模塊、下載到用戶端的Applet程序模塊及用戶端應用程序實現網上商務交易的加密、防破譯目的。本發明認證系統的密碼與原有的ID登錄密碼無任何關系且每次訪問上述認證系統的密碼都在改變,具有即使ID登錄密碼泄露,本認證系統仍能防止非法者進入系統的特點。因幾乎所有的個人計算機都有USB接口,故具有廣泛的應用領域和使用價值。
文檔編號G06F12/14GK1466061SQ0213255
公開日2004年1月7日 申請日期2002年7月4日 優先權日2002年7月4日
發明者張東旭 申請人:張東旭