一種密碼校驗方法和裝置的制造方法
【技術領域】
[0001] 本申請涉及信息安全技術領域,尤其涉及一種密碼校驗方法和裝置。
【背景技術】
[0002] 隨著互聯網技術的廣泛發(fā)展,信息安全問題尤為突出。用戶在使用互聯網購物、辦 理銀行業(yè)務的時候,一旦發(fā)生密碼泄露,那么將可能給用戶帶來巨大的損失。
[0003] 目前,為了保障用戶密碼在互聯網中安全傳輸,各應用通常會開發(fā)密碼控件,使用 鍵盤鉤子獲取用戶在登錄或驗證身份時輸入的密碼,將該密碼進行加密后發(fā)送到服務端, 以保證密碼安全傳輸。然而,非法人員可以通過設置更底層的鉤子,或者清除掉密碼控件的 鉤子并掛接自己設置的鉤子,甚至是直接通過設置鍵盤過濾驅動來截獲到密碼,使得用戶 輸入的密碼在加密前被截獲到,嚴重危害用戶的密碼安全。
【發(fā)明內容】
[0004] 有鑒于此,本申請?zhí)峁┮环N客戶端密碼保護方法和裝置。
[0005] 具體地,本申請是通過如下技術方案實現的:
[0006] 一種密碼校驗方法,應用在客戶端上,所述方法包括:
[0007] 模擬鍵盤向客戶端的密碼輸入框所屬的線程發(fā)送隨機密碼;
[0008] 將所述隨機密碼加密后發(fā)送給服務端;
[0009] 將通過所述密碼輸入框所屬的線程獲取到的混合密碼加密后發(fā)送給服務端,所述 混合密碼包括所述隨機密碼和用戶輸入的用戶密碼,以供服務端在所述混合密碼中過濾所 述隨機密碼以得到所述用戶密碼,并校驗所述用戶密碼。
[0010] 進一步地,所述模擬鍵盤向客戶端的密碼輸入框所屬的線程發(fā)送隨機密碼包括:
[0011] 在客戶端的密碼輸入框處于焦點狀態(tài)時,模擬鍵盤向所述線程發(fā)送隨機密碼。
[0012] 進一步地,所述將所述隨機密碼加密后發(fā)送給服務端包括:在接收到用戶的登錄 指令時,將所述隨機密碼加密后發(fā)送給服務端;
[0013] 所述將通過所述密碼輸入框所屬的線程獲取到的混合密碼加密后發(fā)送給服務端 包括:在接收到用戶的登錄指令時,將所述混合密碼加密后發(fā)送給服務端。
[0014] 進一步地,所述模擬鍵盤向客戶端的密碼輸入框所屬的線程發(fā)送隨機密碼包括: 模擬鍵盤使用預設的線程向所述密碼輸入框發(fā)送隨機密碼;
[0015] 所述方法還包括:
[0016] 在所述密碼輸入框中隱藏來自所述預設的線程的隨機密碼。
[0017] 進一步地,所述方法還包括:
[0018] 緩存向客戶端的密碼輸入框所屬的線程發(fā)送的所述隨機密碼;
[0019] 在將緩存的所述隨機密碼加密后發(fā)送給服務端之后,清空緩存。
[0020] 進一步地,所述模擬鍵盤向客戶端的密碼輸入框所屬的線程發(fā)送隨機密碼包括:
[0021] 通過發(fā)送鍵盤消息以模擬鍵盤向客戶端的密碼輸入框所屬的線程發(fā)送隨機密碼。
[0022] -種密碼校驗方法,應用在服務端上,所述方法包括:
[0023] 解密客戶端發(fā)送的加密后的混合密碼,得到所述混合密碼,所述混合密碼包括隨 機密碼和用戶輸入的用戶密碼;
[0024] 解密客戶端發(fā)送的加密后的隨機密碼,得到所述隨機密碼;
[0025] 過濾所述混合密碼中的所述隨機密碼,得到所述用戶密碼;
[0026] 根據所述用戶密碼進行校驗。
[0027] 進一步地,所述過濾所述混合密碼中的所述隨機密碼包括:
[0028] 在所述混合密碼中依次過濾所述隨機密碼的每一個字符。
[0029] 一種密碼校驗裝置,應用在客戶端上,所述裝置包括:
[0030] 隨機發(fā)送單元,模擬鍵盤向客戶端的密碼輸入框所屬的線程發(fā)送隨機密碼;
[0031] 第一發(fā)送單元,將所述隨機密碼加密后發(fā)送給服務端;
[0032] 第二發(fā)送單元,將通過所述密碼輸入框所屬的線程獲取到的混合密碼加密后發(fā)送 給服務端,所述混合密碼包括所述隨機密碼和用戶輸入的用戶密碼,以供服務端在所述混 合密碼中過濾所述隨機密碼以得到所述用戶密碼,并校驗所述用戶密碼。
[0033] 進一步地,在客戶端的密碼輸入框處于焦點狀態(tài)時,所述隨機發(fā)送單元模擬鍵盤 向所述線程發(fā)送隨機密碼。
[0034] 進一步地,在接收到用戶的登錄指令時,所述第一發(fā)送單元將所述隨機密碼加密 后發(fā)送給服務端;
[0035] 在接收到用戶的登錄指令時,所述第二發(fā)送單元將所述混合密碼加密后發(fā)送給服 務端。
[0036] 進一步地,所述隨機發(fā)送單元,具體模擬鍵盤使用預設的線程向所述密碼輸入框 發(fā)送隨機密碼;
[0037] 所述裝置還包括:
[0038] 隨機隱藏單元,在所述密碼輸入框中隱藏來自所述預設的線程的隨機密碼。
[0039] 進一步地,所述裝置還包括:
[0040] 隨機緩存單元,緩存向客戶端的密碼輸入框所屬的線程發(fā)送的所述隨機密碼;
[0041] 所述第一發(fā)送單元在將緩存的所述隨機密碼加密后發(fā)送給服務端之后,清空緩 存。
[0042] 進一步地,所述隨機發(fā)送單元,具體通過發(fā)送鍵盤消息以模擬鍵盤向客戶端的密 碼輸入框所屬的線程發(fā)送隨機密碼。
[0043] 一種密碼校驗裝置,應用在服務端上,所述裝置包括:
[0044] 第一解密單元,解密客戶端發(fā)送的加密后的混合密碼,得到所述混合密碼,所述混 合密碼包括隨機密碼和用戶輸入的用戶密碼;
[0045] 第二解密單元,解密客戶端發(fā)送的加密后的隨機密碼,得到所述隨機密碼;
[0046] 隨機過濾單元,過濾所述混合密碼中的所述隨機密碼,得到所述用戶密碼;
[0047] 密碼校驗單元,根據所述用戶密碼進行校驗。
[0048] 進一步地,所述隨機過濾單元,具體在所述混合密碼中依次過濾所述隨機密碼的 每一個字符。
[0049] 由以上描述可以看出,本申請通過模擬鍵盤向密碼輸入框所屬的線程發(fā)送隨機密 碼,從而將所述隨機密碼和用戶輸入的用戶密碼混合在一起,使攻擊者無法截獲到用戶密 碼,其實際上截獲到的是所述隨機密碼和用戶密碼混合后的混合密碼,從而確保了用戶密 碼的安全并實現校驗過程。
【附圖說明】
[0050] 圖1是本申請一實施例中密碼校驗方法的流程示意圖。
[0051] 圖2是本申請另一實施例中密碼校驗方法的流程示意圖。
[0052] 圖3是本申請一實施例中用戶登錄界面的示意圖。
[0053] 圖4是本申請另一實施例中密碼校驗方法的流程示意圖。
[0054] 圖5是本申請一實施例中客戶端的結構示意圖。
[0055] 圖6是本申請一實施例中密碼校驗裝置的結構示意圖。
[0056] 圖7是本申請一實施例中服務端的結構示意圖。
[0057] 圖8是本申請另一實施例中密碼校驗裝置的結構示意圖。
【具體實施方式】
[0058] 這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及 附圖時,除非另有表示,不同附圖中的相同數字表示相同或相似的要素。以下示例性實施例 中所描述的實施方式并不代表與本申請相一致的所有實施方式。相反,它們僅是與如所附 權利要求書中所詳述的、本申請的一些方面相一致的裝置和方法的例子。
[0059] 在本申請使用的術語是僅僅出于描述特定實施例的目的,而非旨在限制本申請。 在本申請和所附權利要求書中所使用的單數形式的" 一種"、"所述"和"該"也旨在包括多 數形式,除非上下文清楚地表示其他含義。還應當理解,本文中使用的術語"和/或"是指 并包含一個或多個相關聯的列出項目的任何或所有可能組合。
[0060] 應當理解,盡管在本申請可能采用術語第一、第二、第三等來描述各種信息,但這 些信息不應限于這些術語。這些術語僅用來將同一類型的信息彼此區(qū)分開。例如,在不脫離 本申請范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第 一信息。取決于語境,如在此所使用的詞語"如果"可以被解釋成為"在……時"或"當…… 時"或"響應于確定"。
[0061] 針對當前存在的上述問題,本申請?zhí)峁┮环N密碼校驗方案,通過模擬鍵盤發(fā)送隨 機密碼到客戶端的密碼輸入框所屬的線程,將隨機密碼和用戶輸入的用戶密碼混合在一 起,即便被攻擊者截獲,攻擊者也無法從中獲取到用戶密碼,從而確保用戶密碼的安全。
[0062] 下面結合實施例詳細描述本申請的具體實現。
[0063] 本申請?zhí)峁┮环N密碼校驗方法,分別應用在客戶端和服務端上。請參考圖1,應用 在客戶端的密碼校驗方法包括以