[發明專利]安全的密碼存儲驗證方法和裝置有效
| 申請號: | 201711031339.8 | 申請日: | 2017-10-27 |
| 公開(公告)號: | CN107911343B | 公開(公告)日: | 2020-09-15 |
| 發明(設計)人: | 高安存 | 申請(專利權)人: | 深圳英飛拓科技股份有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L9/32;H04L9/08;H04L9/06 |
| 代理公司: | 深圳市精英專利事務所 44242 | 代理人: | 葛勤 |
| 地址: | 518000 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 安全 密碼 存儲 驗證 方法 裝置 | ||
1.一種安全的密碼存儲驗證方法,其特征在于:它包括密碼存儲流程和密碼驗證流程,所述密碼存儲流程包括:
S10)、客戶端獲取用戶的用戶名及密碼;
S11)、客戶端從服務器端獲取一個Salt;
S12)、客戶端對用戶的密碼加Salt;
S13)、客戶端對加Salt后的密碼用哈希算法計算得到哈希值密碼;
S14)、客戶端將用戶名、Salt和哈希值密碼存儲到服務器端;
所述密碼驗證流程包括:
S20)、客戶端獲取服務器端的會話token及與用戶的用戶名對應存儲的Salt,而后對用戶的密碼加Salt后計算得到哈希值密碼,再以token為key,使用hmac_sha256_hex計算得到二次哈希值密碼,并將二次哈希值密碼發送到服務器端;
S30)、服務器端接收從客戶端發送的用戶名和二次哈希值密碼,服務器端以與客戶端會話的token為key,使用hmac_sha256_hex對存儲在服務器端與用戶端發送的用戶名對應的哈希值密碼計算得到二次哈希值密碼,將客戶端二次哈希值密碼與服務器端的二次哈希值密碼進行對比驗證,并將驗證結果反饋至客戶端。
2.如權利要求1所述的安全的密碼存儲驗證方法,其特征在于:步驟S20具體包括:
S21)、客戶端獲取用戶的用戶名和密碼;
S22)、客戶端將用戶的用戶名發送至服務器端;
S23)、服務器端就本次會話生成唯一的token;
S24)、服務器端將token與用戶存儲在服務器端與用戶的用戶名對應的Salt,一起發送至客戶端;
S25)、客戶端對用戶的密碼加Salt后計算得到哈希值密碼;
S26)、客戶端將哈希值密碼與用戶名拼接;
S27)、客戶端以token為key,使用hmac_sha256_hex計算得到二次哈希值密碼;
S28)、客戶端將二次哈希值密碼發送到服務器端。
3.如權利要求2所述的安全的密碼存儲驗證方法,其特征在于:步驟S30具體包括:
S31)、服務器端接收到客戶端發送的用戶名和二次哈希值密碼;
S32)、服務器端通過用戶名從服務器端查詢用戶名對應的哈希值密碼;
S33)、服務器端將哈希值密碼與用戶名拼接;
S34)、服務器端以本次與客戶端會話生成的唯一token為key,使用hmac_sha256_hex對存儲在服務器端的哈希值密碼計算得到二次哈希值密碼;
S35)、服務器端對客戶端二次哈希值密碼與服務器端的二次哈希值密碼進行對比驗證;
S36)、服務器端將驗證結果發送客戶端;
如果密碼一致,則驗證通過;
如果密碼不一致,則驗證不通過。
4.如權利要求1所述的安全的密碼存儲驗證方法,其特征在于:它還包括有密碼修改流程,包括:
S41)、客戶端獲取用戶的用戶名及新密碼;
S42)、客戶端從服務器端獲取一個新的Salt;
S43)、客戶端將用戶的新密碼加Salt;
S44)、客戶端通過哈希算法計算得到新的哈希值密碼;
S45)、客戶端將用戶名、新的Salt和哈希值密碼存儲到服務器端。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳英飛拓科技股份有限公司,未經深圳英飛拓科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711031339.8/1.html,轉載請聲明來源鉆瓜專利網。





