亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

如何使用PHP對網站驗證碼進行破解

2020-03-22 19:45:25
字體:
來源:轉載
供稿:網友
驗證碼的功能一般是防止使用程序惡意注冊、暴力破解或批量發帖而設置的。所謂驗證碼,就是將一串隨機產生的數字或符號,生成一幅圖片,圖片里加上一些干擾象素(防止OCR),由用戶肉眼識別其中的驗證碼信息,輸入表單提交網站驗證,驗證成功后才能使用某項功能。學習驗證碼的破解/識別技術,不僅可以知道驗證碼的原理,而且可以讓你知道怎樣才能防止驗證碼被破解。最常見的驗證碼主要有以下幾種:1、四位數字,隨機的一數字字符串,最原始的驗證碼,驗證作用幾乎為零。
2、隨機數字圖片驗證碼。圖片上的字符比較中規中矩,有的可能加入一些隨機干擾素,還有一些是隨機字符顏色,驗證作用比上一個好。沒有基本圖形圖像學知識的人,不可破!
3、各種圖片格式的隨機數字+隨機大寫英文字母+隨機干擾像素+隨機位置。
4、漢字是注冊目前最新的驗證碼,隨機生成,打起來更難了,影響用戶體驗,所以,一般應用的比較少。
為簡單起見,破解說明主要針對是第2種類型的,先來看看網上常見的這種驗證碼的圖片: 第一種,最容易,圖片背景和數字都使用相同的顏色,字符規整,字符位置統一。 第二種,看似不容易,其實仔細研究會發現其規則,背景色和干擾素無論怎么變化,驗證字符字符規整,顏色相同,所以排除干擾素非常容易,只要是非字符色素全部排除即可。 第三種,看似更復雜,處理上面提到背景色和干擾素一直變化外,驗證字符的顏色也在變化,并且各個字符的顏色也各不相同。 第四種,除了第三個圖片上提到的特征外,又在文字上加了兩條直線干擾率,看似困難其實,很容易去掉。驗證碼識別一般分為以下幾個步驟:1、取出字模 識別驗證碼,畢竟不是專業的OCR識別,并且,由于各個網站的驗證碼各不相同,所以,最常見的方法就是就是建立這個驗證碼的特征碼庫。去字模時,我們需要多下載幾張圖片,使這些圖片中,包括所有的字符,我們這里的字母只有圖片,所以,只要收集到包括0-9的圖片即可。
2、二值化 二值化就是把圖片上的驗證數字上每個象素用一種數字表示1,其他部分用0表示。這樣就可以計算出每個數字字模,記錄下這些字模來,當作key即可。
3、計算特征 把要識別的圖片,進行二值化,得到圖片特征。
4、對照樣本 把步驟3種的圖片特征碼和驗證碼的字模進行對比,得到驗證圖片上的數字。
使用目前這種方法,對驗證碼的識別基本上可以做到100%。通過以上步驟,您可能說了,并沒有發現如何取出干擾素??!其實取出干擾素的方法很簡單,干擾素的一個重要特征是,不能影響驗證碼的顯示效果,所以制作干擾素時它的RGB可能低于或者高于某個特定值,比如我給的例子中的圖片,干擾素的RGB各項值是不會超過125的,所以,這樣我們就很容易去掉干擾素了。簡單的驗證碼只有數字和字母組成,格式統一,每次出現位置固定。下面繼續深入研究識別驗證碼,這次需要識別的目標是:驗證碼有字符和數字組成,驗證碼存在旋轉(可能左右都旋轉),位置不固定,存在字符與字符之間的粘連,且驗證碼有更強的干擾素。我們以下圖為例進行講解。第一步:二值化。把驗證碼的部分用 1 表示,背景部分用 0 表示出來,識別方法很簡單,我們打印出驗證碼整張圖片的 RGB ,然后分析其規律即可,通過 RGB 碼,我們很容易分辨出上面這張圖片的 R 值大于 120 , G 和 B 的值小于 80 ,所以依據這個規則我們很容易把上面的圖片二值化。再來看看上面的第三種驗證碼圖片剛看上去,感覺很復雜。驗證碼的圖片每次背景色都不相同,且不是單色,各個驗證碼數字的顏色每次也各不相同。貌似很難二值化,其實我們打印出其 RGB 值很容易就發現。無論驗證數字顏色如何變化,該數字的 RGB 值總有一個值小于 125 ,所以通過如下判斷 $rgbarray['red'] 125 || $rgbarray['green'] 125|| $rgbarray['blue'] 125 我們就很容易分辨出哪里是數字,哪里是背景。我們能夠找到這些規律的原因是,在制作驗證碼的干擾素時,為了使干擾素不影響數字的顯示效果,必須使用干擾素的 RGB 和數字 RGB 相互獨立,互不干擾。只要懂得這個規律,我們就很容易實現二值化。我們找到的 120 , 80 , 125 等閾值,可能和實際的 RGB 有出入,所以,有時二值化后,會有部分地方出現 1 ,對于驗證碼上固定位置顯示數字,這種干擾沒有太大意義。但是對于驗證碼位置不確定的圖片來說,在我們切割字符時,很可能造成干擾。所以,在二值化后要進行去噪處理。第二步:去噪處理。去噪的原理很簡單,就是把孤立的有效的值去掉,如果噪點比較高,要求的效率也比較高的話,這里面也有很多工作要做。幸好這里我們不要求這么高深,我們使用最簡單的方法就可以,如果一個點為 1 則判斷這個點的上下左右上左上右下左下右 8 個方位上數字是否為 1 ,如果不為 1 ,就認為是一個燥點,直接設置為 1 即可。如上圖所示,我們使用此方法很容易發現紅色方框部分的 1 為燥點,直接設置為 1 即可。在判斷時我們使用了一個技巧,有時候的噪點可能是兩個連續的 1 ,所以我們計算這個點的 8 個方向上的值之和,最后我們判斷他們的和是否小于特定的閾值。第三步:切割字符。切割字符的方法有很多種,這里采用最簡單的一種,先垂直方向切割成為字符,然后在水平方向去掉多于的 0000 ,如下圖第一步切割紅線部分,第二步切割藍線部分,這樣就可以得到獨立的字符了。但是像下面這種情況按上面的方法會把 dw 字符切割成一個字符,這是錯誤的切割,所以這里我們涉及到粘連字符的切割。第四步:粘連字符切割。制作驗證碼時,規則字符的粘連很容易分割開,如果字符本身有縮放,變形就很難處理,經過分析,我們可以發現,上面的字符粘連屬于很簡單的方式,只是規則字符的粘連,所以處理這種情況,我們也使用很簡單的處理方式。當完成分割操作后,我們不能馬上確定分割的部分就為一個字符,要進行驗證,驗證的關鍵因素就是,切割下來的字符的寬是否大于閾值,這個閾值的取舍標準是,一個字符無論怎么旋轉變形都不會大于這個閾值,所以,如果我們切割的塊大于這個閾值,就可以認為這是一個粘連字符;如果大于兩個閾值之和,就認為是三個字符粘連,以此類推。知道這個規則后,切割粘連字符也就很簡單了。如果我們發現是粘連字符塊,直接平分這個塊為兩個或者多個新的塊就可以。當然為了更好的還原字符,我一般都采用平分 +1 , -1 對字符塊的部分進行適當的補充。第五步:匹配字符。對于旋轉字符的特征碼建立,有很多種方法,這里就不做深入研究了。我這里使用的最簡單的方式,為所有字符的所有情況建立匹配庫,所以在我提供的代碼種增加了 study 操作,其目的就是,先有人手工識別圖片的驗證碼,然后通過 study 方法,寫入特征碼庫。這樣寫入的圖片數據越多,驗證識別的準確行也就越高。經過以上步驟,我們基本上可以識別現在互聯網上大部分的驗證碼,這里我們都是使用的最簡單的方法,沒有使用任何 OCR 知識。另外制作驗證碼的一些建議:對于識別驗證碼的程序來說,最難得部分是驗證字符的切割和特征碼的建立,而國內很多程序員只做驗證碼時,總是喜歡在驗證碼加很多干擾素,干擾線,影響效果不說,還達不到很好的效果;所以,要想使自己驗證碼難于本識別,只做下面兩點就夠了1、字符粘連,最好所有的字符都有粘連的部分;
2、不要使用規格字符,驗證碼的各個部分使用不同比例的縮放或者旋轉。
只要做到這兩點,或者這兩點的變形,識別程序就很難識別。以上就是本文的全部內容:使用PHP對網站驗證碼進行破解,希望對大家的學習有所幫助。PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久69精品久久久久久国产越南| 国产精品偷伦免费视频观看的| 久久免费视频网| 国产一区二区三区在线看| 亚洲欧美日韩国产精品| 亚洲精品v欧美精品v日韩精品| 97久久久久久| 国产精品视频导航| 欧美日本中文字幕| 97色在线观看免费视频| 精品国产一区二区三区久久久狼| 青青久久aⅴ北条麻妃| 精品中文字幕在线观看| 亚洲va欧美va国产综合久久| 国产精品高清在线| 日韩av免费在线观看| 国产日韩在线精品av| 亚洲综合在线播放| 国产精品久久久久久久久久久久久| 国产美女久久精品香蕉69| 国产+人+亚洲| 91精品久久久久久久久久久久久| 成人在线观看视频网站| 国产精品专区第二| 欧美日韩美女在线观看| 永久555www成人免费| 日韩大陆欧美高清视频区| xxxxxxxxx欧美| 97视频免费在线看| 亚洲高清色综合| 日韩亚洲精品视频| 95av在线视频| 国产第一区电影| 国产不卡视频在线| 亚洲福利在线播放| 亚洲伊人久久大香线蕉av| 久久精品国产亚洲| 久久久久北条麻妃免费看| 日韩精品在线视频美女| 欧美寡妇偷汉性猛交| 精品magnet| 亚洲片在线资源| 亚洲xxxxx| 日韩日本欧美亚洲| 97视频com| 亚洲欧美国产日韩天堂区| 亚洲成人激情在线观看| 美女性感视频久久久| 91久久精品视频| 欧美另类老肥妇| 久久影视三级福利片| 亚洲影视九九影院在线观看| 成人激情黄色网| 国产欧美日韩中文字幕| 69久久夜色精品国产69| 国产精品美女久久久久久免费| 国产成人在线精品| 亚洲的天堂在线中文字幕| 欧美激情亚洲另类| 国产日产亚洲精品| 亚洲欧美国产日韩天堂区| 日韩不卡中文字幕| 亚洲欧美激情四射在线日| 国产日韩欧美在线观看| 国产精品视频网| 国产日韩欧美在线看| 欧美激情综合色综合啪啪五月| 97在线观看免费| 91产国在线观看动作片喷水| 亚洲精品第一国产综合精品| 九九视频这里只有精品| 国语自产精品视频在线看| 91久久夜色精品国产网站| 色樱桃影院亚洲精品影院| 一本色道久久88亚洲综合88| 欧美日韩一区免费| 亚洲片在线观看| 久久国产精品亚洲| 国产精品成人v| 亚洲国产精品悠悠久久琪琪| 亚洲综合社区网| 国内精品久久影院| 成人激情视频在线观看| 国产精品视频一区二区高潮| 91av在线国产| 日韩色av导航| 久久国产精品久久久久久久久久| 精品久久久久久久久国产字幕| 97视频人免费观看| 欧美精品videossex88| 欧美性猛交xxxx乱大交3| 尤物99国产成人精品视频| 欧美性黄网官网| 成人精品一区二区三区电影免费| 亚洲国产日韩欧美在线图片| 欧美丰满少妇xxxxx做受| 伦伦影院午夜日韩欧美限制| 伊人伊成久久人综合网小说| 97精品在线观看| 懂色av影视一区二区三区| 国产精品一区二区三区免费视频| 在线观看精品自拍私拍| 国产成人精品免费视频| 91视频国产高清| 麻豆国产精品va在线观看不卡| 菠萝蜜影院一区二区免费| 黄色91在线观看| 久久视频在线播放| 成人黄色短视频在线观看| 乱亲女秽乱长久久久| 热re91久久精品国99热蜜臀| 亚洲人成五月天| 亚洲人成77777在线观看网| 亚洲国产精品va在线| 亚洲iv一区二区三区| 久久久久久久亚洲精品| 国产精品露脸av在线| 狠狠躁18三区二区一区| 在线看片第一页欧美| 日韩在线视频免费观看高清中文| 日本午夜精品理论片a级appf发布| 精品国产欧美一区二区三区成人| 欧美xxxx做受欧美.88| 久久精品视频导航| www国产亚洲精品久久网站| 欧美性受xxx| 最近2019中文字幕在线高清| 国产中文字幕91| 亚洲日韩第一页| 欧美午夜影院在线视频| 欧美黄色免费网站| 亚洲精品网站在线播放gif| 日韩精品视频免费| 亚洲欧美在线第一页| 亚洲伊人一本大道中文字幕| 亚洲色图五月天| 国产日韩欧美夫妻视频在线观看| 成人日韩av在线| 国产精品成人av性教育| 亚洲欧美日韩网| 欧美激情精品久久久| 欧美精品videosex极品1| 九九热精品在线| 久久成人18免费网站| 欧美另类暴力丝袜| 亚洲天堂男人天堂女人天堂| 欧美专区在线播放| 亚洲欧美制服中文字幕| 国产一区二区三区在线视频| 国产精品揄拍一区二区| 91亚洲国产成人久久精品网站| 国产一级揄自揄精品视频| 国产福利视频一区| 亚洲性生活视频在线观看| 亚洲精品有码在线| 亚洲一区二区国产| 日韩在线观看高清| 国产精品普通话| 精品偷拍一区二区三区在线看| 日韩电影第一页| 亚洲欧洲午夜一线一品| 亚洲美女动态图120秒| 亚洲欧美另类国产| 亚洲精品国产精品国自产观看浪潮|