一種保護網絡應用程式使用帳號密碼進行登錄的方法
2023-08-07 06:19:06 2
專利名稱:一種保護網絡應用程式使用帳號密碼進行登錄的方法
技術領域:
本發明涉及網際網路應用信息安全性處理領域,特別是一種保護網絡應用程式使用帳號密碼進行登陸的方法。
背景技術:
隨著網際網路信息產業的蓬勃發展,基於網際網路的應用越來越普遍,如網路遊戲、即時聊天軟體、網絡銀行等,而帳號密碼是目前大多數網絡應用程式採用的身份驗證手段;為了謀取非法利益,不法分子利用病毒木馬等手段盜取他人的帳號密碼的情況頻頻發生;此外,不法分子還可以利用網絡監測工具截取網絡程序登錄數據包並用軟體方法實施對伺服器的詐騙登錄,因此有效的保護網絡應用程式的帳號密碼安全性,是發展網際網路應用的一個重要課題。
防止鍵盤記錄功能盜竊帳號密碼,傳統方法通常是使用軟鍵盤,即通過滑鼠點擊圖形區域轉化成對應鍵盤輸入信息,這種方法存在的主要弊端是病毒和木馬可針對特定軟體,記錄它們使用的軟鍵盤布局,通過截獲滑鼠點擊信息將用戶輸入的信息還原,從而竊取用戶登錄的帳號密碼。另外,對用戶來說,使用軟鍵盤的操作比較繁瑣,非常不直觀。
對於網絡監測工具截取登錄數據包並用軟體方法實施詐騙登錄的問題,在一些安全性要求較高的Web應用主要使用安全套接字層,即Security Socket Layer(縮寫SSL)保證通信的安全性,如應用於網站服務的HTTPS(HTTP+SSL)。SSL是使用公鑰和私鑰技術組合的安全網絡通訊協議,部署SSL對Web系統的伺服器硬體性能要求非常高,在伺服器和客戶端之間初始化SSL會話和連接的狀態信息過程需要處理複雜的握手協議,增加額外的網絡負擔,用戶在使用過程也會有明顯的等待時間。此外,專利申請號為03148856.0的中國發明專利申請提供了一種利用一次性隨機數進行用戶身份認證的方法,用MD5信息摘要算法對待認證數據(帳號、密碼或者兩者組合)和隨機數組成的原始信息進行加密,然後發送到伺服器端進行驗證,而此方法僅能保護帳號密碼數據的傳輸,不能防止病毒和木馬的盜號行為。
發明內容
本發明為解決上述問題提供了一種保護網絡應用程式使用帳號密碼進行登錄的方法,可以有效防止了木馬病毒等進程竊取用戶輸入的帳號密碼,或者網絡監測工具截獲登錄數據包實行伺服器詐騙登錄,大大提高了網絡應用信息的安全性。
本發明的技術方案如下一種保護網絡應用程式使用帳號密碼進行登錄的方法,通過客戶端密碼輸入,然後經過伺服器端驗證進行登陸,其特徵在於客戶端設置有通用鍵盤驅動程序,所述鍵盤驅動程序內預設有加密私鑰和私鑰加密模塊;同時,伺服器端也設置有加密私鑰和加密模塊,並且與客戶端使用的私鑰和私鑰加密模塊一致。
所述具體使用步驟如下A、客戶端向伺服器端發起連接請求,伺服器收到連接請求後生成隨機數,伺服器端保留生成的隨機數的記錄,並把所述隨機數通過網絡連接發送到客戶端;B、客戶端接收並記錄伺服器返回的隨機數後,激活鍵盤驅動,接受用戶的帳號密碼輸入;C、所述鍵盤驅動程序預設的加密私鑰和私鑰加密模塊對步驟B用戶輸入的鍵盤碼進行加密,客戶端得到加密後的密碼信息;D、客戶端分別對用戶帳號信息,加密後的用戶密碼加上從步驟B得到的隨機數信息的組合數據進行不可逆的信息摘要加密,然後將帳號的摘要信息和密碼+隨機數組合數據的摘要信息封裝成登錄數據包發送到伺服器端請求驗證;E、伺服器端接收到客戶端的登錄數據包後,分別解析出帳號摘要信息和加密後密碼+隨機數組合數據的摘要信息,通過解析得到的帳號摘要信息檢索出伺服器端存放的帳號摘要信息和私鑰加密後的密碼信息,然後對檢索出來的加密密碼和伺服器端隨機數的組合數據執行和客戶端一樣的信息摘要加密,把生成信息摘要與客戶端發送來的加密後密碼+隨機數組合數據的摘要信息進行比對,即可判斷出帳號密碼的正確性。
所述步驟C中,客戶端通過設備驅動程序的交互接口DeviceIoControl激活鍵盤驅動程序的加密功能,鍵盤驅動程序在作業系統的驅動底層接收輸入的鍵盤碼,通過加密私鑰和私鑰加密模塊對輸入鍵盤碼進行加密,把加密後的鍵盤碼放到作業系統應用層,客戶端得到的是用戶輸入密碼的加密後信息。私鑰加密模塊的算法採用數據加密標準(Data Encryptoin Standard,DES)。
所述步驟D中客戶端對組合數據進行信息摘要加密採用不可逆的安全哈希算法(Safe Hash Algorithm,SHA)。客戶端分別對用戶帳號和鍵盤驅動程序加密過的用戶密碼+從伺服器接收的隨機數的組合數據執行信息摘要加密,把SHA(Account)和SHA(Password+RandomWord)的信息摘要數據封裝成登錄數據包,發送到伺服器端進行驗證。
本發明的有益效果如下本發明可以有效防止運行在作業系統應用層的具有鍵盤記錄功能的木馬病毒進程竊取用戶輸入的帳號密碼,也可以防止網絡監測工具截獲含有用戶帳號密碼等信息的登錄數據包並用軟體方法實施詐騙登錄。
圖1為本發明的流程圖具體實施方式
實施例1一種保護網絡應用程式使用帳號密碼進行登錄的方法,通過客戶端密碼輸入,然後經過伺服器端驗證進行登陸,客戶端設置有通用鍵盤驅動程序,所述鍵盤驅動程序內預設有加密私鑰和私鑰加密模塊;同時,伺服器端也設置有加密私鑰和加密模塊,並且與客戶端使用的私鑰和私鑰加密模塊一致。
所述具體使用步驟如下A、客戶端向伺服器端發起連接請求,伺服器收到連接請求後生成隨機數,伺服器端保留生成的隨機數的記錄,並把所述隨機數通過網絡連接發送到客戶端;B、客戶端接收並記錄伺服器返回的隨機數後,激活鍵盤驅動,接受用戶的帳號密碼輸入;C、所述鍵盤驅動程序預設的加密私鑰和私鑰加密模塊對步驟B用戶輸入的鍵盤碼進行加密,客戶端得到加密後的密碼信息;D、客戶端分別對用戶帳號信息,加密後的用戶密碼加上從步驟B得到的隨機數信息的組合數據進行不可逆的信息摘要加密,然後將帳號的摘要信息和密碼+隨機數組合數據的摘要信息封裝成登錄數據包發送到伺服器端請求驗證;E、伺服器端接收到客戶端的登錄數據包後,分別解析出帳號摘要信息和加密後密碼+隨機數組合數據的摘要信息,通過解析得到的帳號摘要信息檢索出伺服器端存放的帳號摘要信息和私鑰加密後的密碼信息,然後對檢索出來的加密密碼和伺服器端隨機數的組合數據執行和客戶端一樣的信息摘要加密,把生成信息摘要與客戶端發送來的加密後密碼+隨機數組合數據的摘要信息進行比對,即可判斷出帳號密碼的正確性。
實施例2一種保護網絡應用程式使用帳號密碼進行登錄的方法,客戶端通過設備驅動程序的交互接口DeviceIoControl激活鍵盤驅動程序的加密功能,鍵盤驅動程序在作業系統的驅動底層接收輸入的鍵盤碼,通過加密私鑰和私鑰加密模塊對輸入鍵盤碼進行加密,把加密後的鍵盤碼放到作業系統應用層,客戶端得到的是用戶輸入密碼的加密後信息。私鑰加密模塊的算法採用數據加密標準(Data EncryptoinStandard,DES)。
實施例3一種保護網絡應用程式使用帳號密碼進行登錄的方法,客戶端對組合數據進行信息摘要加密採用不可逆的安全哈希算法(Safe Hash Algorithm,SHA)。客戶端分別對用戶帳號和鍵盤驅動程序加密過的用戶密碼+從伺服器接收的隨機數的組合數據執行信息摘要加密,把SHA(Account)和SHA(Password+RandomWord)的信息摘要數據封裝成登錄數據包,發送到伺服器端進行驗證。
實施例4一種保護網絡應用程式使用帳號密碼進行登錄的方法,首先在用戶本地計算機上安裝網絡應用軟體的客戶端(如網路遊戲客戶端、聊天工具客戶端等)。該客戶端設置有通用鍵盤驅動程序,所述鍵盤驅動程序內預設有加密私鑰和私鑰加密模塊;同時,伺服器端也設置有加密私鑰和加密模塊,並且與客戶端使用的私鑰和私鑰加密模塊一致。
所述具體使用步驟如下A、用戶啟動網絡應用軟體的客戶端程序,客戶端程序初始化過程加載所述的鍵盤驅動程序;加載完成後,客戶端向伺服器端發起連接請求,伺服器收到連接請求後生成隨機數,伺服器端保留生成的隨機數的記錄,並把所述隨機數通過網絡連接發送到客戶端;B、客戶端接收並記錄伺服器返回的隨機數後,進入用戶帳號密碼輸入的界面;C、當用戶準備輸入密碼的時候,客戶端通過設備驅動程序的交互接口DeviceIoControl激活鍵盤驅動的加密功能。鍵盤驅動程序在計算機作業系統的驅動底層接收用戶輸入的鍵盤碼,按照所述的預設加密模塊和密鑰對步驟B中用戶輸入鍵盤碼進行加密,把加密後鍵盤碼投放到作業系統應用層,客戶端的帳號密碼輸入界面即可獲得加密後的用戶輸入的密碼信息;D、客戶端分別對用戶帳號,鍵盤驅動程序加密過的密碼信息+從伺服器接收的隨機數的組合數據,執行不可逆的安全哈希算法(SHA)進行消息摘要加密,把SHA(Account)和SHA(Password+RandomWord)的消息摘要數據一起封裝成網絡數據包,發送到伺服器端進行登錄驗證;E、伺服器端接收到客戶端的登錄數據包後,解析出帳號和密碼的SHA摘要信息;因為信息摘要算法是不可逆的,所以伺服器端存放的不是原始的帳號密碼,而是SHA加密的用戶帳號和私鑰加密的用戶密碼,利用客戶端發送來的帳號信息可以檢索出伺服器端存放在資料庫或者文件中的帳號和密碼。同樣,對檢索出來的密碼和隨機數的組合數據進行SHA信息摘要,把摘要信息和客戶端發送來的密碼摘要信息就行比對,即可驗證帳號密碼的準確性,通過後接受用戶登錄,否則拒絕登錄。
權利要求
1.一種保護網絡應用程式使用帳號密碼進行登錄的方法,通過客戶端密碼輸入,然後經過伺服器端驗證進行登陸,其特徵在於客戶端設置有通用鍵盤驅動程序,所述鍵盤驅動程序內預設有加密私鑰和私鑰加密模塊;同時,伺服器端也設置有加密私鑰和加密模塊,並且與客戶端使用的私鑰和私鑰加密模塊一致。
2.根據權利要求1所述一種保護網絡應用程式使用帳號密碼進行登錄的方法,其特徵在於具體使用步驟如下A、客戶端向伺服器端發起連接請求,伺服器收到連接請求後生成隨機數,伺服器端保留生成的隨機數的記錄,並把所述隨機數通過網絡連接發送到客戶端;B、客戶端接收並記錄伺服器返回的隨機數後,激活鍵盤驅動,接受用戶的帳號密碼輸入;C、所述鍵盤驅動程序預設的加密私鑰和私鑰加密模塊對步驟B用戶輸入的鍵盤碼進行加密,客戶端得到加密後的密碼信息;D、客戶端分別對用戶帳號信息,加密後的用戶密碼加上從步驟B得到的隨機數信息的組合數據進行不可逆的信息摘要加密,然後將帳號的摘要信息和密碼+隨機數組合數據的摘要信息封裝成登錄數據包發送到伺服器端請求驗證;E、伺服器端接收到客戶端的登錄數據包後,分別解析出帳號摘要信息和加密後密碼+隨機數組合數據的摘要信息,通過解析得到的帳號摘要信息檢索出伺服器端存放的帳號摘要信息和私鑰加密後的密碼信息,然後對檢索出來的加密密碼和伺服器端隨機數的組合數據執行和客戶端一樣的信息摘要加密,把生成信息摘要與客戶端發送來的加密後密碼+隨機數組合數據的摘要信息進行比對,即可判斷出帳號密碼的正確性。
3.根據權利要求2所述一種保護網絡應用程式使用帳號密碼進行登錄的方法,其特徵在於所述步驟C中,客戶端通過設備驅動程序的交互接口DeviceIoControl激活鍵盤驅動程序的加密功能,鍵盤驅動程序在作業系統的驅動底層接收輸入的鍵盤碼,通過加密私鑰和私鑰加密模塊對輸入鍵盤碼進行加密,把加密後的鍵盤碼放到作業系統應用層,客戶端得到的是用戶輸入密碼的加密後信息。
4.根據權利要求1所述一種保護網絡應用程式使用帳號密碼進行登錄的方法,其特徵在於所述私鑰加密模塊的算法採用數據加密標準DES。
5.根據權利要求2所述一種保護網絡應用程式使用帳號密碼進行登錄的方法,其特徵在於所述步驟D中客戶端對組合數據進行信息摘要加密採用不可逆的安全哈希算法。
全文摘要
本發明公開了一種保護網絡應用程式使用帳號密碼進行登錄的方法,通過客戶端密碼輸入,然後經過伺服器端驗證進行登陸,其特徵在於客戶端設置有通用鍵盤驅動程序,所述鍵盤驅動程序內預設有加密私鑰和私鑰加密模塊;同時,伺服器端也設置有加密私鑰和加密模塊,並且與客戶端使用的私鑰和私鑰加密模塊一致;本發明可以有效防止運行在作業系統應用層的具有鍵盤記錄功能的木馬病毒進程竊取用戶輸入的帳號密碼,也可以防止網絡監測工具截獲含有用戶帳號密碼等信息的登錄數據包並用軟體方法實施詐騙登錄。
文檔編號H04L9/32GK101051904SQ20071004911
公開日2007年10月10日 申請日期2007年5月17日 優先權日2007年5月17日
發明者周冠強 申請人:成都金山互動娛樂科技有限公司