字符串加密原程序(在线等待高手指点)(200分)

  • 主题发起人 主题发起人 zzutrain
  • 开始时间 开始时间
Z

zzutrain

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟最近看到网上高手提供的字符串加密原程序, 不清楚算法的原理(或者这种算法的名称)
所以不能论证所有的字符串都可以正确的加解密. 不知道有没有高手能给些指点.

给出此加密算法的出处, 关于该算法的文献

const
C1 =23456;
C2 =45678;
EN_KEY=56789;

function Encrypt(const S: String; Key: Word): String;
var
I: byte;
begin
Result:='';
for I := 1 to Length(S) do begin
Result :=Result+ Chr(Ord(S) xor (Key shr 8));
Key := (Ord(Result) + Key) * C1 + C2;
end;
end;

function Decrypt(const S: String; Key: Word): String;
var
I: byte;
begin
Result:= '';
for I := 1 to Length(S) do begin
Result :=Result+ Chr(Ord(S) xor (Key shr 8));
Key := (ord(S) + Key) * C1 + C2;
end;
end;
 
上面的算法可以对所有的字符串正确的加解密。
 
我想知道这个算法的基础理论. 或者文献.
 
就是产生一个 key 串然后 xor 原来的 byte 啊
不过这个算法的效率实在不咋的。 ;>
 
多人接受答案了。
 

Similar threads

I
回复
0
查看
587
import
I
I
回复
0
查看
523
import
I
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部