问题描述
PublicFunctionRC4(inpAsString,keyAsString)AsStringDimS(0To255)AsByte,K(0To255)AsByte,iAsLongDimjAsLong,tempAsByte,YAsByte,tAsLong,xAsLongDimOutpAsStringFori=0To255S(i)=iNextj=1Fori=0To255Ifj>Len(key)Thenj=1K(i)=Asc(Mid(key,j,1))j=j+1Nextij=0Fori=0To255j=(j+S(i)+K(i))Mod256temp=S(i)S(i)=S(j)S(j)=tempNextii=0j=0Forx=1ToLen(inp)i=(i+1)Mod256j=(j+S(i))Mod256temp=S(i)S(i)=S(j)S(j)=tempt=(S(i)+(S(j)Mod256))Mod256Y=S(t)Outp=Outp&Chr(Asc(Mid(inp,x,1))XorY)NextRC4=OutpEndFunction
解决方案
本帖最后由 bzyhd 于 2016-01-02 08:42:32 编辑
解决方案二:
直接可以用,你转什么转?
解决方案三:
直接用好像结果不对哦~!~
解决方案四:
要注意chr与chrW的区别,asc/ascw的区别,VB.NET于VB6编码不一样
解决方案五:
测试了下,貌似chr改成chrW就OK了
解决方案六:
看起来很简单的样子
时间: 2024-10-27 09:33:30