简单高效地加密一个字符串 ( 积分: 200 )

  • 主题发起人 主题发起人 LuckyJackie
  • 开始时间 开始时间
L

LuckyJackie

Unregistered / Unconfirmed
GUEST, unregistred user!
不要用到很复杂的算法(md5,des等),另外一个要求是加密出来的字符串可以不等长(即使对于原来长度相等的字符串)。
请同时提供解密函数。谢谢!
 
方法一(加密解密为同一函数):
function NotString(S:string):string;
var
I:Cardinal;
begin
for I:=1 to Length(S)-1 do
S:=Char(not Byte(S));
Result:=S;
end;

方法二(加密解密为同一函数):
function XorString(S:string;Key:Byte):string;
var
I:Cardinal;
begin
for I:=1 to Length(S)-1 do
S:=Char(Byte(S) xor Key);
Result:=S;
end;
 
要高效的话 还是的用md5
 
效率和复杂度都比较理想的算法:
http://www.delphibbs.com/keylife/iblog_show.asp?xid=7088
 
to liuchong,
加密出来的结果会变成乱码
 
最简单的办法:把每个字节用hex字符串表示
 
md5 好像不能用来加密
 
Jvcl Compress
 
加密方法有多種。
 
加密以后再转换成16进制不就可以了么........
 
后退
顶部