经典加密算法在VB中的实现(3)- RC4

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 jlum99 的 blog

 

public sub main()
dim key as string
for i = 1 to 16
    randomize
    key = key & chr(rnd * 255)
next i
msgbox rc4(rc4("welcome to plindge studio!", key), key)
end sub
public function rc4(inp as string, key as string) as string
dim s(0 to 255) as byte, k(0 to 255) as byte, i as long
dim j as long, temp as byte, y as byte, t as long, x as long
dim outp as string

for i = 0 to 255
    s(i) = i
next

j = 1
for i = 0 to 255
    if j > len(key) then j = 1
    k(i) = asc(mid(key, j, 1))
    j = j + 1
next i

j = 0
for i = 0 to 255
    j = (j + s(i) + k(i)) mod 256
    temp = s(i)
    s(i) = s(j)
    s(j) = temp
next i

i = 0
j = 0
for x = 1 to len(inp)
    i = (i + 1) mod 256
    j = (j + s(i)) mod 256
    temp = s(i)
    s(i) = s(j)
    s(j) = temp
    t = (s(i) + (s(j) mod 256)) mod 256
    y = s(t)
    
    outp = outp & chr(asc(mid(inp, x, 1)) xor y)
next
rc4 = outp
end function
经典加密算法在vb中的实现(1)- base64
经典加密算法在vb中的实现(2)- md5
经典加密算法在vb中的实现(4)- des

本文关键:加密
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top