• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

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

发布: 2007-5-25 09:24 | 作者: jlum99 | 来源: 互联网 | 查看: 63次 | 进入软件测试论坛讨论

领测软件测试网

 

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

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/