1. ASP怎麼開發出手機驗證碼
簡單啊,先輸入手機號碼,然後通過隨機數生成驗證碼,通過簡訊介面發送給已輸入的手機號碼,驗證碼的保存有兩種方式,一種是保存在session或者cookie中,隨著session或者cookie的失效而失效,還有一種比較常用的方法,就是把驗證碼和驗證碼失效時間一起存儲到資料庫中,在點擊確認的時候,再驗證輸入是否正確~
希望採納
2. 如何利用Python做簡單的驗證碼識別
1摘要
驗證碼是目前互聯網上非常常見也是非常重要的一個事物,充當著很多系統的防火牆功能,但是隨時OCR技術的發展,驗證碼暴露出來的安全問題也越來越嚴峻。本文介紹了一套字元驗證碼識別的完整流程,對於驗證碼安全和OCR識別技術都有一定的借鑒意義。
然後經過了一年的時間,筆者又研究和get到了一種更強大的基於CNN卷積神經網路的直接端到端的驗證識別技術(文章不是我的,然後我把源碼整理了下,介紹和源碼在這裡面):
基於python語言的tensorflow的『端到端』的字元型驗證碼識別源碼整理(github源碼分享)
2關鍵詞
關鍵詞:安全,字元圖片,驗證碼識別,OCR,Python,SVM,PIL
3免責聲明
本文研究所用素材來自於某舊Web框架的網站完全對外公開的公共圖片資源。
本文只做了該網站對外公開的公共圖片資源進行了爬取,並未越權做任何多餘操作。
本文在書寫相關報告的時候已經隱去漏洞網站的身份信息。
本文作者已經通知網站相關人員此系統漏洞,並積極向新系統轉移。
本報告的主要目的也僅是用於OCR交流學習和引起大家對驗證安全的警覺。
4引言
關於驗證碼的非技術部分的介紹,可以參考以前寫的一篇科普類的文章:
互聯網安全防火牆(1)--網路驗證碼的科普
裡面對驗證碼的種類,使用場景,作用,主要的識別技術等等進行了講解,然而並沒有涉及到任何技術內容。本章內容則作為它的技術補充來給出相應的識別的解決方案,讓讀者對驗證碼的功能及安全性問題有更深刻的認識。
5基本工具
要達到本文的目的,只需要簡單的編程知識即可,因為現在的機器學習領域的蓬勃發展,已經有很多封裝好的開源解決方案來進行機器學習。普通程序員已經不需要了解復雜的數學原理,即可以實現對這些工具的應用了。
主要開發環境:
python3.5
python SDK版本
PIL
圖片處理庫
libsvm
開源的svm機器學習庫
關於環境的安裝,不是本文的重點,故略去。
6基本流程
一般情況下,對於字元型驗證碼的識別流程如下:
准備原始圖片素材
圖片預處理
圖片字元切割
圖片尺寸歸一化
圖片字元標記
字元圖片特徵提取
生成特徵和標記對應的訓練數據集
訓練特徵標記數據生成識別模型
使用識別模型預測新的未知圖片集
達到根據「圖片」就能返回識別正確的字元集的目標
7素材准備
7.1素材選擇
由於本文是以初級的學習研究目的為主,要求「有代表性,但又不會太難」,所以就直接在網上找個比較有代表性的簡單的字元型驗證碼(感覺像在找漏洞一樣)。
最後在一個比較舊的網站(估計是幾十年前的網站框架)找到了這個驗證碼圖片。
原始圖:
然後就將圖片素材特徵化,按照libSVM指定的格式生成一組帶特徵值和標記值的向量文
3. 網站開發 如何做驗證碼 和用戶注冊成功後給用戶發一封郵件
很簡單的 點擊注冊的時候是先進入一個servlet 然後 用這個servlet 生成一個 驗證碼 或者 做成一張圖片以後 把鏈接 放到 請求裡面 在 注冊頁面讀取這個值 然後 放到驗證碼的位置 信息填寫完點擊注冊按鈕 將信息提交到一個 注冊的servlet中 注冊成功以後 獲得郵箱地址 執行郵件發送代碼 然後 進行頁面跳轉 就ok了
4. 簡訊驗證碼怎麼實現
實現驗證碼功能無非就是這兩步。首先生成驗證碼,通過簡訊介面發送給用戶。同時,將驗證碼保存一份到session中;其次,用戶輸入驗證碼,與session中的驗證碼比對,一致則通過。網站要具備這些功能,直接調用第三方的API介面就能實現。我就是根據雲之訊開發者文檔接入指南,15分鍾過就實現了這個功能。
5. java 登陸時的驗證碼怎麼做
後台寫一個生成圖片隨機的代碼,生成圖片給前台。切換圖片的時候,使用ajax獲取圖片數據就行。
附上生成圖片的代碼
public class ValidateCode {
private int width=180;
private int height=60;
private int codeCount = 4;
private int x = 0;
private int codeY;
private String Code;
private BufferedImage buffImg;
static char[] codeSequence = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W',
'X', 'Y', 'Z','a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
'x', 'y', 'z', 'o', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
private int fontHeight;
public ValidateCode() {
x = width / (codeCount + 2);
fontHeight = height - 2;
codeY = height - 4;
CreateCode();
}
public void CreateCode(){
// 定義圖像buffer
BufferedImage buffImg = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB);
Graphics2D g = buffImg.createGraphics();
// 創建一個隨機數生成器類
Random random = new Random();
// 將圖像填充為白色
g.setColor(Color.WHITE);
g.fillRect(0, 0, width, height);
// 創建字體,字體的大小應該根據圖片的高度來定。
Font font = new Font("Fixedsys", Font.PLAIN, fontHeight);
// 設置字體。
g.setFont(font);
// 畫邊框。
g.setColor(Color.BLACK);
g.drawRect(0, 0, width - 1, height - 1);
// randomCode用於保存隨機產生的驗證碼,以便用戶登錄後進行驗證。
StringBuffer randomCode = new StringBuffer();
int red = 0, green = 0, blue = 0;
// 隨機產生codeCount數字的驗證碼。
for (int i = 0; i < codeCount; i++) {
// 得到隨機產生的驗證碼數字。
String strRand = String.valueOf(codeSequence[random.nextInt(62)]);
// 產生隨機的顏色分量來構造顏色值,這樣輸出的每位數字的顏色值都將不同。
red = random.nextInt(255);
green = random.nextInt(255);
blue = random.nextInt(255);
// 用隨機產生的顏色將驗證碼繪制到圖像中。
g.setColor(new Color(red, green, blue));
g.drawString(strRand, (i ) * x+20, codeY);
// 將產生的四個隨機數組合在一起。
randomCode.append(strRand);
}
this.Code=randomCode.toString().toUpperCase();
this.buffImg=buffImg;
}
public String getCode() {
return Code;
}
public void setCode(String code) {
Code = code;
}
public BufferedImage getBuffImg() {
return buffImg;
}
public void setBuffImg(BufferedImage buffImg) {
this.buffImg = buffImg;
}
}
6. 如何開發圖形驗證碼
做網站開發,很多人都遇到驗證碼開發的問題,本文與大家分享一下,我做了這么多年的後台開發,對圖形驗證碼的認識。
驗證碼是一種區分用戶是計算機還是人的公共全自動程序。短時間是無法退出人類舞台的,目前只是盡量提升用戶體驗。
kaptcha 是一個非常實用的驗證碼生成工具。有了它,你可以生成各種樣式的驗證碼,因為它是可配置的。
本文主要講述了kaptcha圖形化驗證碼的使用和介紹,其它圖形驗證碼庫,比較類似。
7. ASP怎麼開發出手機驗證碼
�仁淙朧只�怕耄�緩笸ü�婊���裳櫓ぢ耄�ü�絛漚涌詵⑺透�咽淙氳氖只�怕耄�櫓ぢ氳謀4嬗辛街址絞劍�恢質潛4嬖趕ession或者cookie中,隨著session或者cookie的失效而失效,還有一種比較常用的方法,就是把驗證碼和驗證碼失效時間一起存儲到資料庫中,在點擊確認的時候,再驗證輸入是否正確~追問:
首先你要有簡訊平台的IP、埠和協議,標準的簡訊平台通常採用SGIP協議,然後你要有簡訊平台的用戶名、密碼進行鑒權,這樣就可以通過Socket進行簡訊發送了;如果是使用SP介面,則需要SP提供對應的IP、埠、協議、用戶名、密碼等信息才可以完成開發~