本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種基于驗(yàn)證碼的校驗(yàn)方法及裝置。
背景技術(shù):
目前,驗(yàn)證碼(Completely Automated Public Turing test to tell Computers and Humens Apart,CAPTCHA,也稱為全自動(dòng)區(qū)分計(jì)算機(jī)和人類的圖靈測(cè)試)作為一種安全校驗(yàn)方式,得到了廣泛應(yīng)用,其中,驗(yàn)證碼可以區(qū)分操作者是用戶個(gè)人還是非法程序,通過(guò)驗(yàn)證碼可防止諸如:惡意嘗試登錄用戶賬戶、枚舉式破解用戶密碼、或者利用腳本控制進(jìn)行刷單、發(fā)言等非法操作。
現(xiàn)有技術(shù)中,為了防止非法程序?qū)︱?yàn)證碼的自動(dòng)識(shí)別,驗(yàn)證碼所采用的展示方式越來(lái)越復(fù)雜多變,通常采用如下方式進(jìn)行展示:方式一,如圖1a所示,驗(yàn)證碼使用數(shù)字或文字表達(dá),并在驗(yàn)證碼展示區(qū)中增加背景,或針對(duì)數(shù)字或文字進(jìn)行扭曲,以便增強(qiáng)驗(yàn)證碼的干擾程度。方式二,如圖1b所示,提供多張圖片以及提示信息,使得用戶基于提示信息從多張相似的圖片中識(shí)別出相應(yīng)數(shù)量的特定圖片。
然而,在上述的方式中,驗(yàn)證碼采用較為復(fù)雜的展示方式,雖然能夠?qū)Ψ欠_本自動(dòng)識(shí)別起到干擾作用,但同樣也增加了對(duì)用戶的干擾,換言之,當(dāng)上述的驗(yàn)證碼展示給用戶后,用戶識(shí)別錯(cuò)誤的概率會(huì)增加,一旦出錯(cuò),用戶需要刷新驗(yàn)證碼,并繼續(xù)對(duì)新生成的驗(yàn)證碼進(jìn)行識(shí)別,直到通過(guò)校驗(yàn)。顯然,現(xiàn)有技術(shù)中的上述校驗(yàn)過(guò)程可能需要耗費(fèi)較長(zhǎng)的時(shí)間,特別是在識(shí)別出錯(cuò)的情況下,將導(dǎo)致用戶需重復(fù)進(jìn)行校驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)實(shí)施例提供一種基于驗(yàn)證碼的校驗(yàn)方法,用以解決現(xiàn)有技術(shù)中用戶對(duì)驗(yàn)證碼識(shí)別出錯(cuò)可能性較大導(dǎo)致校驗(yàn)過(guò)程耗時(shí)較長(zhǎng)的問(wèn)題。
本申請(qǐng)實(shí)施例提供一種基于驗(yàn)證碼的校驗(yàn)裝置,用以解決現(xiàn)有技術(shù)中用戶對(duì)驗(yàn)證碼識(shí)別出錯(cuò)可能性較大導(dǎo)致校驗(yàn)過(guò)程耗時(shí)較長(zhǎng)的的問(wèn)題。
本申請(qǐng)實(shí)施例采用下述技術(shù)方案:
本申請(qǐng)實(shí)施例提供的一種基于驗(yàn)證碼的校驗(yàn)方法,包括:
接收校驗(yàn)請(qǐng)求;
當(dāng)接收到所述校驗(yàn)請(qǐng)求后,獲取預(yù)先生成的第一字符串;其中,所述第一字符串中包含至少一個(gè)可變字符;
根據(jù)預(yù)先建立的可變字符與備用字符的對(duì)應(yīng)關(guān)系,將部分或全部可變字符替換為備用字符,得到第二字符串;
根據(jù)所述第二字符串生成驗(yàn)證碼,對(duì)所述校驗(yàn)請(qǐng)求所對(duì)應(yīng)的用戶進(jìn)行校驗(yàn)。
本申請(qǐng)實(shí)施例提供的一種基于驗(yàn)證碼的校驗(yàn)裝置,包括:
接收模塊,接收校驗(yàn)請(qǐng)求;
獲取模塊,當(dāng)接收到所述校驗(yàn)請(qǐng)求后,獲取預(yù)先生成的第一字符串;其中,所述第一字符串中包含至少一個(gè)可變字符;
替換模塊,根據(jù)預(yù)先建立的可變字符與備用字符的對(duì)應(yīng)關(guān)系,將部分或全部可變字符替換為備用字符,得到第二字符串;
校驗(yàn)?zāi)K,根據(jù)所述第二字符串生成驗(yàn)證碼,對(duì)所述校驗(yàn)請(qǐng)求所對(duì)應(yīng)的用戶進(jìn)行校驗(yàn)。
本申請(qǐng)實(shí)施例采用的上述至少一個(gè)技術(shù)方案能夠達(dá)到以下有益效果:
業(yè)務(wù)提供方的服務(wù)器在針對(duì)用戶進(jìn)行校驗(yàn)的過(guò)程中,服務(wù)器會(huì)針對(duì)驗(yàn)證碼進(jìn)行字符替換的操作,相對(duì)于用戶個(gè)人而言,采用字符替換方式所生成的驗(yàn)證碼并不會(huì)影響用戶獲知其中的含義,并且,本申請(qǐng)實(shí)施例的驗(yàn)證碼中的字符并未采用諸如字形扭曲、顏色變換、添加背景等方式,使得用戶可以較為便捷且準(zhǔn)確地識(shí)別出驗(yàn)證碼,而對(duì)于計(jì)算機(jī)程序而言,經(jīng)過(guò)字符替換后的驗(yàn)證碼中可能包含多種類型的字符,并且不符合通常的語(yǔ)法,從而使得計(jì)算機(jī)程序難以依據(jù)識(shí)別算法有效地識(shí)別出該驗(yàn)證碼所表征的內(nèi)容,即可有效降低計(jì)算機(jī)程序執(zhí)行非法操作的可能。
相較于現(xiàn)有技術(shù)中的驗(yàn)證碼方式而言,本申請(qǐng)實(shí)施例中所提供的驗(yàn)證方式,提升了驗(yàn)證碼的可辨識(shí)性,使得用戶能夠直觀地獲知其表征的含義,從而能夠增加用戶辨識(shí)驗(yàn)證碼的準(zhǔn)確性,減少校驗(yàn)過(guò)程的耗時(shí),同時(shí),增加了計(jì)算機(jī)程序?qū)︱?yàn)證碼的識(shí)別難度,也能夠有效降低計(jì)算機(jī)程序執(zhí)行非法操作的可能。
附圖說(shuō)明
此處所說(shuō)明的附圖用來(lái)提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說(shuō)明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
圖1a及1b為現(xiàn)有技術(shù)中的驗(yàn)證碼示意圖;
圖2a為本申請(qǐng)實(shí)施例提供的基于驗(yàn)證碼的校驗(yàn)過(guò)程所基于的架構(gòu)示意圖;
圖2b為本申請(qǐng)實(shí)施例提供的基于驗(yàn)證碼的校驗(yàn)過(guò)程示意圖;
圖3為本申請(qǐng)實(shí)施例提供的生成字符替換驗(yàn)證碼所基于的架構(gòu)示意圖;
圖4a及4b為本申請(qǐng)實(shí)施例提供的不同校驗(yàn)方式的校驗(yàn)界面示意圖
圖5為本申請(qǐng)實(shí)施例提供的基于驗(yàn)證碼的校驗(yàn)裝置結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本申請(qǐng)的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請(qǐng)具體實(shí)施例及相應(yīng)的附圖對(duì)本申請(qǐng)技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
需要說(shuō)明的是,在本申請(qǐng)實(shí)施例中,校驗(yàn)過(guò)程可基于如圖2a所示的架構(gòu),校驗(yàn)過(guò)程可由在線業(yè)務(wù)提供方后臺(tái)的服務(wù)器實(shí)現(xiàn),其中,在線業(yè)務(wù)提供方包括但不限于:網(wǎng)站、電信運(yùn)營(yíng)商、數(shù)據(jù)中心等能夠提供在線業(yè)務(wù)的業(yè)務(wù)提供方。用于實(shí)現(xiàn)校驗(yàn)過(guò)程的服務(wù)器,具體可以是負(fù)責(zé)安全維護(hù)功能服務(wù)器,如:在線業(yè)務(wù)提供方后臺(tái)的安全中心服務(wù)器。這里并不構(gòu)成對(duì)本申請(qǐng)的限定。在后續(xù)描述中,將在線系統(tǒng)后臺(tái)的服務(wù)器統(tǒng)一稱為:服務(wù)器。
所述的用戶,可理解為使用在線業(yè)務(wù)提供方所提供的業(yè)務(wù)服務(wù)的操作者,這里需要說(shuō)明的是,在本申請(qǐng)實(shí)施例中的校驗(yàn)場(chǎng)景下,合法的操作者應(yīng)為自然人,而非法的操作者為計(jì)算機(jī)腳本、程序等。
以下結(jié)合附圖,詳細(xì)說(shuō)明本申請(qǐng)各實(shí)施例提供的技術(shù)方案。
如圖1所示,示出了本申請(qǐng)實(shí)施中的基于驗(yàn)證碼的校驗(yàn)過(guò)程,該過(guò)程具體包括以下步驟:
S101:接收校驗(yàn)請(qǐng)求。
在本申請(qǐng)實(shí)施例中,所述的校驗(yàn)請(qǐng)求通常在觸發(fā)校驗(yàn)后生成,實(shí)際操作中,可由用戶觸發(fā),也可由服務(wù)器自行根據(jù)實(shí)際應(yīng)用的需要觸發(fā)。
具體地,在一種可能的場(chǎng)景中,用戶可以主動(dòng)發(fā)送校驗(yàn)請(qǐng)求,此時(shí),所述的校驗(yàn)請(qǐng)求用于觸發(fā)驗(yàn)證碼的校驗(yàn)過(guò)程。作為該場(chǎng)景中的一種方式,驗(yàn)證碼的校驗(yàn)過(guò)程可以應(yīng)用在賬戶登錄的場(chǎng)景下,換言之,當(dāng)用戶進(jìn)入登錄界面(如:網(wǎng)站的賬戶登錄界面)后,便可視為用戶發(fā)出校驗(yàn)請(qǐng)求,相應(yīng)地,服務(wù)器便會(huì)接收到用戶發(fā)送的校驗(yàn)請(qǐng)求。
在另一種可能的場(chǎng)景中,服務(wù)器可以自行按照相應(yīng)的安全規(guī)則,對(duì)用戶進(jìn)行身份校驗(yàn),如:按照設(shè)定的周期,服務(wù)器主動(dòng)生成驗(yàn)證碼;或者,服務(wù)器判定用戶的某些操作具有風(fēng)險(xiǎn)時(shí),主動(dòng)生成驗(yàn)證碼,向用戶發(fā)起校驗(yàn),以便確定操作者不是由計(jì)算機(jī)程序所發(fā)出。當(dāng)然,這里并不構(gòu)成對(duì)本申請(qǐng)的限定。
S102:當(dāng)接收到所述校驗(yàn)請(qǐng)求后,獲取預(yù)先生成的第一字符串。
其中,所述第一字符串中包含至少一個(gè)可變字符。
所述的第一字符串,可理解為由數(shù)字、文字等構(gòu)成且具有指示作用的標(biāo)定字符串。
正是考慮到在實(shí)際應(yīng)用場(chǎng)景下,對(duì)于標(biāo)定的字符串較容易被計(jì)算機(jī)程序識(shí)別,從而增加了驗(yàn)證過(guò)程的風(fēng)險(xiǎn)。故在本申請(qǐng)實(shí)施例中,第一字符串中包含可變字符,該可變字符可被替換成其他字符,以便起到干擾作用。
S103:根據(jù)預(yù)先建立的可變字符與備用字符的對(duì)應(yīng)關(guān)系,將部分或全部可變字符替換為備用字符,得到第二字符串。
所述的備用字符,即可以與可變字符屬于同類別的字符,如:備用字符與可變字符均屬于漢字字符、英文字符、數(shù)字字符,也可以與可變字符屬于不同的字符類別。具體來(lái)說(shuō),作為本申請(qǐng)實(shí)施例中的一種方式,可將漢字轉(zhuǎn)換為拼音,如:將“紅”轉(zhuǎn)換為“hong”,作為另一種方式,可將某一文字(或詞組)轉(zhuǎn)換為同音字(或詞組),如:將“藍(lán)色”轉(zhuǎn)換為“蘭色”。
需要說(shuō)明的是,經(jīng)過(guò)字符替換后的第二字符串,其所要表征的含義并不會(huì)改變,也即,對(duì)應(yīng)用戶而言,仍能夠獲知驗(yàn)證碼所表征的含義,并可基于驗(yàn)證碼執(zhí)行相應(yīng)的操作。
S104:根據(jù)所述第二字符串生成驗(yàn)證碼,對(duì)所述校驗(yàn)請(qǐng)求所對(duì)應(yīng)的用戶進(jìn)行校驗(yàn)。
所述的驗(yàn)證碼,在實(shí)際操作時(shí),可采用圖片或文本信息等格式展示,并用于指示用戶執(zhí)行某一特定操作,這里并不構(gòu)成對(duì)本申請(qǐng)的限定。
正是由于第二字符串是進(jìn)行字符替換的字符串,那么,由第二字符串所生成的驗(yàn)證碼,能夠起到干擾作用,相較于現(xiàn)有技術(shù)中依賴字形扭曲、變色、背景等干擾的方式而言,本申請(qǐng)實(shí)施例中經(jīng)字符替換的驗(yàn)證碼所表征的含義并不會(huì)改變,并且由于不采用過(guò)于復(fù)雜的變化的方式,既能夠使得用戶獲知驗(yàn)證碼所表征的含義,也能夠使得用戶可以較為容易地進(jìn)行識(shí)別,此外,由于進(jìn)行了字符替換,增加了機(jī)器識(shí)別的難度。
經(jīng)過(guò)前述內(nèi)容,在生成了驗(yàn)證碼后,便可以針對(duì)相應(yīng)的操作者(即,用戶)進(jìn)行校驗(yàn),以區(qū)分操作者是用戶個(gè)人還是計(jì)算機(jī)程序。
當(dāng)然,作為本申請(qǐng)實(shí)施例中的一種可行方式,可以在相應(yīng)的校驗(yàn)界面(如:登錄界面)中向用戶展示驗(yàn)證碼,并在用戶根據(jù)該驗(yàn)證碼執(zhí)行了相應(yīng)的操作,根據(jù)標(biāo)定校驗(yàn)信息對(duì)用戶的操作進(jìn)行校驗(yàn)。
通過(guò)上述步驟,業(yè)務(wù)提供方的服務(wù)器在針對(duì)用戶進(jìn)行校驗(yàn)的過(guò)程中,服務(wù)器會(huì)針對(duì)驗(yàn)證碼進(jìn)行字符替換的操作,相對(duì)于用戶個(gè)人而言,采用字符替換方式所生成的驗(yàn)證碼并不會(huì)影響用戶獲知其中的含義,并且,本申請(qǐng)實(shí)施例的驗(yàn)證碼中的字符并未采用諸如字形扭曲、顏色變換、添加背景等方式,使得用戶可以較為便捷且準(zhǔn)確地識(shí)別出驗(yàn)證碼,而對(duì)于計(jì)算機(jī)程序而言,經(jīng)過(guò)字符替換后的驗(yàn)證碼中可能包含多種類型的字符,并且不符合通常的語(yǔ)法,從而使得計(jì)算機(jī)程序難以依據(jù)識(shí)別算法有效地識(shí)別出該驗(yàn)證碼所表征的內(nèi)容,即可有效降低計(jì)算機(jī)程序執(zhí)行非法操作的可能。
相較于現(xiàn)有技術(shù)中的驗(yàn)證碼方式而言,本申請(qǐng)實(shí)施例中所提供的驗(yàn)證方式,提升了驗(yàn)證碼的可辨識(shí)性,使得用戶能夠直觀地獲知其表征的含義,從而能夠增加用戶辨識(shí)驗(yàn)證碼的準(zhǔn)確性,減少校驗(yàn)過(guò)程的耗時(shí),同時(shí),增加了計(jì)算機(jī)程序?qū)︱?yàn)證碼的識(shí)別難度,也能夠有效降低計(jì)算機(jī)程序執(zhí)行非法操作的可能。
需要說(shuō)明的是,在本申請(qǐng)實(shí)施例中,針對(duì)驗(yàn)證碼的字符替換,由于不改變驗(yàn)證碼所表征的含義,故實(shí)質(zhì)上是將驗(yàn)證碼中的字符進(jìn)行同音或同義替換,也即,預(yù)先建立可變字符與備用字符的對(duì)應(yīng)關(guān)系,具體包括:針對(duì)任一可變字符,確定該可變字符的至少一個(gè)同音字符和/或同義字符,將確定的所述同音字符和/或同義字符作為該可變字符的備用字符,并建立與所述可變字符的對(duì)應(yīng)關(guān)系。
上述內(nèi)容中所述的第一字符串,可認(rèn)為是預(yù)先根據(jù)相應(yīng)的驗(yàn)證碼生成規(guī)則生成,并存儲(chǔ)在服務(wù)器側(cè)的數(shù)據(jù)庫(kù)中,其架構(gòu)示意圖如圖3所示。
在進(jìn)行字符替換的過(guò)程,可僅將個(gè)別的可變字符進(jìn)行替換,如:某驗(yàn)證碼字符串為漢字構(gòu)成的字符串“輸入兩個(gè)漢字”,假設(shè)該字符串中的六個(gè)漢字均為可變字符,實(shí)際操作時(shí),可僅將其中兩個(gè)可變字符“兩”及“漢”進(jìn)行替換,假設(shè)這兩個(gè)可變字符分別對(duì)應(yīng)有各自的備用字符:“倆”及“焊”,從而將可變字符替換為備用字符后的第二字符串變?yōu)椋骸拜斎雮z個(gè)焊字”。
當(dāng)然,也可將全部的字符進(jìn)行替換,如:對(duì)于第一字符串:“紅球”,假設(shè)其中兩個(gè)字符均為可變字符,各自分別對(duì)應(yīng)的備用字符為拼音:“hong”以及“qiu”,則經(jīng)過(guò)字符替換后的第二字符串為:“hongqiu”。
在實(shí)際應(yīng)用時(shí),如果可變字符串對(duì)應(yīng)不同的備用字符,那么,也可以采用混合式的替換方式,如:將第一字符串“選擇兩個(gè)紅球”,替換為“xuan擇倆個(gè)hong求”。
顯然,通過(guò)上述的替換方式,用戶個(gè)人能夠獲知驗(yàn)證碼字符所表征的含義,但對(duì)于計(jì)算機(jī)程序而言,將受到較強(qiáng)的干擾。
在實(shí)際操作時(shí),可基于字符替換后的第二字符串,生成相應(yīng)的驗(yàn)證碼,根據(jù)所述第二字符串生成驗(yàn)證碼,具體包括:根據(jù)所述第二字符串,生成指定格式的驗(yàn)證碼。其中,所述指定格式包括:圖片格式、文本格式中的至少一種。
在實(shí)際應(yīng)用場(chǎng)景下,用戶通常會(huì)根據(jù)驗(yàn)證碼執(zhí)行某種操作,例如:用戶根據(jù)驗(yàn)證碼輸入相應(yīng)的字符串,又或者,用戶根據(jù)驗(yàn)證碼所指示的行為,執(zhí)行某種操作。而無(wú)論是用戶輸入字符串或是執(zhí)行某種操作,在服務(wù)器側(cè),都需進(jìn)行校驗(yàn),為了保證校驗(yàn)的準(zhǔn)確性,故在服務(wù)器側(cè)將確定校驗(yàn)標(biāo)準(zhǔn)??梢岳斫獾?,所述的標(biāo)定校驗(yàn)信息,是一種校驗(yàn)標(biāo)準(zhǔn),只有用戶的操作符合該校驗(yàn)標(biāo)準(zhǔn),才可通過(guò)校驗(yàn)。
作為在實(shí)際應(yīng)用場(chǎng)景下的一種校驗(yàn)方式,用戶可以根據(jù)校驗(yàn)界面中所展示的驗(yàn)證碼輸入相應(yīng)的字符串,在此方式下,標(biāo)定校驗(yàn)信息就是第一字符串,對(duì)所述校驗(yàn)請(qǐng)求所對(duì)應(yīng)的用戶進(jìn)行校驗(yàn),具體包括:在對(duì)用戶進(jìn)行校驗(yàn)的界面上,生成輸入?yún)^(qū)域,獲取用戶在所述輸入?yún)^(qū)域內(nèi)根據(jù)所述驗(yàn)證碼所輸入的待校驗(yàn)字符串,根據(jù)所述第一字符串,對(duì)所述待校驗(yàn)字符串進(jìn)行校驗(yàn)。
也即,如圖4a所示,示出了該方式下的校驗(yàn)界面,可見(jiàn),該校驗(yàn)界面中包含驗(yàn)證碼和相應(yīng)的輸入?yún)^(qū)域,用戶根據(jù)驗(yàn)證碼在該輸入?yún)^(qū)域中輸入相應(yīng)的字符串以進(jìn)行校驗(yàn),當(dāng)然,在圖4a中,用戶根據(jù)驗(yàn)證碼“hong色”(該驗(yàn)證碼中為第二字符串),在輸入?yún)^(qū)中輸入漢字詞組“紅色”后(假設(shè)第一字符串:紅色),才可通過(guò)校驗(yàn)。
而作為在實(shí)際應(yīng)用場(chǎng)景下的另一種校驗(yàn)方式,用戶可以根據(jù)校驗(yàn)界面中所展示的驗(yàn)證碼執(zhí)行相應(yīng)的校驗(yàn)操作,在此方式下,所述標(biāo)定校驗(yàn)信息包括:預(yù)設(shè)的標(biāo)準(zhǔn)操作信息,對(duì)所述校驗(yàn)請(qǐng)求所對(duì)應(yīng)的用戶進(jìn)行校驗(yàn),具體包括:在對(duì)用戶進(jìn)行校驗(yàn)的界面上,生成可操作的驗(yàn)證碼展示區(qū),獲取所述用戶在驗(yàn)證碼展示區(qū)內(nèi),根據(jù)所述驗(yàn)證碼所執(zhí)行的待校驗(yàn)操作所對(duì)應(yīng)的待校驗(yàn)操作信息,根據(jù)所述標(biāo)定操作信息,對(duì)所述待校驗(yàn)操作信息進(jìn)行校驗(yàn)。
如圖4b所示,示出了該方式下的校驗(yàn)界面,可見(jiàn),該校驗(yàn)界面中包含可操作且攜帶驗(yàn)證碼的驗(yàn)證碼展示區(qū),用戶可以根據(jù)驗(yàn)證碼所指示的行為,在該驗(yàn)證碼展示區(qū)發(fā)出相應(yīng)的待校驗(yàn)操作,在圖4b中,假設(shè)標(biāo)準(zhǔn)操作信息為操作控件“2”和“4”被點(diǎn)擊,那么,用戶根據(jù)驗(yàn)證碼“點(diǎn)擊下圖中的ou數(shù)”,針對(duì)驗(yàn)證碼展示區(qū)內(nèi)的操作控件“2”和“4”進(jìn)行點(diǎn)擊后,可通過(guò)校驗(yàn)。
當(dāng)然,上述兩種方式僅是為了說(shuō)明本申請(qǐng)實(shí)施例中的校驗(yàn)方法,并不構(gòu)成對(duì)本申請(qǐng)的限定。
以上為本申請(qǐng)實(shí)施例提供的校驗(yàn)方法,基于同樣的思路,本申請(qǐng)實(shí)施例還提供一種基于驗(yàn)證碼的校驗(yàn)裝置。
如圖5所示,所述的校驗(yàn)裝置,設(shè)置于業(yè)務(wù)提供方的服務(wù)器側(cè),該裝置包括:
接收模塊501,接收校驗(yàn)請(qǐng)求;
獲取模塊502,當(dāng)接收到所述校驗(yàn)請(qǐng)求后,獲取預(yù)先生成的第一字符串;其中,所述第一字符串中包含至少一個(gè)可變字符;
替換模塊503,根據(jù)預(yù)先建立的可變字符與備用字符的對(duì)應(yīng)關(guān)系,將部分或全部可變字符替換為備用字符,得到第二字符串;
校驗(yàn)?zāi)K504,根據(jù)所述第二字符串生成驗(yàn)證碼,對(duì)所述校驗(yàn)請(qǐng)求所對(duì)應(yīng)的用戶進(jìn)行校驗(yàn)。
所述裝置還包括:建立模塊505,針對(duì)任一可變字符,確定該可變字符的至少一個(gè)同音字符和/或同義字符,將確定的所述同音字符和/或同義字符作為該可變字符的備用字符,并建立與所述可變字符的對(duì)應(yīng)關(guān)系。
所述校驗(yàn)?zāi)K504,根據(jù)所述第二字符串,生成指定格式的驗(yàn)證碼。其中,所述指定格式包括:圖片格式、文本格式中的至少一種。
所述校驗(yàn)?zāi)K504,在對(duì)用戶進(jìn)行校驗(yàn)的界面上,生成輸入?yún)^(qū)域,獲取用戶在所述輸入?yún)^(qū)域內(nèi)根據(jù)所述驗(yàn)證碼所輸入的待校驗(yàn)字符串,根據(jù)所述第一字符串,對(duì)所述待校驗(yàn)字符串進(jìn)行校驗(yàn)。
所述校驗(yàn)?zāi)K504,在對(duì)用戶進(jìn)行校驗(yàn)的界面上,生成可操作的驗(yàn)證碼展示區(qū),獲取所述用戶在驗(yàn)證碼展示區(qū)內(nèi),根據(jù)所述驗(yàn)證碼所執(zhí)行的待校驗(yàn)操作所對(duì)應(yīng)的待校驗(yàn)操作信息,根據(jù)預(yù)設(shè)的標(biāo)定操作信息,對(duì)所述待校驗(yàn)操作信息進(jìn)行校驗(yàn)。
在20世紀(jì)90年代,對(duì)于一個(gè)技術(shù)的改進(jìn)可以很明顯地區(qū)分是硬件上的改進(jìn)(例如,對(duì)二極管、晶體管、開(kāi)關(guān)等電路結(jié)構(gòu)的改進(jìn))還是軟件上的改進(jìn)(對(duì)于方法流程的改進(jìn))。然而,隨著技術(shù)的發(fā)展,當(dāng)今的很多方法流程的改進(jìn)已經(jīng)可以視為硬件電路結(jié)構(gòu)的直接改進(jìn)。設(shè)計(jì)人員幾乎都通過(guò)將改進(jìn)的方法流程編程到硬件電路中來(lái)得到相應(yīng)的硬件電路結(jié)構(gòu)。因此,不能說(shuō)一個(gè)方法流程的改進(jìn)就不能用硬件實(shí)體模塊來(lái)實(shí)現(xiàn)。例如,可編程邏輯器件(Programmable Logic Device,PLD)(例如現(xiàn)場(chǎng)可編程門(mén)陣列(Field Programmable Gate Array,F(xiàn)PGA))就是這樣一種集成電路,其邏輯功能由用戶對(duì)器件編程來(lái)確定。由設(shè)計(jì)人員自行編程來(lái)把一個(gè)數(shù)字系統(tǒng)“集成”在一片PLD上,而不需要請(qǐng)芯片制造廠商來(lái)設(shè)計(jì)和制作專用的集成電路芯片。而且,如今,取代手工地制作集成電路芯片,這種編程也多半改用“邏輯編譯器(logic compiler)”軟件來(lái)實(shí)現(xiàn),它與程序開(kāi)發(fā)撰寫(xiě)時(shí)所用的軟件編譯器相類似,而要編譯之前的原始代碼也得用特定的編程語(yǔ)言來(lái)撰寫(xiě),此稱之為硬件描述語(yǔ)言(Hardware Description Language,HDL),而HDL也并非僅有一種,而是有許多種,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)與Verilog。本領(lǐng)域技術(shù)人員也應(yīng)該清楚,只需要將方法流程用上述幾種硬件描述語(yǔ)言稍作邏輯編程并編程到集成電路中,就可以很容易得到實(shí)現(xiàn)該邏輯方法流程的硬件電路。
控制器可以按任何適當(dāng)?shù)姆绞綄?shí)現(xiàn),例如,控制器可以采取例如微處理器或處理器以及存儲(chǔ)可由該(微)處理器執(zhí)行的計(jì)算機(jī)可讀程序代碼(例如軟件或固件)的計(jì)算機(jī)可讀介質(zhì)、邏輯門(mén)、開(kāi)關(guān)、專用集成電路(Application Specific Integrated Circuit,ASIC)、可編程邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存儲(chǔ)器控制器還可以被實(shí)現(xiàn)為存儲(chǔ)器的控制邏輯的一部分。本領(lǐng)域技術(shù)人員也知道,除了以純計(jì)算機(jī)可讀程序代碼方式實(shí)現(xiàn)控制器以外,完全可以通過(guò)將方法步驟進(jìn)行邏輯編程來(lái)使得控制器以邏輯門(mén)、開(kāi)關(guān)、專用集成電路、可編程邏輯控制器和嵌入微控制器等的形式來(lái)實(shí)現(xiàn)相同功能。因此這種控制器可以被認(rèn)為是一種硬件部件,而對(duì)其內(nèi)包括的用于實(shí)現(xiàn)各種功能的裝置也可以視為硬件部件內(nèi)的結(jié)構(gòu)?;蛘呱踔?,可以將用于實(shí)現(xiàn)各種功能的裝置視為既可以是實(shí)現(xiàn)方法的軟件模塊又可以是硬件部件內(nèi)的結(jié)構(gòu)。
上述實(shí)施例闡明的系統(tǒng)、裝置、模塊或單元,具體可以由計(jì)算機(jī)芯片或?qū)嶓w實(shí)現(xiàn),或者由具有某種功能的產(chǎn)品來(lái)實(shí)現(xiàn)。一種典型的實(shí)現(xiàn)設(shè)備為計(jì)算機(jī)。具體的,計(jì)算機(jī)例如可以為個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)、蜂窩電話、相機(jī)電話、智能電話、個(gè)人數(shù)字助理、媒體播放器、導(dǎo)航設(shè)備、電子郵件設(shè)備、游戲控制臺(tái)、平板計(jì)算機(jī)、可穿戴設(shè)備或者這些設(shè)備中的任何設(shè)備的組合。
為了描述的方便,描述以上裝置時(shí)以功能分為各種單元分別描述。當(dāng)然,在實(shí)施本申請(qǐng)時(shí)可以把各單元的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤(pán)存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
在一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤(pán)只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能光盤(pán)(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤(pán)存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問(wèn)的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
還需要說(shuō)明的是,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、商品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、商品或者設(shè)備中還存在另外的相同要素。
本領(lǐng)域技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤(pán)存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本申請(qǐng)可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定事務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本申請(qǐng),在這些分布式計(jì)算環(huán)境中,由通過(guò)通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來(lái)執(zhí)行事務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。
本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。
以上所述僅為本申請(qǐng)的實(shí)施例而已,并不用于限制本申請(qǐng)。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),本申請(qǐng)可以有各種更改和變化。凡在本申請(qǐng)的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的權(quán)利要求范圍之內(nèi)。