用vb 如何 把 字符串 JS加密

JavaScript012

用vb 如何 把 字符串 JS加密,第1张

Private Sub Form_Load()

FileName$ = InputBox("请输入需要加密的文件名及路径:")

Open FileName$ For Input As #1

Line Input #1, yw$

Close #1

xw$ = ""

n = Len(yw$)

For i = 1 To n

yz$ = Mid$(yw$, i, 1)

xz$ = Chr(Asc(yz$) - 10)

xw$ = xw$ &xz$

Next

Open FileName$ For Output As #1

Print #1, xw$

Close #1

MsgBox "####加密已完成!!####"

End

End Sub

在做游戏或应用的时候,一些本地数据为了安全需要加密。最简单的加密方式当然是异或加密了,但异或之后输出的是数据块,并非字符串,有效且省空间的做法是装数据块转成Base64了,Base64之后的空间占用约为原数据的133%左右.

因为在使用过种中,会用到数据块,这里用字节数组 Uint8Array 来存储数据块,并需要Uint8Array与String UTF8的互转.

网上也有很多异或的算法,很多都是用 charCodeAt fromCharCode 来对字符串直接操作的,这样的操作在ts中很不错也不会出问题.但我还是比较喜欢转成用字节数组来操作,在种在网络通讯中,跨平台跨语言时不容易出错.

Base64算法在js原生平台有库,使用Buffer类就能实现. Base64的算法也挺简单的,这里为了配合异或加密还是自己写一个.

回到主题,从上面异或加密和Base64编码的方法中,很容易就能找出规律,要合并二个算法,只要在Base64编码的时候对编码时的字节做一个异或操作就可以了.