[發明專利]一種抗破解的驗證碼實現方法及裝置有效
| 申請號: | 201711011838.0 | 申請日: | 2017-10-26 |
| 公開(公告)號: | CN107819748B | 公開(公告)日: | 2021-04-06 |
| 發明(設計)人: | 張曉科;杜威;肖東爽 | 申請(專利權)人: | 北京頂象技術有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L9/06;G06F21/32 |
| 代理公司: | 北京云科知識產權代理事務所(特殊普通合伙) 11483 | 代理人: | 張飆 |
| 地址: | 100089 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 破解 驗證 實現 方法 裝置 | ||
1.一種抗破解的驗證碼實現方法,其特征在于,包括以下步驟:
步驟1、初始化數據采集階段,客戶端頁面加載后,向驗證服務端發出一個數據采集請求,請求會帶上采集的多維度數據信息;驗證服務端接收多維度數據信息,用hash算法生成信息摘要,即生成唯一的初始標示串,并給客戶端響應一個會話id,同時在驗證服務端保存這個會話id和初始標示串的映射關系;
步驟2、驗證數據采集階段,客戶端采集驗證碼交互過程中所需要的數據,同時采集和步驟1相同的多維度數據信息;客戶端將采集的驗證交互數據和步驟1相同的多維度數據信息,再帶上步驟1返回的會話id一起再次請求到驗證服務端;
步驟3、驗證結果判斷階段,驗證服務端用和步驟1相同的hash算法對步驟2采集的多維度數據信息進行信息摘要計算,生成驗證標示串;然后取出步驟2驗證請求中帶上的會話id,根據會話id與標示串映射關系取出初始標示串,對比驗證標示串和初始標示串是否一致,不一致說明驗證碼數據源不可靠;
其中,驗證服務端會根據采集上來的多維度數據通過規則來保證生成信息摘要的穩定性和唯一性,初始化采集階段,數據采集請求的響應結果里包含sessionId或一個會話id的標示值,會話id和標示串做映射,通過這個會話id可以找到標示串;
sessionid是一個會話的key,瀏覽器第一次訪問服務器會在服務器端生成一個session,有一個sessionid和它對應;網頁的請求響應是通過session來識別同一個會話,Session對象存儲特定用戶會話所需的屬性及配置信息;當用戶在應用程序的Web頁之間跳轉時,存儲在Session對象中的變量將不會丟失,而是在整個用戶會話中一直存在下去;當用戶請求來自應用程序的Web頁時,如果該用戶還沒有會話,則Web服務器將自動創建一個Session對象;當會話過期或被放棄后,服務器將終止該會話;
并且,標示串的生成實現:客戶端采集上來的數據可以不在驗證服務端做信息摘要,可以上傳到其他系統來做信息摘要,并將摘要的信息保存下來;
采集驗證所需數據后提交服務器的實現:標示串既可以跟隨采集的數據按照一種加密方式一起上傳到驗證服務端,也可以不上傳標示串,改為上傳其他的標示,只要能映射到第一步返回的標示串即可。
2.如權利要求1所述的一種抗破解的驗證碼實現方法,其特征在于:所述采集的多維度數據信息包含但不限于設備信息、瀏覽器通用信息、瀏覽器能力信息、用戶信息、設備指紋信息、插件信息、自定義信息。
3.如權利要求1所述的一種抗破解的驗證碼實現方法,其特征在于:所述多維度數據信息通過以下方式采集:通過JS或者Flash調用瀏覽器/系統API獲取信息,通過JS的API來判斷客戶端能力,通過某些自定義算法計算特征。
4.如權利要求1所述的一種抗破解的驗證碼實現方法,其特征在于:所述hash算法包括但不限于MD2算法、MD4算法、MD5算法、SHA-1算法、SHA-224算法、SHA-256算法、SHA-384算法和SHA-512算法。
5.如權利要求1所述的一種抗破解的驗證碼實現方法,其特征在于:所述生成的信息摘要,即生成唯一的標示串,在數據庫或內存或文件系統里進行存儲,用來標示一個請求源。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京頂象技術有限公司,未經北京頂象技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711011838.0/1.html,轉載請聲明來源鉆瓜專利網。





