当前位置:编程学习 > 网站相关 >>

如何对字符串进行加密解密

 

 

在操作数据库时,考虑到该数据库还有可能被其他软件打开,所以想能否有另外一种方式把数据库中数据进行加密呢,也就是说,即使别人利用其他的软件打开了该数据库,看到的也是一片乱码,根本不知道数据库进而是什么内容。出于这种情况,利用VB中自带RND()函数的功能编写了如下加密解密方法。当RND()的参数(我们称它为种子)为负值时,同一种子产生同一个随机序列,同时VB还具有强大的二进制技术功能。

这样我们可以按以下方法实现字符串内容的加密解密。

 

源程序如下:

 

Public Function StringEnDeCodecn(strSource As String, MA) As String

该函数只对中西文起到加密作用

参数为:源文件,密码

On Error GoTo ErrEnDeCode

Dim X As Single

Dim CHARNUM As Long, RANDOMINTEGER As Integer

Dim SINGLECHAR As String * 1

Dim strTmp As String

If MA < 0 Then

MA = MA * (-1)

End If

X = Rnd(-MA)

For i = 1 To Len(strSource) Step 1 取单字节内容

SINGLECHAR = Mid(strSource, i, 1)

CHARNUM = Asc(SINGLECHAR)

g: RANDOMINTEGER = Int(127 * Rnd)

If RANDOMINTEGER < 30 Or RANDOMINTEGER > 100 Then GoTo g

CHARNUM = CHARNUM Xor RANDOMINTEGER

strTmp = strTmp & Chr(CHARNUM)

Next i

StringEnDeCodecn = strTmp

Exit Function

ErrEnDeCode:

StringEnDeCodecn = ""

MsgBox Err.Number & "" & Err.Description

End Function

 

使用方法:

tmp=stringEnDecn("中华人民共和国",75)

如果要解密的话,只须键入以下语句:

tmp1=stringendecn(tmp,75)

 

 

补充:综合编程 , 安全编程 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,