驗證碼驗證方法的原理

     

步驟:
1. 用戶向服務器請求頁面。
2. 服務器產生4位隨機數字NumRandom, 並傳給Page2
3. Page2上有一張背景圖片,將NumRandom寫在頁面上。
4. Page1將Page2作爲一張圖片來引用。例如<img url=”Page2.aspx”
5. 調用函數FunctionEncrypt將NumRandom加密。
6. 將加密後的字符串放在Session中。
7. 將生成完全的Page1返回給用戶。
8. 用戶看到驗證碼圖片以後就可以輸入在TextBox中。
9. 點擊確認以後用戶輸入的四位數字被使用FunctionEncrypt加密。
7. 加密以後同Session中字符串相比較,如果相同才允許用戶通過驗證。

        這種做法的好處主要是防止用戶通過程序來反覆登陸服務器,對服務器造成攻擊。主要考慮了以下幾點:
         因爲一般來說(並不是絕對,因爲已經有技術可以通過程序來識別驗證碼字符了),用戶必須看到驗證碼才能輸入增加了程序攻擊的難度;用戶即使截獲了Session,由於字符串已經經過加密,所以很難被解密,也就是說用戶很難獲取到NumRandom的未加密信息。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章