JAVA實戰訓練營Day.4 ——“請輸入您的驗證碼”
目錄
前言
一、Day.4的目標
二、任務所涉及的知識點(參考資料)
1.OTP動態令牌的原理
2.jar包的安裝及使用
3.動態令牌原始碼
三、開始實戰
1.了解動態令牌背后的OTP技術
2.實作二次驗證碼的校驗通過
四、總結
前言

生活中,我們在登錄一些軟體或者注冊資訊時經常會被要求輸入驗證碼,今天我們就來了解驗證碼背后的密碼,并且實作用Java完成動態驗證碼的生成與校驗,
一、Day.4的目標
1.了解動態令牌背后的OTP技術
2.實作二次驗證碼的校驗通過
二、任務所涉及的知識點(參考資料)
1.OTP動態令牌的原理
https://blog.csdn.net/terrychinaz/article/details/112976265
https://blog.csdn.net/terrychinaz/article/details/112976265
2.jar包的安裝及使用
https://blog.csdn.net/hwt1070359898/article/details/90517291?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163553049216780255243863%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=163553049216780255243863&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-90517291.pc_search_all_es&utm_term=idea%E5%AF%BC%E5%85%A5jar%E5%8C%85&spm=1018.2226.3001.4187
https://blog.csdn.net/hwt1070359898/article/details/90517291?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163553049216780255243863%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=163553049216780255243863&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-90517291.pc_search_all_es&utm_term=idea%E5%AF%BC%E5%85%A5jar%E5%8C%85&spm=1018.2226.3001.4187
3.動態令牌原始碼
百度網盤鏈接:https://pan.baidu.com/s/1ytgLmHxxXr_vuR2UTb5Jfg
https://pan.baidu.com/s/1ytgLmHxxXr_vuR2UTb5Jfg
提取碼:1024
三、開始實戰
1.了解動態令牌背后的OTP技術
因為任務1是知識目標,詳細還請大家查閱參考資料1.
(理論學習得靠大家自己理解,不是我偷懶不寫哦,大家多多包涵哈QAQ),
參考資料1.:
https://blog.csdn.net/terrychinaz/article/details/112976265
https://blog.csdn.net/terrychinaz/article/details/112976265至此任務1完成
2.實作二次驗證碼的校驗通過
首先我們將原始碼匯入IDEA中:

接著呼叫工具類OTPAuthUlt.generateSecret(64)方法生成秘鑰secret,保存方便后續測驗,
順帶填寫自己要驗證的賬戶名稱(不要用中文,長度別太長),

再呼叫工具類OTPAuthUlt.generateTotpURI(account, secret)方法生成OTPAUTH協議字串,

借助免費(白嫖萬歲!)的二維碼生成網站(eg:http://cli.im)將生成的OTPAUTH協議鏈接變成二維碼,

借助微信小程式——二次驗證碼,掃描網站生成的二維碼,

生成的動態令牌795490出現在了小程式上,并且有圓圈顯示倒計時失效的進度提示,將795490用code變數保存下來 ,
最后呼叫工具類OTPAuthUlt.verify(secret, code)方法驗證動態碼是否正確,

動態口令TURE,二次驗證碼校驗通過,
至此任務2完成
四、總結
今天的任務讓我對驗證碼的感性認知上升到了理想認知(最近復習完馬哲OVO),明白了OTP動態驗證碼的原理,自己也嘗試成功完成了二次驗證碼的校驗,開始逐漸感受到了Java語言的魅力,自己學習Java的路還很長,流年笑擲,未來可期吧!
(完結撒花)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/342195.html
標籤:java
上一篇:【Java】介面的詳解
下一篇:Java正則運算式
