好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > ASP生成數字相加求和的BMP圖片驗證碼

ASP生成數字相加求和的BMP圖片驗證碼

熱門標簽:無營業執照地圖標注教學 滴滴地圖標注上車點 地圖標注還可以做嗎 友邦互聯電銷機器人違法嗎 電銷機器人采購 硅基電話機器人加盟 高質量的電銷外呼系統 外呼系統怎么話費 宿州防封外呼系統平臺
目前網絡上有許多圖片驗證碼形式,那些沒有生成圖片的驗證碼的抗破解防御能力簡直不堪一擊;有人直接在網頁源碼里顯示出具體的數字,然后要求訪問者輸入一個相加后的和;如3+5=多少,這樣的驗證碼新意倒有一些,不過可惜,根本沒有起到保護的作用。

    flymorn改進一下以上的新意,直接把3+6=多少的形式采用asp程序生成Bmp圖片格式,并且把數字相加后的和存進session里,加大破解的門檻;沒有一些圖形圖像學知識的人是無法破解的。代碼如下:

復制代碼 代碼如下:


Response.Buffer = True 
Response.ExpiresAbsolute = Now() - 1 
Response.Expires = 0 
Response.cachecontrol = "no-cache"

Response.ContentType = "Image/Bmp"  

Call Com_CreatValidCode()  

Sub Com_CreatValidCode()  

Randomize  

Dim i, ii, iii  

Const cAmount = 10 '數值個數

Const cCode = "0123456789"  '數值范圍

Dim vColorData(2)

vColorData(0) = "" '黑色點要轉為彩色點,暫時不定義

vColorData(1) = ChrB(255)  ChrB(255)  ChrB(255) '白點

Dim vCode(4), vCodes '產生一組任意數

For i = 0 To 3  

vCode(i) = Int(Rnd * cAmount) '數組等于總數*隨機數

if i=1 then vCode(i)="11"  '第二位為+

if i=3 then vCode(i)="10"  '第四位為=

vCodes=vCodesMid(cCode,vCode(i)+1,1) '串等于串加上后續值

Next  

session("checkcode")=int(Mid(vCodes,1,1)) + int(Mid(vCodes,2,1)) '計算相加和值并賦值給session

Dim vNumberData(36)  

vNumberData(0) = 

"1110000111110111101111011110111101111011110111101111011110111101111011110111101111011110111110000111"  

vNumberData(1) = 

"1111011111110001111111110111111111011111111101111111110111111111011111111101111111110111111100000111"  

vNumberData(2) = 

"1110000111110111101111011110111111111011111111011111111011111111011111111011111111011110111100000011"  

vNumberData(3) = 

"1110000111110111101111011110111111110111111100111111111101111111111011110111101111011110111110000111"  

vNumberData(4) = 

"1111101111111110111111110011111110101111110110111111011011111100000011111110111111111011111111000011"  

vNumberData(5) = 

"1100000011110111111111011111111101000111110011101111111110111111111011110111101111011110111110000111"  

vNumberData(6) = 

"1111000111111011101111011111111101111111110100011111001110111101111011110111101111011110111110000111"  

vNumberData(7) = 

"1100000011110111011111011101111111101111111110111111110111111111011111111101111111110111111111011111"  

vNumberData(8) = 

"1110000111110111101111011110111101111011111000011111101101111101111011110111101111011110111110000111"  

vNumberData(9) = 

"1110001111110111011111011110111101111011110111001111100010111111111011111111101111011101111110001111"  

'表示=
vNumberData(10) = 

"1111111111111111111111111111111000000001111111111111111111111000000001111111111111111111111111111111"  
'表示+
vNumberData(11) = 

"1111111111111100111111110011111111001111100000000110000000011111001111111100111111110011111111111111"  


Response.BinaryWrite ChrB(66)  ChrB(77)  ChrB(230)  ChrB(4)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(0) _  

ChrB(0)  ChrB(0)  ChrB(54)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(40)  ChrB(0) _  

ChrB(0)  ChrB(0)  ChrB(40)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(10)  ChrB(0) _  

ChrB(0)  ChrB(0)  ChrB(1)  ChrB(0)  

Response.BinaryWrite ChrB(24)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(176)  ChrB(4) _  

ChrB(0)  ChrB(0)  ChrB(18)  ChrB(11)  ChrB(0)  ChrB(0)  ChrB(18)  ChrB(11) _  

ChrB(0)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(0)  ChrB(0) _  

ChrB(0)  ChrB(0)  

For i = 9 To 0 Step -1 '行

For ii = 0 To 3  '字數

For iii = 1 To 10 '像素點

  if Mid(vNumberData(vCode(ii)), i * 10 + iii , 1)  ="0" then '產生彩色點,減去一個固定值,可使顏色偏深

    dim a,b,c

    a=abs(Rnd * 256-60)

    b=abs(Rnd * 256-128)

    c=abs(Rnd * 256-60)

    vColorData(0) = ChrB(a)  ChrB(b)  ChrB(c) 

    Response.BinaryWrite vColorData(Mid(vNumberData(vCode(ii)), i * 10 + iii , 1))  

  else

    dim d,e,f '產生彩色背景,顏色偏淺,也可以隨機生成噪點做背景

    d=abs(Rnd * 255)

    e=abs(Rnd * 255)

    f=abs(Rnd * 255)

    if d+e+f>640 then  '可改值,調整背景色深

      vColorData(1) = ChrB(d)  ChrB(e)  ChrB(f) 

      Response.BinaryWrite vColorData(Mid(vNumberData(vCode(ii)), i * 10 + iii , 1))  

    else

      Response.BinaryWrite vColorData(Mid(vNumberData(vCode(ii)), i * 10 + iii , 1))  

    end if

  end if

Next  

Next  

Next  

End Sub  
%> 

以上代碼可直接另存為一個文件,如vcode.asp,然后通過圖片的方式調用改文件,如img src="vcode.asp" border=0 align="absmiddle" />,然后在提交后的處理頁面里驗證session("checkcode")的值就可以了。這個代碼是flymorn自己改進的,原始的參考代碼請直接在google里搜索“用ASP生成Bmp圖片”,或查看這個網址,可以找到一些相關的。

    最后,就是“5+6=”這樣的隨機數字相加的形式生成在bmp圖片里了,它們的和需要你計算后填入,以達到驗證的功能,防止機器蹂躪你的網站。如果你也關心asp圖片驗證碼,歡迎留言,讓我們一起交流。

標簽:錫林郭勒盟 儋州 新余 江門 宣城 七臺河 廣元 雅安

巨人網絡通訊聲明:本文標題《ASP生成數字相加求和的BMP圖片驗證碼》,本文關鍵詞  ASP,生成,數字,相加,求和,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ASP生成數字相加求和的BMP圖片驗證碼》相關的同類信息!
  • 本頁收集關于ASP生成數字相加求和的BMP圖片驗證碼的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 很黄很爽很色很刺激无遮挡| 在线三上悠亚| 小s货几天没做都湿成这样| 女强被?到爽??| 国产xxxx69免费大片| 爽?躁多水?快?深点车上视频 | 美女爆乳裸体WWW免费网站学生| 痴汉电车喷潮在线播放| 国产AV人人爽96人人爱| 午夜免费理论片a级| 高清资源| 一个人看的视频在线www高清| 又粗又长又硬,爽死我了| 免费看美女部位隐私| 亚洲精选一区二区三区| 高潮了太爽了受不了尿了视频| 亚洲 欧美 偷自乱 图片| 色欲AV秘?无码一区二区三区| 无码AV精品-区二区三区在线| 日本19禁啪啪免费观看| 玩弄调教白嫩小少爷h| 亚洲 国产 日韩 在线 一区| 丝袜高跟浓精受孕h文| 国外黄冈网站推广| 共妻H花蒂涂药h| 亚洲精品人人| 揉胸小说| 中文字幕在线一区二区| 不要了太大了| 美女扒开粉嫩的尿囗给男生桶小说| 男m无码播放一区二区| 香蕉茄子视频| 睡了自己妈妈的多吗| 成人免费观看www的片| 久久精品国产在热亚洲完整版| 古风纯肉高H啪啪文| 空乘美女被下药糟蹋视频| 女人与公拘交酡全过程| aaaaaaaaa在线观看| 无毛**| chinese老头hdsexasiantube|