身份驗證方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機網(wǎng)絡技術(shù)領(lǐng)域,特別是涉及一種身份驗證方法及裝置。
【背景技術(shù)】
[0002]隨著計算機和計算機網(wǎng)絡的日益普及,互聯(lián)網(wǎng)已經(jīng)深入到人們工作、學習和生活的各個領(lǐng)域。網(wǎng)絡的發(fā)展在為人們提供便利的同時也帶來各種挑戰(zhàn)。一些人會利用機器人程序大量地不當使用網(wǎng)絡資源,例如群發(fā)垃圾郵件等,使服務器效能大為降低。也有人利用程序不斷發(fā)出服務請求回應,進行“飽和攻擊”以達到使服務器癱瘓的目的。甚至還有人嘗試利用暴利破解等手段進行惡意破解密碼等行為。為避免上述惡意行為,設(shè)計一套能夠讓計算機自動分辨信息是來自合理用戶或是非正當使用的機器人程序的工具,就顯得非常重要。
[0003]使用圖像驗證碼是現(xiàn)在比較通行的方式,圖像驗證碼的主要目的是分辨網(wǎng)絡服務用戶是程序還是人類。圖像驗證碼是含有字符串的圖片,在驗證時要求用戶輸入字符串的內(nèi)容。字符串通常由大小寫字母和數(shù)字組成,部分驗證碼包含漢字或數(shù)學公式,字符串的長度可以是隨機或固定的。為了避免被機器自動識別,通常會對圖片的背景進行改進,例如增加各種紋理圖案等,從而對機器自動識別進行干擾。
[0004]然而,如圖1所示,現(xiàn)有的基于驗證碼圖片的身份驗證方法,需要用戶在驗證碼輸入框I中手動輸入驗證碼圖片2中所顯示的字符,由于手動輸入需要借助鍵盤來完成,因此決定了驗證碼圖片中的字符必須簡單易懂。目前驗證碼圖片中的內(nèi)容一般都采用字母或數(shù)字,可選擇范圍小,只要收集足夠的樣本,進行機器學習和訓練,很快就可以開發(fā)出可以破解驗證碼的自動機程序。即使是增加了背景的驗證碼圖片,如果背景庫不夠龐大,依然會被自動機破解。因此,驗證碼圖片的整體抗破解能力比較差,安全性比較低。
[0005]為了提高驗證碼的抗破解能力,研發(fā)人員開發(fā)了點選驗證碼,點選驗證碼在使用時通常會向用戶展示包含多個包含自然物體的圖片以及與這些圖片內(nèi)容相關(guān)的提示信息,由用戶根據(jù)提示信息對這些圖片進行選擇,根據(jù)用戶的選擇來對用戶的身份進行驗證,由于機器在對提示信息的理解以及對對象的分類這兩方面都存在很大的困難,因此可以大大增加機器破解驗證碼的難度。
[0006]但是,點選驗證碼在使用時,圖片資源要求很高,而且需要人工篩選分類入庫,成本較高。
【發(fā)明內(nèi)容】
[0007]本發(fā)明實施例的目的在于,提供一種成本較低且抗破解能力強、安全性高的身份驗證方法及裝置。
[0008]為了解決上述問題,本發(fā)明實施例提供一種身份驗證方法,所述方法包括:服務器接收用戶終端發(fā)送的驗證碼拉取請求;隨機選取圖片數(shù)據(jù)庫中的圖片,在所述圖片中添加特征增強元素以形成特征增強圖片,由所述特征增強圖片中切割出至少一張子圖片,被切割后的所述特征增強圖片形成驗證碼背景圖片,所述驗證碼背景圖片中被切割的區(qū)域形成與所述至少一張子圖片對應的空缺區(qū)域;將所述驗證碼背景圖片以及對應的子圖片下發(fā)給所述用戶終端,以使所述用戶終端將所述驗證碼背景圖片以及子圖片展示給用戶;以及接收所述用戶終端返回的、根據(jù)所述用戶的指令進行拼接的所述驗證碼背景圖片與所述子圖片的拼接結(jié)果,根據(jù)所述拼接結(jié)果,判斷所述子圖片是否被按照預定位置以及預定旋轉(zhuǎn)角度拼接在所述驗證碼背景圖片的空缺區(qū)域,如果是,驗證結(jié)果為通過,否則,驗證結(jié)果為不通過。
[0009]相應的,本發(fā)明實施例還提供一種身份驗證裝置,所述裝置可以運行于服務器,所述裝置可以包括:請求接收模塊,用于接收用戶終端發(fā)送的驗證碼拉取請求;驗證碼生成模塊,用于隨機選取圖片數(shù)據(jù)庫中的圖片,在所述圖片中添加特征增強元素以形成特征增強圖片,由所述特征增強圖片中切割出至少一張子圖片,被切割后的所述特征增強圖片形成驗證碼背景圖片,所述驗證碼背景圖片中被切割的區(qū)域形成與所述至少一張子圖片對應的空缺區(qū)域;圖片下發(fā)模塊,用于將所述驗證碼背景圖片以及對應的子圖片下發(fā)給所述用戶終端,以使所述用戶終端將所述驗證碼背景圖片以及子圖片展示給用戶;以及身份驗證模塊,用于接收所述用戶終端返回的、根據(jù)所述用戶的指令進行拼接的所述驗證碼背景圖片與所述子圖片的拼接結(jié)果,根據(jù)所述拼接結(jié)果,判斷所述子圖片是否被按照預定位置以及預定旋轉(zhuǎn)角度拼接在所述驗證碼背景圖片的空缺區(qū)域,如果是,驗證結(jié)果為通過,否則,驗證結(jié)果為不通過。
[0010]相對于現(xiàn)有技術(shù),本發(fā)明實施例中,驗證碼背景圖片的具體內(nèi)容不需要具有很強的類別辨識度,可以由服務器直接從互聯(lián)網(wǎng)上獲取,資源非常豐富,不需要人工進行分類,可以降低成本,另外也可以增加人工收集圖片作為破解題庫的難度;充分利用了人類對圖片內(nèi)容理解的先天優(yōu)勢,用戶根據(jù)對驗證碼背景圖片以及子圖片中內(nèi)容的關(guān)聯(lián)關(guān)系的認識對子圖片進行正確的擺放,由于機器在對圖片內(nèi)容的理解以及子圖片被旋轉(zhuǎn)后與背景圖片之間的關(guān)聯(lián)關(guān)系的認識這兩方面都存在很大的困難,因此大大增加了機器破解驗證碼的難度,安全性高;相對于點選驗證碼來說,不需要用戶根據(jù)問題對圖片進行類別辨識,提供了空缺區(qū)域供用戶選擇,降低了用戶的使用門檻。也就是說本發(fā)明在不影響用戶體驗的前提下可以大大提高驗證碼的抗破解力,有效的提高了用戶驗證的安全性;在對圖片進行切割前,通過在圖片中增加特征增強元素,可以改變原本連續(xù)具有相似特征的圖像數(shù)據(jù)的區(qū)域的區(qū)分度,使用戶更容易分辨出來子圖片對應的空缺區(qū)域以及擺放的方式,從而可以提高用戶通過驗證的成功率,另外,另外特征增強元素的隨機性也可以增加自動機破解的難度。
[0011]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其他目的、特征和優(yōu)點能夠更明顯易懂,以下特舉較佳實施例,并配合附圖,詳細說明如下。
【附圖說明】
[0012]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
[0013]圖1是現(xiàn)有的采用驗證碼圖片進行身份驗證時的交互界面示意圖。
[0014]圖2是本發(fā)明實施例的一種應用環(huán)境圖。
[0015]圖3是一種可應用于本發(fā)明實施例的用戶終端的結(jié)構(gòu)框圖。
[0016]圖4是一種可應用于本發(fā)明實施例的服務器的結(jié)構(gòu)框圖。
[0017]圖5是本發(fā)明實施例的另一種應用環(huán)境圖。
[0018]圖6是本發(fā)明第一實施例提供的一種身份驗證方法的流程圖。
[0019]圖7是本發(fā)明第一實施例中部分流程的具體流程圖。
[0020]圖8是未增加特征增強元素的驗證碼背景圖片以及對應子圖片的實例示意圖。
[0021]圖9是增加了特征增強元素后的驗證碼背景圖片以及對應子圖片的實例示意圖。
[0022]圖10是本發(fā)明第二實施例提供的一種身份驗證方法的流程圖。
[0023]圖11是本發(fā)明第三實施例提供的一種身份驗證方法的流程圖。
[0024]圖12是本發(fā)明第四實施例提供的一種身份驗證方法的流程圖。
[0025]圖13是本發(fā)明第五實施例提供的一種身份驗證裝置的結(jié)構(gòu)示意圖。
[0026]圖14是本發(fā)明第五實施例提供的一種身份驗證裝置中驗證碼生成模塊的結(jié)構(gòu)示意圖。
[0027]圖15是本發(fā)明第五實施例提供的一種身份驗證裝置中特征增強單元的結(jié)構(gòu)示意圖。
[0028]圖16是本發(fā)明第五實施例提供的一種身份驗證裝置中身份驗證模塊的一種結(jié)構(gòu)示意圖。
[0029]圖17是本發(fā)明第五實施例提供的一種身份驗證裝置中身份驗證模塊的另一種結(jié)構(gòu)示意圖。
[0030]圖18是本發(fā)明第六實施例提供的一種身份驗證裝置的結(jié)構(gòu)示意圖。
[0031]圖19是本發(fā)明第七實施例提供的一種身份驗證系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實施方式】
[0032]為更進一步闡述本發(fā)明為達成預定發(fā)明目的所采取的技術(shù)手段及功效,以下結(jié)合附圖及較佳實施例,對依據(jù)本發(fā)明提出的身份驗證方法及身份驗證裝置的【具體實施方式】、方法、步驟、結(jié)構(gòu)、特征及其功效,詳細說明如下。
[0033]有關(guān)本發(fā)明的前述及其他技術(shù)內(nèi)容、特點及功效,在以下配合參考圖式的較佳實施例的詳細說明中將可清楚呈現(xiàn)。通過【具體實施方式】的說明,當可對本發(fā)明為達成預定目的所采取的技術(shù)手段及功效得以更加深入且具體的了解,然而所附圖式僅是提供參考與說明之用,并非用來對本發(fā)明加以限制。
[0034]請參閱圖2,所示為本發(fā)明實施例提供的身份驗證方法的一種應用環(huán)境圖。如圖2所示,用戶終端100以及服務器200位于無線或有線網(wǎng)絡300中,通過該無線或有線網(wǎng)絡300,用戶終端100以及服務器200相互通信。
[0035]用戶終端100具體可以包括智能手機、平板電腦、電子書閱讀器、MP3播放器(Moving Picture Experts Group Aud1 Layer III,動態(tài)影像專家壓縮標準音頻層面 3)、MP4 (Moving Picture Experts Group Aud1 Layer IV,動態(tài)影像專家壓縮標準音頻層面4)播放器、膝上型便攜計算機、車載終端、可穿戴設(shè)備等等。用戶終端100中可以安裝瀏覽器或各種應用(包括系統(tǒng)應用以及第三方應用)的客戶端。
[0036]圖3示出了一種可應用于本發(fā)明實施例中的用戶終端的結(jié)構(gòu)框圖。如圖3所示,用戶終端100包括存儲器102、存儲控制器104,一個或多個(圖中僅示出一個)處理器106、外設(shè)接口 108、射頻模塊110、定位模塊112、圖像采集模塊114、音頻模塊116、觸控屏幕118以及按鍵模塊120。這些組件通過一條或多條通訊總線/信號線122相互通訊。
[0037]可以理解,圖3所示的結(jié)構(gòu)僅為示意,用戶終端100還可包括比圖3中所示更多或者更少的組件,或者具有與圖3所示不同的配置。圖3中所示的各組件可以采用硬件、軟件或其組合實現(xiàn)。
[0038]存儲器102可用于存儲軟件程序以及模塊,如本發(fā)明實施例中的身份驗證方法及裝置對應的程序指令/模塊,處理器106通過運行存儲在存儲器102內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應用以及數(shù)據(jù)處理,如本發(fā)明實施例提供的身份驗證方法。
[0039]存儲器102可包括高速隨機存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實例中,存儲器102可進一步包括相對于處理器106遠程設(shè)置的存儲器,這些遠程存儲器可以通過網(wǎng)絡連接至用戶終端100。上述網(wǎng)絡的實例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。處理器106以及其他可能的組件對存儲器102的訪問可在存儲控制器104的控制下進行。
[0040]外設(shè)接口 108將各種輸入/輸入裝置耦合至CPU以及存儲器102。處理器106運行存儲器102內(nèi)的各種軟件、指令以執(zhí)行用戶終端100的各種功能以及進行數(shù)據(jù)處理。
[0041]在一些實施例中,外設(shè)接口 108,處理器106以及存儲控制器104可以在單個芯片中實現(xiàn)。在其他一些實例中,他們可以分別由獨立的芯片實現(xiàn)。
[0042]射頻模塊110用于接收以及發(fā)送電磁波,實現(xiàn)電磁波與電信號的相互轉(zhuǎn)換,從而與通訊網(wǎng)絡或者其他設(shè)備進行通訊。射頻模塊110可包括各種現(xiàn)有的用于執(zhí)行這些功能的電路元件,例如,天線、射頻收發(fā)器、數(shù)字信號處理器、加密/解密芯片、用戶身份模