在沒有驗證碼的時代,想要在論壇上發帖,只需輕輕敲一下回車鍵。然而,這也給惡作劇者和黑客提供了同樣的便捷,他們通過編寫大量、重復編寫信息的程序,偽裝成人類用戶,肆無忌憚地朝網絡上傾斜大量的、無意義的“僵尸”信息,垃圾郵件、垃圾廣告、垃圾評論到處亂飛。論壇被灌水,有用的信息很快會被淹沒,很多網站的正常運營遭到破壞。除此之外,還有數之不盡的程序機器人使用不斷嘗試的方法惡意破解密碼、惡意刷票,從中獲取非法的利益。
網站制作中經常會遇到驗證碼功能,那么到底是前端驗證還是服務器端來驗證?蘇州網站制作在這里分享下個人觀點,一是模擬用戶動作,比如鼠標點擊、字符輸入,好處是對灌水者來說屏蔽了技術細節,只關注需要做什么操作。對于這種流派,理論上滑動解鎖也是可以模擬的。
二是直接post數據,會事先抓包分析好需要的參數,然后直接向服務器提交。對于這種流派,它只關注最終的提交數據,之前有沒有滑動解鎖是完全無影響的。邏輯上,純客戶端的驗證再復雜也是無效的。最終提供驗證的,其實是在服務端,客戶端只是顯示了一下驗證碼而已。JS完全是由客戶端實現的,任何JS操作都可以被模擬,所以不能單純用JS來實現驗證碼。
所以蘇州網站建設個人認為,驗證碼真正的目的是為了安全性的考慮,那么真實有效的驗證也應該在服務器端驗證。應該是后臺生成的驗證碼到前端顯示,前端傳輸數據到后端進行驗證,前端再根據后端的驗證結果顯示。當然大牛們可能要噴了,前端也有實力達到很高的安全性,不過小編還是習慣后端驗證。

2018-01-18
關鍵詞:
2219
電話咨詢
業務咨詢

TOP