孫淑琳
互聯網技術給人們的工作和生活帶來極大便利的同時,也帶來了許多網絡安全問題,不法分子利用網絡刷票、惡意注冊來發送垃圾廣告等行為損害了網站和用戶的利益。為了防止這些安全問題的發生,驗證碼技術出現了,自動區分當前用戶是計算機程序還是人類成為可能。
文本驗證碼是目前使用最多的驗證碼類型,需要用戶識別并輸入圖像中的字符。文本驗證碼局限于數字與字母,比較單一,對字符進行簡單變形處理,使其可被破解。
我收集了兩種類型的驗證碼。圖1(a)中的驗證碼對字符做了扭曲處理,圖1(b)中使用了空心字符,并加入一段線條來增加破解難度。
簡單的文本驗證碼易被破解。可將圖像中的所有字符一個一個地分割,再根據筆畫的粗細、斷筆、粘連等因素識別單個字符。
目前的驗證碼中,所有的字符可能只是處于同一行中,這種類型的字符很容易分割。我提出一種新型的驗證碼,可結合數字、字母和漢字,將隨機產生的多種字體分布在一個平面的各個方向,并對字符進行粘連和扭曲變形等處理。這樣很難對驗證碼中的字符進行分割,從而防止黑客攻擊。
圖2(a)生成的各個字符不是水平或垂直分布,而是分布在平面上的各個方向,部分字符旋轉和扭曲,字符之間有重疊和粘連。圖2(b)增加了背景噪聲信息,加大了字符分割難度。
這種新型驗證碼是我經過調查研究多個主流網站的文本驗證碼后設計的 。與傳統的驗證碼相比,新型驗證碼的驗證方法更復雜,不易受到黑客攻擊。