PHP開發(fā)驗(yàn)證碼教程之驗(yàn)證碼的其他信息
驗(yàn)證碼一般是防止批量注冊(cè)的,人眼看起來(lái)都費(fèi)勁,何況是機(jī)器。二像百度貼吧未成為該吧會(huì)員發(fā)貼要輸入驗(yàn)證碼大概是防止大規(guī)模匿名回帖的發(fā)生。目前,不少網(wǎng)站為了防止用戶利用機(jī)器人自動(dòng)注冊(cè)、登錄、灌水,都采用了驗(yàn)證碼技術(shù)。所謂驗(yàn)證碼,就是將一串隨機(jī)產(chǎn)生的數(shù)字或符號(hào),生成一幅圖片, 圖片里加上一些干擾,例如隨機(jī)畫數(shù)條直線,畫一些點(diǎn)(防止OCR),由用戶肉眼識(shí)別其中的驗(yàn)證碼信息,輸入表單提交網(wǎng)站驗(yàn)證,驗(yàn)證成功后才能使用某項(xiàng)功能。
一般注冊(cè)用戶ID的地方以及各大論壇都要輸入驗(yàn)證
常見的驗(yàn)證碼:
(1)四位數(shù)字和字母,可能都是字母,也可能都是數(shù)字,隨機(jī)的4位字符串,最原始的驗(yàn)證碼,驗(yàn)證作用幾乎為零。CSDN網(wǎng)站用戶登錄用的是GIF格式,常用 的隨機(jī)數(shù)字圖片驗(yàn)證碼。圖片上的字符比較中規(guī)中矩,驗(yàn)證作用比上一個(gè)好。
(2)漢字是注冊(cè)目前最新的驗(yàn)證碼,隨機(jī)生成,打起來(lái)比較難,例如QQ申訴頁(yè)面。
(3)MS的hotmail申請(qǐng)時(shí)候的是BMP格式, 隨機(jī)數(shù)字+隨機(jī)大寫英文字母+隨機(jī)干擾像素+隨機(jī)位置。
(4)韓文或日文,現(xiàn)在跑跑HF上MS注冊(cè)要打韓文,增加了難度。
(5)Google的Gmail注冊(cè)時(shí)候的是JPG格式,隨機(jī)英文字母+隨機(jī)顏色+隨機(jī)位置+隨機(jī)長(zhǎng)度。
(6)其他各大論壇的是XBM格式,內(nèi)容隨機(jī)。
(7)廣告驗(yàn)證碼:輸入廣告中的部分內(nèi)容即可,特點(diǎn)是可以給網(wǎng)站帶來(lái)額外收入,也可以使使用者耳目一新。
(8)問(wèn)題驗(yàn)證碼:?jiǎn)栴}驗(yàn)證碼主要是以問(wèn)答式的形式來(lái)進(jìn)行填寫。它的查看比加模驗(yàn)證碼更容易辨別和錄入,系統(tǒng)可以生成諸如“1+2=?”的問(wèn)題讓用戶進(jìn) 行 回答,當(dāng)然這樣的問(wèn)題是隨機(jī)生成的。另一種問(wèn)題驗(yàn)證碼,則是文字式的問(wèn)題驗(yàn)證碼,諸如生成問(wèn)題“中國(guó)的全稱是什么?”,當(dāng)然有些網(wǎng)站還 在問(wèn)題后面給出了提示答案或直接答案
4.驗(yàn)證碼其他作用:
防止惡意注冊(cè)
幾乎所有正規(guī)的論壇都要求注冊(cè)時(shí)輸入驗(yàn)證碼,這是為了防止亂發(fā)垃圾廣告的人用注冊(cè)機(jī)來(lái)惡意注冊(cè)。這個(gè)源自美國(guó)卡內(nèi)基-梅隆大學(xué)的發(fā)明被稱為CAPTCHA(用于區(qū)分人類與電腦的全自動(dòng)圖靈測(cè)試),因?yàn)樽?cè)者需要辨識(shí)圖片上七歪八扭的文字,而這項(xiàng)工作只有真正的人類才能完成。全世界的網(wǎng)絡(luò)用戶數(shù)以億計(jì),對(duì)個(gè)人來(lái)說(shuō),辨認(rèn)文字所花的幾秒時(shí)間微不足道,但如果將所有網(wǎng)民的力量利用起來(lái),那便能完成難以想象的浩大工程,而這正是美國(guó)賓夕法尼亞州匹茲堡市的CMU研究小組正在做的事。
該小組受一家名為“互聯(lián)網(wǎng)檔案館”的非營(yíng)利組織委托,要將海量的古老書籍和手稿通過(guò)OCR(光學(xué)字符識(shí)別)軟件轉(zhuǎn)化為電子文本,以方便電腦儲(chǔ)存和查詢。然而,由于原稿的質(zhì)量太差,可憐的電腦每掃描十個(gè)單詞就會(huì)錯(cuò)讀一個(gè),唯一解決的辦法就是人工核對(duì),而這樣的工作顯然不是一個(gè)人或一個(gè)小組可以勝任的。于是,CMU設(shè)計(jì)了一個(gè)名叫reCAPTCHA的強(qiáng)大系統(tǒng),讓他們的電腦去向人類求助。具體做法是:將OCR軟件無(wú)法識(shí)別的文字掃描圖傳給世界各大網(wǎng)站,用以替換原來(lái)的驗(yàn)證碼圖片;那些網(wǎng)站的用戶在正確識(shí)別出這些文字之后,其答案便會(huì)被傳回CMU。
為了提高用戶辨識(shí)文字的正確率,他們往往被要求辨認(rèn)兩個(gè)單詞,其中一個(gè)的答案已經(jīng)知曉。這樣以來(lái),正確辨認(rèn)出有答案的那個(gè)單詞的用戶,很有可能也會(huì)正確辨認(rèn)另一個(gè)單詞。有時(shí)候,CMU也會(huì)將一個(gè)未經(jīng)辨認(rèn)的單詞提交給不同的用戶,如果得到的是相同的答案,那這個(gè)答案便可以肯定是正確的。
由于許多人氣極高的網(wǎng)站,如Facebook、Twitter和StumbleUpon等,都采用了reCAPTCHA,CMU每天都可以處理大約一百萬(wàn)個(gè)單詞。不過(guò),按照現(xiàn)在的速度,要電子化“互聯(lián)網(wǎng)檔案館”提供的所有文本,估計(jì)還需要400年。