一個(gè)12306驗(yàn)證碼破解思路,
圖片采集 + 概率
//分析:
1. 單次驗(yàn)證碼里面有8個(gè)圖片,類型最多8種,最少不太確定
2. 8個(gè)圖是規(guī)則排列,可以很容易分隔
3. 圖片庫應(yīng)該是有限的,可以采集,計(jì)算hash入庫,這里需要關(guān)聯(lián)相同類型圖片
(比如 “杯子”,“刷子”等)
備注:這里的圖片hash并不是md5,有很多算法,自行搜索吧。
//下面,我假設(shè)圖片已經(jīng)采集好了,分類也完成了,開始進(jìn)行識(shí)別:
1. 選一張驗(yàn)證碼,分隔成8個(gè)圖片,分別計(jì)算hash,然后查詢 這些hash對(duì)應(yīng)的
類型(比如 “杯子”,“刷子”等),這里 假設(shè)圖片識(shí)別正確率 100%
2. 隨機(jī)選擇一個(gè)上一步中查詢到的類型,點(diǎn)擊相應(yīng)位置。 這里不需要識(shí)別上面的
漢字,按概率來說,極端情況,8個(gè)圖片都不同,隨機(jī)選擇正確率 12.5%。于是,
理論上嘗試8次以內(nèi),就能成功登錄。
//難點(diǎn):
1. 麻煩的可能是要分類,需要將相同類型的圖片關(guān)聯(lián)起來
//一些增加識(shí)別難度的建議
1. 圖片中加入線形干擾,或者是 扭曲圖片
2. 不規(guī)則排列8個(gè)圖片,使之難以分割
// 僅僅憑借以往經(jīng)驗(yàn)的一些思路,尚未實(shí)踐。歡迎吐槽...
更多信息請(qǐng)查看IT技術(shù)專欄