asp如何加密数据

1221
2021/2/20 13:29:33
栏目: 网络安全
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

asp如何加密数据

在asp中使用MD5加密算法对数据进行加密,具体方法如下:

<%

Function hmac(data,key)

dim ipad,opad,k_ipad,k_opad,i

for i = 1 to ( 64 - len(key) )

key = key & chr(&H00)

next

'Response.Write(len(key))

ipad = "6666666666666666666666666666666666666666666666666666666666666666"

opad = "\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"

k_ipad = strXor(ipad,key ) 'key Xor ipad

k_opad = strXor(opad,key ) 'key Xor opad

hmac =md5( k_opad & pack( md5( k_ipad & data ) ) )

End Function

Function strXor(strdata,strkey)

Dim strChar, iKeyChar, iStringChar, i,iCryptChar

for i = 1 to Len(strdata)

iKeyChar = Asc(mid(strkey,i,1))

iStringChar = Asc(mid(strdata,i,1))

iCryptChar = iKeyChar Xor iStringChar

strXor = strXor & Chr(iCryptChar)

next

End Function

Function ShowHex(data)

dim i

dim ch

l=lenB(data)

for i = 1 to l

ch=midB(data,i,1)

h=trim(hex(ascB(ch)))

if len(h)=1 then

h="0"+h

end if

ShowHex = ShowHex + h+" "

next

end Function

Function strtoHex(achar)

if Asc(achar) < 58 then

strtoHex = Asc(achar) - 48

else

strtoHex = Asc(achar) - 87

end if

End Function

Function pack(amd5)

dim i,n

dim abyte,hsum,lsum

n = len(amd5)/2

for i = 0 to n - 1

hsum = strtoHex(mid(amd5,2*i + 1,1)) * 16 + strtoHex(mid(amd5,2*i + 2,1))

if hsum > 127 and i < n - 1 then

i = i + 1

'Response.write(mid(amd5,2*i + 1,1) & mid(amd5,2*i + 2,1) )

lsum = strtoHex(mid(amd5,2*i + 1,1)) * 16 + strtoHex(mid(amd5,2*i + 2,1))

pack = pack & chr(hsum * 256 + lsum )

else

'Response.write(mid(amd5,2*i + 1,1) & mid(amd5,2*i + 2,1) )

pack = pack & chrw(hsum)

end if

next

End Function

Response.Write(md5(hmac("testdata","029a1228ea025cf897fe305715f3b794")))

%>

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: 使用经典 ASP 的字符串到数组