インターネットには多くの画像検証コードフォームがあります。画像を生成しない検証コードには、単に脆弱な防御防御機能があります。一部の人々は、Webソースコードに特定の番号を直接表示し、訪問者に追加の合計を入力するように依頼します。 3+5 =など、このような検証コードにはいくつかの新機能がありますが、残念ながら、それらはまったく保護されていません。
Flymornは上記のノベルティを改善し、ASPプログラムを直接使用してBMP画像形式を生成し、数字の合計をセッションに保存して、ひび割れのしきい値を増やします。グラフィックと図像に関する知識のない人々はそれを割ることができません。コードは次のとおりです。
<%
Response.buffer = true
Response.ExpiresAbsolute = now()-1
Response.Expires = 0
Response.cachecontrol = "no-cache"
Response.ContentType = "image/bmp"
callcom_creatvalidcode()
subcom_creatvalidcode()
ランダム化
ディミ、II、III
constcamount = 10 '値の数
constccode = "0123456789" '数値範囲
dimvcolordata(2)
vcolordata(0)= "" '黒い点はカラードットに変換する必要がありますが、当面は定義されていません
vcolordata(1)= chrb(255)&chrb(255)&chrb(255) 'white dot
dimvcode(4)、vcodes 'は任意の数値のセットを生成します
fori = 0to3
vcode(i)= int(rnd*camount) '配列は総数*乱数に等しい
ifi = 1thenvcode(i)= "11" '2番目の数字は +です
ifi = 3thenvcode(i)= "10" '4桁目は=です
vcodes = vcodes&mid(ccode、vcode(i)+1,1) '文字列は文字列と後続の値に等しくなります
次
session( "checkcode")= int(mid(vcodes、1,1))+int(mid(vcodes、2,1)) '合計を計算し、セッションに値を割り当てます
dimvnumberdata(36)
vNumberData(0)=
"11100001111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111110011111111011111111111110011"
vNumberData(1)=
"11110111111110001111111111111110111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111100000111"
vNumberData(2)=
"1110000111111011111011111111011111111101111111111101111111111111111111111111111111111111111111111111111111111111111101111111011111100000011"
vNumberData(3)=
"11100001111110111111111111111111111111111111111111110011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111ケ -
vNumberData(4)=
"1111110111111111110111111101111110111111011111101111110111111011111101111110000011111111111111110111111111000011"
vNumberData(5)=
"110000000111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 -"