RC4加密算法的VBS版

[ 2007-01-26 15:32:32 | 作者: {$author:name$} ]  编辑  删除
字体大小: | |
刚才浪费了好长的时间研究RC4加密算法。
关于RC4加密算法,可以参考百度百科:RC4算法

参考RC4经典加密算法代码(VB版),写了个VBS版。
下面附有代码,我觉得应该没有错误。
但测试后却发现:
1, key不能使用中文
2, 不同编码的中文加密以后的值也是不同的
3, 加密以后太多的不可见字符,根本不适合web使用。
4, 也许变通一下会是一个不错的加密算法。比如我下面的直接输出asc码。



Function RC4(inp,key)
' //RC4加密算法的VBS版
' //by fisker

    Dim S(255), K(255), i
    Dim j, temp, Y, t, x
    Dim Outp 

    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

    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 = 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 & (Asc(mid(inp, x, 1)) Xor Y)    
    Outp = Outp & Chr(Asc(mid(inp, x, 1)) Xor Y)  'RC4算法
    next

    RC4 = Outp

End Function
评论Feed 评论Feed: http://ifisker.com/blog/feed.asp?q=comment&id=876
UTF-8 Encoding 引用链接: loading...

这篇日志没有评论.

发表评论
表情图标
[smile][confused][cool][cry]
[eek][angry][wink][sweat]
[lol][stun][razz][redface]
[rolleyes][sad][yes][no]
[heart][star][music][idea]
UBB代码
转换链接
表情图标
悄悄话
用户名:   密码:   注册?
验证码* 请输入验证码