欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

提高網絡軟件安全性的方法和系統(tǒng)的制作方法

文檔序號:7966884閱讀:261來源:國知局
專利名稱:提高網絡軟件安全性的方法和系統(tǒng)的制作方法
技術領域
本發(fā)明涉及網絡安全領域,特別涉及一種提高網絡軟件安全性的方法和系統(tǒng)。
背景技術
隨著互聯網的不斷發(fā)展和軟件編程技術的不斷完善,軟件種類和數量也不斷增長,網絡軟件就是在此過程中產生的。網絡軟件是一種通過網絡來運行的軟件,典型的網絡軟件系統(tǒng)為C/S架構(客戶端/服務器),包括客戶端和服務器端兩部分,兩者通過網絡連接來交互信息和數據。例如網絡游戲就是一種網絡軟件,網絡游戲需要有專門的運營商對其進行運營,負責服務器端程序的運行和維護,用戶通過在客戶端輸入賬號和密碼證明自己的身份后才能訪問服務器端,用戶還需要不斷地購買點卡給自己的賬號充值以保證其賬號的余額足夠才能運行網絡游戲?,F有網絡軟件的運營方式是由運營商提供有關網絡軟件運行和維護的服務,運營商授予代理商銷售權,代理商負責網絡游戲以及相關產品的發(fā)行以及銷售游戲點卡等業(yè)務。
網絡軟件系統(tǒng)的開發(fā)商和運營商要面對的最大問題就是網絡安全問題,即如何在網絡上確認一個用戶的身份——這個用戶是否是付費用戶,確認這個用戶屬于哪個權限等級等等?,F有的網絡身份驗證方式主要是在使用網絡軟件之前由用戶輸入用戶名和密碼,只有通過認證的用戶才可以使用該網絡軟件;這種現有技術的缺點是用戶名和密碼以明文的形式在網絡上傳輸,很容易被惡意分子截獲及盜用,會給真正的用戶帶來損失,網絡安全性差。
非對稱密鑰機制是一種加密密鑰與解密密鑰各不相同的機制,它采用一對密鑰對—公鑰和私鑰來進行安全控制,當傳輸數據時,發(fā)送方使用公鑰加密數據而接收方使用私鑰解密該數據;當進行身份驗證時,被驗證方用私鑰對明文簽名得到數字簽名,然后將數字簽名發(fā)向驗證方,驗證方用公鑰解密數字簽名后與原文進行比較來實現身份驗證。
沖擊響應機制是利用HMAC(keyed-Hashing Message Authentication Code)-Hash算法進行驗證的方式,HMAC-Hash是對Hash算法的加強,是將Hash算法與對稱密鑰相結合的一種機制,并且每次運算都有隨機數據參與,以保證每次認證過程產生的結果數據不同。Hash算法是一種無需密鑰參與的單向加密算法,可以將任意長度的數據進行加密生成固定長度的密文,對稱密鑰是指加密密鑰和解密密鑰為同一個密鑰。
智能密鑰裝置是一種帶有處理器和存儲器的小型硬件裝置,它可通過計算機的數據通訊接口與計算機連接。智能密鑰裝置采用PIN碼驗證用戶身份的合法性,在進行身份認證時將智能密鑰裝置與計算機相連,用戶在計算機上輸入PIN碼,智能密鑰裝置會自動校驗該PIN碼的正確性,只有當用戶輸入的PIN碼正確時,才允許用戶操作智能密鑰裝置。智能密鑰裝置還具有密鑰生成功能,并可安全存儲密鑰和預置加密算法。智能密鑰裝置與密鑰相關的運算完全在裝置內部運行,且智能密鑰裝置具有物理抗攻擊的特性,安全性極高,常用的智能密鑰裝置通過USB接口與計算機相連。
上述兩種身份驗證機制以及智能密鑰裝置的安全性較高,但是還都沒有應用到網絡軟件的身份認證中來。

發(fā)明內容
為了解決現有網絡軟件身份認證的安全性不高的問題,本發(fā)明提供了一種提高網絡軟件安全性的方法,具體包括以下步驟步驟A網絡軟件客戶端獲取賬號信息和/或密鑰并保存在智能密鑰裝置中,網絡軟件服務器端獲取所述賬號信息和/或密鑰并保存在數據庫中;步驟B在所述網絡軟件客戶端運行網絡軟件時,所述網絡軟件服務器端利用所述賬號信息和密鑰對所述網絡軟件客戶端進行身份認證。
所述步驟A具體包括步驟A1在網絡軟件的客戶端連接內置有賬號信息的智能密鑰裝置;步驟A2所述網絡軟件的客戶端程序讀取所述智能密鑰裝置中的賬號信息并向所述智能密鑰裝置發(fā)送生成密鑰的命令;步驟A3所述智能密鑰裝置根據接收到的命令生成密鑰并返回給所述網絡軟件客戶端程序;步驟A4所述網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密所述賬號信息和密鑰,并將加密后的信息發(fā)送給已存有所述賬號信息的網絡軟件服務器端;步驟A5所述網絡軟件服務器端利用內置的與所述客戶端公鑰對應的私鑰解密收到的加密信息,得到所述賬號信息和密鑰,在數據庫中找到所述賬號信息后將所述密鑰存入相應的位置。
所述步驟A具體包括步驟A1在網絡軟件的客戶端連接內置有密鑰的智能密鑰裝置;步驟A2所述網絡軟件的客戶端程序向服務器端發(fā)送申請賬號的請求;步驟A3所述網絡軟件服務器端接收到所述請求后生成賬號保存在數據庫中,并將所述賬號信息返回給所述網絡軟件客戶端程序;步驟A4所述網絡軟件客戶端程序將收到的賬號信息保存在所述智能密鑰裝置中,并讀取所述智能密鑰裝置的密鑰;步驟A5所述網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密所述賬號信息和密鑰,并將加密后的信息發(fā)送給所述網絡軟件服務器端;步驟A6所述網絡軟件服務器端利用內置的與所述客戶端公鑰對應的私鑰解密收到的加密信息,得到所述賬號信息和密鑰,在數據庫中找到所述賬號信息后將所述密鑰存入相應的位置。
所述步驟A具體包括步驟A1在網絡軟件的客戶端連接智能密鑰裝置;步驟A2所述網絡軟件的客戶端程序向服務器端發(fā)送申請賬號的請求;步驟A3所述網絡軟件服務器端接收到所述請求后生成賬號保存在數據庫中,并將所述賬號信息返回給所述網絡軟件客戶端程序;步驟A4所述網絡軟件客戶端程序將收到的賬號信息保存在所述智能密鑰裝置中,并向所述智能密鑰裝置發(fā)送生成密鑰的命令;步驟A5所述智能密鑰裝置根據接收到的命令生成密鑰并返回給所述網絡軟件客戶端程序;步驟A6所述網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密所述賬號信息和密鑰,并將加密后的信息發(fā)送給所述網絡軟件服務器端;步驟A7所述網絡軟件服務器端利用內置的與所述客戶端公鑰對應的私鑰解密收到的加密信息,得到所述賬號信息和密鑰,在數據庫中找到所述賬號信息后將所述密鑰存入相應的位置。
所述步驟A具體包括步驟A1在網絡軟件的客戶端連接智能密鑰裝置;步驟A2所述網絡軟件的客戶端程序向所述智能密鑰裝置發(fā)送生成中間密鑰的命令;步驟A3所述智能密鑰裝置根據收到的命令生成非對稱密鑰對,公鑰X和私鑰Y,并將所述公鑰X返回給所述網絡軟件客戶端程序;步驟A4所述網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密所述公鑰X;步驟A5所述網絡軟件客戶端程序向網絡軟件服務器端發(fā)送申請賬號和密鑰的請求,并將所述加密后的公鑰X也一起發(fā)給所述網絡軟件服務器端;步驟A6所述網絡軟件服務器端根據所述請求生成賬號和密鑰并保存在數據庫中,并且利用預置的與所述客戶端公鑰對應的私鑰對收到的加密后的公鑰X進行解密得到所述公鑰X;步驟A7所述網絡軟件服務器端利用所述公鑰X加密所述賬號信息和密鑰得到密文,并發(fā)送所述密文給所述網絡軟件客戶端程序;步驟A8所述網絡軟件客戶端程序收到所述密文后轉發(fā)給所述智能密鑰裝置;步驟A9所述智能密鑰裝置利用所述私鑰Y解密所述密文得到所述賬號信息和密鑰,并將所述賬號信息和密鑰保存在所述智能密鑰裝置中。
所述在網絡軟件的客戶端連接智能密鑰裝置的步驟之后還包括以下步驟所述智能密鑰裝置驗證用戶輸入的PIN碼或用戶的生物特征是否正確,如果正確則執(zhí)行步驟A2,否則提示錯誤并結束。
所述智能密鑰裝置中的密鑰為非對稱密鑰對,所述步驟B中所述網絡軟件服務器端利用所述賬號信息和密鑰通過非對稱密鑰機制對所述客戶端進行身份認證。
所述智能密鑰裝置中的密鑰為對稱密鑰,所述步驟B中所述網絡軟件服務器端利用所述賬號信息和密鑰通過沖擊響應機制對所述客戶端進行身份認證。
所述網絡軟件為網絡游戲軟件、網上教育軟件或媒體點播軟件。
所述智能密鑰裝置為USB接口的智能密鑰裝置。
所述智能密鑰裝置存儲至少一組賬號信息和密鑰。
本發(fā)明還提供了一種提高網絡軟件安全性的系統(tǒng),所述系統(tǒng)包括網絡軟件客戶端、網絡軟件服務器端和智能密鑰裝置,所述網絡軟件客戶端包括(1)獲取模塊,用于獲取網絡軟件身份認證需要的賬號信息和/或密鑰并保存在所述智能密鑰裝置中;(2)驗證模塊,用于利用所述賬號信息和密鑰向所述服務器端申請身份驗證;
所述網絡軟件服務器端包括(1)獲取模塊,用于獲取網絡軟件身份認證需要的賬號信息和/或密鑰并保存在數據庫中;(2)驗證模塊,用于利用所述賬號信息和密鑰對所述網絡軟件客戶端進行身份驗證;所述智能密鑰裝置包括(1)存儲模塊,用于存儲網絡軟件身份認證的賬號信息和密鑰;(2)運算模塊,用于根據所述網絡軟件客戶端的獲取模塊發(fā)來的命令生成密鑰并發(fā)送給所述存儲模塊或網絡軟件客戶端的獲取模塊,還用于利用所述存儲模塊中的密鑰進行算法運算以跟所述網絡軟件客戶端的驗證模塊進行交互來對用戶進行身份驗證。
所述智能密鑰裝置還包括驗證模塊,用于對用戶輸入的PIN碼或生物特征進行驗證。
本發(fā)明的有益效果是1、由于智能密鑰裝置是能夠防止內部信息被篡改和盜取的安全載體,所以利用智能密鑰裝置存儲用于網絡軟件身份認證的密鑰并且由智能密鑰裝置進行運算,更安全;2、在一個智能密鑰裝置中可以存有多組身份認證的賬號信息和密鑰,用戶可以使用一個智能密鑰裝置進行多個網絡軟件的身份認證,方便用戶和代理商的操作,節(jié)省人力和物力。


圖1是本發(fā)明實施例一智能密鑰裝置和服務器端獲取賬號和密鑰的過程流程圖;圖2是本發(fā)明實施例一進行網絡軟件身份認證的過程流程圖;圖3是本發(fā)明實施例二智能密鑰裝置和服務器端獲取賬號和密鑰的過程流程圖;圖4是本發(fā)明實施例二進行網絡軟件身份認證的過程流程圖;圖5是本發(fā)明實施例三智能密鑰裝置和服務器端獲取賬號和密鑰的過程流程圖;圖6是本發(fā)明實施例四智能密鑰裝置和服務器端獲取賬號和密鑰的過程流程圖;圖7是本發(fā)明實施例五一種提高網絡軟件安全性的系統(tǒng)示意圖;圖8是本發(fā)明實施例六一種提高網絡軟件安全性的系統(tǒng)示意圖。
具體實施例方式
下面結合附圖和具體實施例對本發(fā)明作進一步說明,但不作為對本發(fā)明的限定。
本發(fā)明中的網絡軟件客戶端程序在用戶購買時就已經加入了訪問智能密鑰裝置的功能,因此當智能密鑰裝置連接計算機后,客戶端程序能夠與智能密鑰裝置交互,通過客戶端程序使智能密鑰裝置與網絡軟件服務器端能夠建立關聯。
在本發(fā)明中網絡軟件客戶端程序中會內置算法和客戶端公鑰,用來對身份認證的密鑰進行加密,網絡軟件服務器端會內置與客戶端公鑰對應的私鑰,用來對加密的身份認證密鑰進行解密。
實施例一在本實施例中網絡軟件的運營商預先在服務器端為用戶建立身份認證的賬號信息,并將賬號信息保存在服務器端的數據庫中,再利用寫入工具將網絡軟件的標識和賬號信息寫入智能密鑰裝置中;運營商還可以將賬號信息通過安全的途徑發(fā)放給代理商,代理商利用寫入工具將網絡軟件的標識和賬號信息寫入智能密鑰裝置中,用戶從代理商處購買的智能密鑰裝置中就存有網絡軟件的標識和賬號信息。身份認證密鑰由智能密鑰裝置在網絡軟件客戶端生成,網絡軟件服務器端用非對稱密鑰機制或沖擊響應機制對網絡軟件客戶端進行身份認證。
參見圖1,本發(fā)明提供了一種提高網絡軟件安全性的方法,首先執(zhí)行以下初始化步驟步驟101將智能密鑰裝置連接到計算機,建立計算機與智能密鑰裝置的連接;步驟102網絡軟件客戶端程序訪問智能密鑰裝置,用戶輸入PIN碼;步驟103智能密鑰裝置驗證用戶輸入的PIN碼,如果驗證失敗則執(zhí)行步驟104,否則執(zhí)行步驟105;步驟104提示錯誤并結束;步驟105網絡軟件客戶端程序根據該網絡軟件的標識讀取智能密鑰裝置中該網絡軟件對應的賬號信息;步驟106網絡軟件客戶端程序向智能密鑰裝置發(fā)送生成身份認證密鑰的命令;步驟107智能密鑰裝置根據網絡軟件客戶端發(fā)送來的命令生成密鑰并保存,并將該密鑰返回給網絡軟件客戶端程序,在本實施例中該身份認證密鑰是非對稱密鑰對,即一個私鑰用于簽名,一個公鑰用于驗證;步驟108網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密智能密鑰裝置中的賬號信息和密鑰,并將加密后的信息發(fā)送給網絡軟件服務器端;步驟109網絡軟件服務器端利用內置的與客戶端公鑰對應的私鑰解密收到的加密信息,得到網絡軟件身份認證的賬號信息和密鑰,在服務器端的數據庫中找到該賬號信息后將密鑰存入相應的位置。
通過以上步驟在客戶端和服務器端均保存有進行網絡軟件身份認證需要的賬號信息和密鑰,當用戶登錄網絡軟件時,使用非對稱密鑰機制或沖擊響應機制,通過智能密鑰裝置與網絡軟件服務器端進行身份認證,認證通過后才能運行網絡軟件。由于本實施例中智能密鑰裝置生成的密鑰是非對稱密鑰對,所以網絡軟件服務器端對用戶采用非對稱密鑰機制的身份驗證方法,參見圖2,具體過程如下步驟201在客戶端運行網絡軟件程序;步驟202在計算機上連接智能密鑰裝置,網絡軟件客戶端程序訪問智能密鑰裝置,用戶輸入PIN碼;步驟203智能密鑰裝置驗證用戶輸入的PIN碼,如果驗證失敗則執(zhí)行步驟204,否則執(zhí)行步驟205;步驟204提示錯誤并結束;步驟205網絡軟件客戶端程序申請登錄服務器端;步驟206網絡軟件服務器端向網絡軟件客戶端發(fā)送身份驗證請求,且向網絡軟件客戶端程序發(fā)送一個隨機字符串;步驟207網絡軟件客戶端程序將收到的隨機字符串轉發(fā)至智能密鑰裝置;步驟208智能密鑰裝置利用其內置的算法和事先生成的非對稱密鑰對中的私鑰來簽名該隨機字符串得到數字簽名,并將該數字簽名和該非對稱密鑰對所對應的賬號信息一起返回給網絡軟件客戶端程序;步驟209網絡軟件客戶端程序將收到的數字簽名和賬號信息發(fā)送給網絡軟件服務器端;步驟210網絡軟件服務器端根據收到的賬號信息查找數據庫,找到該賬號信息對應的非對稱密鑰對中的公鑰,并利用該公鑰來解密該數字簽名,得到隨機字符串后,與步驟206中所發(fā)送的隨機字符串做比較,如果一致則驗證成功,用戶可以使用該網絡軟件并可以對網絡軟件服務器端的數據和資源等進行訪問,否則提示驗證失敗并結束。
上述步驟107中智能密鑰裝置生成的密鑰也可以是對稱密鑰即加密和解密為同一個密鑰,那么當用戶登錄網絡軟件時,網絡軟件服務器端對用戶就會采用沖擊響應機制的身份驗證方法來進行驗證。
實施例二在本實施例中網絡軟件的運營商或代理商不用對智能密鑰裝置作任何處理,用戶可以通過任意途徑購買內置有身份認證密鑰的智能密鑰裝置,該密鑰是對稱密鑰即加密和解密為同一個密鑰。用戶可以在網絡軟件客戶端通過網絡向運營商服務器端申請賬號,服務器端建立賬號后發(fā)送給客戶端,用戶將其保存在智能密鑰裝置中。
參見圖3,本發(fā)明還提供了另外一種提高網絡軟件安全性的方法,首先執(zhí)行以下初始化步驟步驟301將智能密鑰裝置連接到計算機,建立計算機與智能密鑰裝置的連接;步驟302網絡軟件客戶端程序訪問智能密鑰裝置,用戶輸入PIN碼;步驟303智能密鑰裝置驗證用戶輸入的PIN碼,如果驗證失敗則執(zhí)行步驟304,否則執(zhí)行步驟305;步驟304提示錯誤并結束;步驟305網絡軟件客戶端程序向服務器端發(fā)送申請身份認證賬號的請求;步驟306網絡軟件服務器端根據該請求建立賬號并保存在數據庫中,并將賬號信息返回給網絡軟件客戶端程序;步驟307網絡軟件客戶端程序將收到的賬號信息保存在智能密鑰裝置中;步驟308網絡軟件客戶端程序向智能密鑰裝置發(fā)送獲取身份認證密鑰的命令;步驟309智能密鑰裝置將其預置的身份認證密鑰即對稱密鑰返回給網絡軟件客戶端程序;步驟310網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密身份認證密鑰和賬號信息,并將加密后的信息發(fā)送給網絡軟件服務器端;步驟311網絡軟件服務器端用內置的與客戶端公鑰對應的私鑰解密收到的加密信息,得到賬號信息和身份認證密鑰,網絡軟件服務器端在數據庫中查找到該賬號信息后,將身份認證密鑰保存在相應的位置。
通過以上步驟在客戶端和服務器端均保存有進行網絡軟件身份認證需要的賬號信息和密鑰,由于本實施例中智能密鑰裝置中預置的密鑰是對稱密鑰,所以網絡軟件服務器端對用戶采用沖擊響應機制的身份驗證方法,參見圖4,具體過程如下步驟401在客戶端運行網絡軟件程序;步驟402網絡軟件客戶端程序訪問智能密鑰裝置,用戶輸入PIN碼;步驟403智能密鑰裝置驗證用戶輸入的PIN碼,如果驗證失敗則執(zhí)行步驟404,否則執(zhí)行步驟405;步驟404提示錯誤并結束;步驟405網絡軟件客戶端程序申請登錄服務器端;步驟406網絡軟件服務器端向網絡軟件客戶端發(fā)送身份驗證請求,且向網絡軟件客戶端程序發(fā)送一個隨機字符串;
步驟407網絡軟件客戶端程序將收到的隨機字符串轉發(fā)至智能密鑰裝置;步驟408智能密鑰裝置利用預置的對稱密鑰和HMAC-Hash算法處理上述隨機字符串得到客戶端運算結果,并通過網絡軟件客戶端程序將該客戶端運算結果和該對稱密鑰對應的賬號信息一起返回給網絡軟件服務器端;步驟409網絡軟件服務器端根據收到的賬號信息查找數據庫,找到該賬號信息對應的對稱密鑰后,用該對稱密鑰和HMAC-Hash算法處理上述發(fā)送給客戶端的隨機字符串,得到服務器端運算結果;步驟410網絡軟件服務器端程序將服務器端運算結果和客戶端運算結果相比較,如果一致則驗證成功,網絡軟件服務器端允許客戶端程序對網絡軟件服務器端的數據和資源等進行訪問,否則提示驗證失敗并結束。
實施例一中的驗證過程如果采用沖擊響應機制,其過程同本實施例中的步驟401至步驟410。本實施例中當用戶購買的智能密鑰裝置中保存的密鑰為非對稱密鑰對時,網絡軟件服務器端對用戶就會采用非對稱密鑰機制的身份驗證方法來進行驗證,其過程與實施例一中的步驟201至步驟210相同,在此不再贅述。
實施例三在本實施例中網絡軟件的運營商或代理商不用對智能密鑰裝置作任何處理,用戶可以通過任意途徑購買智能密鑰裝置,智能密鑰裝置中既沒有賬號信息也沒有身份認證密鑰。用戶可以在網絡軟件客戶端通過網絡向運營商服務器端申請賬號,服務器端建立賬號后發(fā)送給客戶端,用戶將其保存在智能密鑰裝置中。身份認證密鑰由智能密鑰裝置在網絡軟件客戶端生成,如果生成的密鑰為非對稱密鑰對則網絡軟件服務器端采用非對稱密鑰機制對用戶進行身份驗證,如果生成的密鑰為對稱密鑰則網絡軟件服務器端采用沖擊響應機制對用戶進行身份驗證。
參見圖5,本發(fā)明還提供了另外一種提高網絡軟件安全性的方法,首先執(zhí)行以下初始化步驟步驟501將智能密鑰裝置連接到計算機,建立計算機與智能密鑰裝置的連接;步驟502網絡軟件客戶端程序訪問智能密鑰裝置,用戶輸入PIN碼;步驟503智能密鑰裝置驗證用戶輸入的PIN碼,如果驗證失敗則執(zhí)行步驟504,否則執(zhí)行步驟505;步驟504提示錯誤并結束;步驟505網絡軟件客戶端程序向服務器端發(fā)送申請身份認證賬號的請求;
步驟506網絡軟件服務器端根據該請求建立賬號并保存在數據庫中,并將該賬號信息返回給網絡軟件客戶端程序;步驟507網絡軟件客戶端程序將收到的賬號信息保存在智能密鑰裝置中;步驟508網絡軟件客戶端程序向智能密鑰裝置發(fā)送生成身份認證密鑰的命令;步驟509智能密鑰裝置根據網絡軟件客戶端發(fā)送來的命令生成密鑰,并將該密鑰返回給網絡軟件客戶端程序;步驟510網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密智能密鑰裝置中的賬號信息和密鑰,并將加密后的信息發(fā)送給網絡軟件服務器端;步驟511網絡軟件服務器端利用內置的與客戶端公鑰對應的私鑰解密收到的加密信息,得到網絡軟件身份認證的賬號信息和密鑰,在服務器端的數據庫中找到該賬號信息后將密鑰存入相應的位置。
步驟509中生成的身份認證密鑰如果是非對稱密鑰對,則網絡軟件服務器端對用戶采用非對稱密鑰機制的身份驗證方法,具體過程同實施例一中的步驟201至步驟210;如果是對稱密鑰,則網絡軟件服務器端對用戶采用沖擊響應機制的身份驗證方法,具體過程同實施例二中的步驟401至步驟410,在此就不再贅述。
實施例四在本實施例中網絡軟件的運營商或代理商不用對智能密鑰裝置作任何處理,用戶可以通過任意途徑購買智能密鑰裝置,智能密鑰裝置中既沒有賬號信息也沒有身份認證密鑰。用戶可以在網絡軟件客戶端通過網絡向運營商服務器端申請賬號和密鑰,服務器端建立賬號并生成與此賬號對應的密鑰,然后發(fā)送給客戶端,用戶將其保存在智能密鑰裝置中。服務器端生成的密鑰如果為非對稱密鑰對則網絡軟件服務器端采用非對稱密鑰機制對用戶進行身份驗證,如果為對稱密鑰則網絡軟件服務器端采用沖擊響應機制對用戶進行身份驗證。
參見圖6,本發(fā)明還提供了另外一種提高網絡軟件安全性的方法,首先執(zhí)行以下初始化步驟步驟601將智能密鑰裝置連接到計算機,建立計算機與智能密鑰裝置的連接;步驟602網絡軟件客戶端程序訪問智能密鑰裝置,用戶輸入PIN碼;步驟603智能密鑰裝置驗證用戶輸入的PIN碼,如果驗證失敗則執(zhí)行步驟604,否則執(zhí)行步驟605;步驟604提示錯誤并結束;步驟605網絡軟件客戶端程序向智能密鑰裝置發(fā)送生成密鑰的命令,該密鑰是用于服務器端在傳輸身份認證密鑰之前進行加密,在客戶端收到身份認證密鑰之后進行解密;步驟606智能密鑰裝置根據收到的命令生成非對稱密鑰對,公鑰X和私鑰Y,并將其中的公鑰X返回給網絡軟件客戶端程序;步驟607網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密上述公鑰X,并發(fā)送給服務器端;步驟608網絡軟件客戶端程序向服務器端發(fā)送申請賬號和獲取身份認證密鑰的請求;步驟609網絡軟件服務器端根據該請求建立賬號并生成與此賬號對應的密鑰,并將它們保存在數據庫中,并且網絡軟件服務器端利用預置的與客戶端公鑰對應的私鑰對收到的加密后的公鑰X進行解密得到公鑰X;步驟610網絡軟件服務器端利用上述解密后得到的公鑰X加密生成的賬號信息和對應的密鑰得到密文,并發(fā)送該密文給網絡軟件客戶端;步驟611網絡軟件客戶端程序收到密文后轉發(fā)給智能密鑰裝置;步驟612智能密鑰裝置利用步驟606中生成的私鑰Y解密該密文得到明文,即賬號信息和對應的密鑰,并將該賬號信息和對應的密鑰保存在智能密鑰裝置中。
步驟609中生成的身份認證密鑰如果是非對稱密鑰對,則網絡軟件服務器端對用戶采用非對稱密鑰機制的身份驗證方法,具體過程同實施例一中的步驟201至步驟210;如果是對稱密鑰,則網絡軟件服務器端對用戶采用沖擊響應機制的身份驗證方法,具體過程同實施例二中的步驟401至步驟410,在此就不再贅述。
在上述實施例一至實施例四中均可以不執(zhí)行智能密鑰裝置驗證用戶輸入PIN碼的步驟;另外智能密鑰裝置驗證用戶輸入PIN碼的步驟也可以由驗證用戶的生物特征的方式進行替換,如指紋識別或視網膜識別等等。
上述所有實施例中的智能密鑰裝置可以存儲一組賬號信息和密鑰,也可以存儲多組賬號信息和密鑰,當存儲有多組賬號信息和密鑰時,用戶可以使用一個智能密鑰裝置進行多個網絡軟件的身份認證。
實施例五參見圖7,本發(fā)明還提供了一種提高網絡軟件安全性的系統(tǒng),系統(tǒng)包括網絡軟件客戶端、網絡軟件服務器端和智能密鑰裝置,網絡軟件客戶端包括(1)獲取模塊,用于獲取網絡軟件身份認證需要的賬號信息和/或密鑰并保存在智能密鑰裝置中,當智能密鑰裝置中保存有賬號信息時,只需獲取密鑰即可,當智能密鑰裝置中保存有密鑰時,只需獲取賬號信息即可,如果智能密鑰裝置中既無賬號信息又無密鑰則兩個都要獲取;(2)驗證模塊,用于利用網絡軟件客戶端的獲取模塊得到的賬號信息和密鑰向服務器端申請身份驗證;網絡軟件服務器端包括(1)獲取模塊,用于獲取網絡軟件身份認證需要的賬號信息和/或密鑰并保存在數據庫中,當服務器端保存有賬號信息時,只需獲取密鑰即可,當服務器端保存有密鑰時,只需獲取賬號信息即可,如果服務器端既無賬號信息又無密鑰則兩個都要獲取;(2)驗證模塊,用于利用網絡軟件服務器端的獲取模塊得到的賬號信息和密鑰對網絡軟件客戶端進行身份驗證;智能密鑰裝置包括(1)存儲模塊,用于存儲網絡軟件身份認證賬號信息和密鑰;(2)運算模塊,用于根據網絡軟件客戶端的獲取模塊發(fā)來的命令生成密鑰并寫入存儲模塊,還用于利用所述存儲模塊中的密鑰進行算法運算以跟所述網絡軟件客戶端的驗證模塊進行交互來對用戶進行身份驗證,此處的交互是指利用存儲模塊中的密鑰處理網絡軟件客戶端的驗證模塊發(fā)來的隨機字符串,然后將處理的結果返回給網絡軟件客戶端的驗證模塊;當采用非對稱密鑰機制進行身份認證時,用存儲模塊中的密鑰簽名隨機字符串得到數字簽名返回給網絡軟件客戶端的驗證模塊;當采用沖擊響應機制進行身份認證時,用存儲模塊中的密鑰和HMAC-Hash算法運算隨機字符串得到客戶端運算結果返回給網絡軟件客戶端的驗證模塊。
實施例六參見圖8,與實施例五不同的是智能密鑰裝置的運算模塊在根據網絡軟件客戶端的獲取模塊發(fā)來的命令生成密鑰后,不僅寫入存儲模塊中還返回給網絡軟件客戶端的獲取模塊。
實施例五中的網絡軟件客戶端的獲取模塊獲取密鑰是從智能密鑰裝置的存儲模塊獲取,而本實施例中的網絡軟件客戶端的獲取模塊獲取密鑰是從智能密鑰裝置的運算模塊獲取,其他內容均與實施例五相同,在此就不再贅述。
為了進一步提高安全性,還可以在智能密鑰裝置中增加驗證模塊,用于對用戶輸入的PIN碼或生物特征(如指紋或視網膜)進行驗證,只有驗證模塊的驗證通過后,用戶才能使用智能密鑰裝置進行相關的操作。
以上所述的實施例,只是本發(fā)明較優(yōu)選的具體實施方式
的一種,本領域的技術人員在本發(fā)明技術方案范圍內進行的通常變化和替換都應包含在本發(fā)明的保護范圍內。
權利要求
1.一種提高網絡軟件安全性的方法,其特征在于,所述方法包括以下步驟步驟A網絡軟件客戶端獲取賬號信息和/或密鑰并保存在智能密鑰裝置中,網絡軟件服務器端獲取所述賬號信息和/或密鑰并保存在數據庫中;步驟B在所述網絡軟件客戶端運行網絡軟件時,所述網絡軟件服務器端利用所述賬號信息和密鑰對所述網絡軟件客戶端進行身份認證。
2.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述步驟A具體包括步驟A1在網絡軟件的客戶端連接內置有賬號信息的智能密鑰裝置;步驟A2所述網絡軟件的客戶端程序讀取所述智能密鑰裝置中的賬號信息并向所述智能密鑰裝置發(fā)送生成密鑰的命令;步驟A3所述智能密鑰裝置根據接收到的命令生成密鑰并返回給所述網絡軟件客戶端程序;步驟A4所述網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密所述賬號信息和密鑰,并將加密后的信息發(fā)送給已存有所述賬號信息的網絡軟件服務器端;步驟A5所述網絡軟件服務器端利用內置的與所述客戶端公鑰對應的私鑰解密收到的加密信息,得到所述賬號信息和密鑰,在數據庫中找到所述賬號信息后將所述密鑰存入相應的位置。
3.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述步驟A具體包括步驟A1在網絡軟件的客戶端連接內置有密鑰的智能密鑰裝置;步驟A2所述網絡軟件的客戶端程序向服務器端發(fā)送申請賬號的請求;步驟A3所述網絡軟件服務器端接收到所述請求后生成賬號保存在數據庫中,并將所述賬號信息返回給所述網絡軟件客戶端程序;步驟A4所述網絡軟件客戶端程序將收到的賬號信息保存在所述智能密鑰裝置中,并讀取所述智能密鑰裝置的密鑰;步驟A5所述網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密所述賬號信息和密鑰,并將加密后的信息發(fā)送給所述網絡軟件服務器端;步驟A6所述網絡軟件服務器端利用內置的與所述客戶端公鑰對應的私鑰解密收到的加密信息,得到所述賬號信息和密鑰,在數據庫中找到所述賬號信息后將所述密鑰存入相應的位置。
4.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述步驟A具體包括步驟A1在網絡軟件的客戶端連接智能密鑰裝置;步驟A2所述網絡軟件的客戶端程序向服務器端發(fā)送申請賬號的請求;步驟A3所述網絡軟件服務器端接收到所述請求后生成賬號保存在數據庫中,并將所述賬號信息返回給所述網絡軟件客戶端程序;步驟A4所述網絡軟件客戶端程序將收到的賬號信息保存在所述智能密鑰裝置中,并向所述智能密鑰裝置發(fā)送生成密鑰的命令;步驟A5所述智能密鑰裝置根據接收到的命令生成密鑰并返回給所述網絡軟件客戶端程序;步驟A6所述網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密所述賬號信息和密鑰,并將加密后的信息發(fā)送給所述網絡軟件服務器端;步驟A7所述網絡軟件服務器端利用內置的與所述客戶端公鑰對應的私鑰解密收到的加密信息,得到所述賬號信息和密鑰,在數據庫中找到所述賬號信息后將所述密鑰存入相應的位置。
5.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述步驟A具體包括步驟A1在網絡軟件的客戶端連接智能密鑰裝置;步驟A2所述網絡軟件的客戶端程序向所述智能密鑰裝置發(fā)送生成中間密鑰的命令;步驟A3所述智能密鑰裝置根據收到的命令生成非對稱密鑰對,公鑰X和私鑰Y,并將所述公鑰X返回給所述網絡軟件客戶端程序;步驟A4所述網絡軟件客戶端程序利用其內置的算法和內置的客戶端公鑰加密所述公鑰X;步驟A5所述網絡軟件客戶端程序向網絡軟件服務器端發(fā)送申請賬號和密鑰的請求,并將所述加密后的公鑰X也一起發(fā)給所述網絡軟件服務器端;步驟A6所述網絡軟件服務器端根據所述請求生成賬號和密鑰并保存在數據庫中,并且利用預置的與所述客戶端公鑰對應的私鑰對收到的加密后的公鑰X進行解密得到所述公鑰X;步驟A7所述網絡軟件服務器端利用所述公鑰X加密所述賬號信息和密鑰得到密文,并發(fā)送所述密文給所述網絡軟件客戶端程序;步驟A8所述網絡軟件客戶端程序收到所述密文后轉發(fā)給所述智能密鑰裝置;步驟A9所述智能密鑰裝置利用所述私鑰Y解密所述密文得到所述賬號信息和密鑰,并將所述賬號信息和密鑰保存在所述智能密鑰裝置中。
6.根據權利要求1至5任一權利要求所述的提高網絡軟件安全性的方法,其特征在于,所述在網絡軟件的客戶端連接智能密鑰裝置的步驟之后還包括以下步驟所述智能密鑰裝置驗證用戶輸入的PIN碼或用戶的生物特征是否正確,如果正確則執(zhí)行步驟A2,否則提示錯誤并結束。
7.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述智能密鑰裝置中的密鑰為非對稱密鑰對,所述步驟B中所述網絡軟件服務器端利用所述賬號信息和密鑰通過非對稱密鑰機制對所述客戶端進行身份認證。
8.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述智能密鑰裝置中的密鑰為對稱密鑰,所述步驟B中所述網絡軟件服務器端利用所述賬號信息和密鑰通過沖擊響應機制對所述客戶端進行身份認證。
9.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述網絡軟件為網絡游戲軟件、網上教育軟件或媒體點播軟件。
10.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述智能密鑰裝置為USB接口的智能密鑰裝置。
11.根據權利要求1所述的提高網絡軟件安全性的方法,其特征在于,所述智能密鑰裝置存儲至少一組賬號信息和密鑰。
12.一種提高網絡軟件安全性的系統(tǒng),其特征在于,所述系統(tǒng)包括網絡軟件客戶端、網絡軟件服務器端和智能密鑰裝置,所述網絡軟件客戶端包括(1)獲取模塊,用于獲取網絡軟件身份認證需要的賬號信息和/或密鑰并保存在所述智能密鑰裝置中;(2)驗證模塊,用于利用所述賬號信息和密鑰向所述服務器端申請身份驗證;所述網絡軟件服務器端包括(1)獲取模塊,用于獲取網絡軟件身份認證需要的賬號信息和/或密鑰并保存在數據庫中;(2)驗證模塊,用于利用所述賬號信息和密鑰對所述網絡軟件客戶端進行身份驗證;所述智能密鑰裝置包括(1)存儲模塊,用于存儲網絡軟件身份認證的賬號信息和密鑰;(2)運算模塊,用于根據所述網絡軟件客戶端的獲取模塊發(fā)來的命令生成密鑰并發(fā)送給所述存儲模塊或網絡軟件客戶端的獲取模塊,還用于利用所述存儲模塊中的密鑰進行算法運算以跟所述網絡軟件客戶端的驗證模塊進行交互來對用戶進行身份驗證。
13.根據權利要求12所述的提高網絡軟件安全性的系統(tǒng),其特征在于,所述智能密鑰裝置還包括驗證模塊,用于對用戶輸入的PIN碼或生物特征進行驗證。
全文摘要
本發(fā)明提供了一種提高網絡軟件安全性的方法和系統(tǒng),屬于網絡安全領域。為了解決現有網絡軟件身份認證安全性不高的問題,本發(fā)明提供了一種提高網絡軟件安全性的方法,包括網絡軟件客戶端獲取賬號信息和/或密鑰并保存在智能密鑰裝置中的步驟,網絡軟件服務器端獲取并保存賬號信息和/或密鑰的步驟,以及服務器端對客戶端進行身份認證的步驟;本發(fā)明還提供了一種提高網絡軟件安全性的系統(tǒng),包括網絡軟件客戶端、網絡軟件服務器端和智能密鑰裝置。本發(fā)明利用智能密鑰裝置存儲密鑰并由智能密鑰裝置進行運算,更安全,而且在一個智能密鑰裝置中可以存有多組賬號信息和密鑰,可以進行多個網絡軟件的身份認證,方便用戶和代理商的操作,節(jié)省人力和物力。
文檔編號H04L29/06GK1921395SQ20061011319
公開日2007年2月28日 申請日期2006年9月19日 優(yōu)先權日2006年9月19日
發(fā)明者陸舟, 于華章 申請人:北京飛天誠信科技有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
扬中市| 德安县| 收藏| 维西| 台中市| 肇东市| 沂源县| 上虞市| 建昌县| 南召县| 临清市| 栾川县| 南汇区| 故城县| 许昌县| 永宁县| 通辽市| 平阳县| 上犹县| 阳信县| 安宁市| 阜平县| 横峰县| 江孜县| 许昌县| 红桥区| 河东区| 光山县| 通化市| 正安县| 汝阳县| 方正县| 平罗县| 青龙| 公主岭市| 金华市| 石河子市| 客服| 军事| 邓州市| 宣汉县|