vfp中如何将字符串加密解密

2024-10-13 10:04:49

1、在VFP中,加解密字符串其实有很多种方法,在这里有一个函数,希望对您有所帮助:本函数功能: 1.加解密字符串.2.如果有人非法修改密码,将提示非法修改.

vfp中如何将字符串加密解密

2、入口: * LCZIP --判断是加密还是解密,.T. --加密,.F.解密*Lcpass--要加解密的字符串返回: *加解密后字符串注意:如果返回的字符串为ERROR*证明密码出错或着密码被非法修改过.

vfp中如何将字符串加密解密

3、FunCtion CalcPassWordPara Lczip,LcpasslCPASS=Allt(Lcpass)IF LcZip &&加密Lcpass="DALY"+LcpassLCNewPass=CHR(Len(Lcpass))*处理字符串,使它不为空因为我要把加密后的字符放到数据库,为防他人直接打开.

vfp中如何将字符串加密解密

4、数倌栗受绽据库看出密码为空For i=1 To Len(Lcpass)LCNewPass=LCNewPass+Chr(asc(SubStr(Lcpass,i,1))/32);+Chr(asc(SubStr(Lcpass,i,1))%32)EndFor*取出字符串中的单个字符,并把它转为ASCII码.*把ASCII码除于32得到的整数跟余数转为字符,再把两个字符和合为一个字符串.

vfp中如何将字符串加密解密

5、*经这种处理后,已经无法得知原来的字符,只有经计算机用反方法解开LCNewPass=P钽吟篑瑜ADR(LCNewPass,50,CHR(1)像粜杵泳) &&返回50个字符长度,不足的用CHR(1)补足ElseIF LEN(lCPASS)#50 &&如果长度出错,证明非法修改过=MESSAGEbOX("密码被非法修改",0,_screen.caption)Return "ERROR"ENDIFFor i=1 TO 50IF asc(SubStr(Lcpass,i,1))>=32 &&检查密码是否被非法修改=MESSAGEbOX("密码被非法修改",0,_screen.caption)Return "ERROR"ENDIFEndForLCNewPass="" &&解密For I=0 TO (asc(SubStr(Lcpass,1,1))*2)-9LCNewPass=LCNewPass+Chr(asc(SubStr(Lcpass,i+10,1))*32;+asc(SubStr(Lcpass,i+11,1)))i=i+1EndForEndIFReturn LcNewPass

vfp中如何将字符串加密解密

6、以上这种编程方式希望可以帮助你在vfp中将字符串加密解密。

vfp中如何将字符串加密解密
猜你喜欢