有加密文件和加密文件的读取软件,能知道其加密方法吗? 顺便问问这个读取软件,怎样才能知道作者是用何种语言编的? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 沙发 可以用pediy检测一下 如果有壳要先去了壳才知道!可以分析出来 但估计很难 这是别人的//加密Function EncrypKey (Src:String; Key:String):string;var idx :integer; KeyLen :Integer; KeyPos :Integer; offset :Integer; dest :string; SrcPos :Integer; SrcAsc :Integer; TmpSrcAsc :Integer; Range :Integer;begin if Src = '' then begin result := ''; exit; end; KeyLen:=Length(Key); if KeyLen = 0 then key:='Think Space'; KeyPos:=0; SrcPos:=0; SrcAsc:=0; Range:=256; Randomize; offset:=Random(Range); dest:=format('%1.2x',[offset]); for SrcPos := 1 to Length(Src) do begin SrcAsc:=(Ord(Src[SrcPos]) + offset) MOD 255; if KeyPos < KeyLen then KeyPos:= KeyPos + 1 else KeyPos:=1; SrcAsc:= SrcAsc xor Ord(Key[KeyPos]); dest:=dest + format('%1.2x',[SrcAsc]); offset:=SrcAsc; end; Result:=Dest;end;// 待解密字串, 密钥Function UncrypKey (Src:String; Key:String):string;var idx :integer; KeyLen :Integer; KeyPos :Integer; offset :Integer; dest :string; SrcPos :Integer; SrcAsc :Integer; TmpSrcAsc :Integer; Range :Integer;begin if Src = '' then begin result := ''; exit; end; KeyLen:=Length(Key); if KeyLen = 0 then key:='Think Space'; KeyPos:=0; SrcPos:=0; SrcAsc:=0; Range:=256; offset:=StrToInt('$'+ copy(src,1,2)); SrcPos:=3; repeat SrcAsc:=StrToInt('$'+ copy(src,SrcPos,2)); if KeyPos < KeyLen Then KeyPos := KeyPos + 1 else KeyPos := 1; TmpSrcAsc := SrcAsc xor Ord(Key[KeyPos]); if TmpSrcAsc <= offset then TmpSrcAsc := 255 + TmpSrcAsc - offset else TmpSrcAsc := TmpSrcAsc - offset; dest := dest + chr(TmpSrcAsc); offset:=srcAsc; SrcPos:=SrcPos + 2; until SrcPos >= Length(Src); Result:=Dest;end; 晕 一看竟然错了 沙发白做了我是说可以到pediy 去下一个peid 检测外壳:(超级郁闷! 如何能把用户在前端输入的信息传送到php里去? 请问各位大侠这样的效果如何实现? 如何将Tshape画出的线在Tbutton上面! Delphi可不可以访问EJB对象 请问初学DELPHI看什么书?有没有电子书下啊? 请问那里有masting delphi6的光盘源代码??? 我错在哪里了? 请问那里有DELPI FORMATTER FROM D6下在或者有其它的代码整理工具也可 急!如何在使用query构件查处的结果集中定位到第n条纪录! 小小问题,请大家指点指点。。。。急!!!! 新手问题 哪里有DBImageEx for d7下载?
//加密
Function EncrypKey (Src:String; Key:String):string;
var
idx :integer;
KeyLen :Integer;
KeyPos :Integer;
offset :Integer;
dest :string;
SrcPos :Integer;
SrcAsc :Integer;
TmpSrcAsc :Integer;
Range :Integer;
begin
if Src = '' then
begin
result := '';
exit;
end; KeyLen:=Length(Key);
if KeyLen = 0 then key:='Think Space';
KeyPos:=0;
SrcPos:=0;
SrcAsc:=0;
Range:=256; Randomize;
offset:=Random(Range);
dest:=format('%1.2x',[offset]);
for SrcPos := 1 to Length(Src) do
begin
SrcAsc:=(Ord(Src[SrcPos]) + offset) MOD 255;
if KeyPos < KeyLen then KeyPos:= KeyPos + 1 else KeyPos:=1;
SrcAsc:= SrcAsc xor Ord(Key[KeyPos]);
dest:=dest + format('%1.2x',[SrcAsc]);
offset:=SrcAsc;
end;
Result:=Dest;
end;
// 待解密字串, 密钥
Function UncrypKey (Src:String; Key:String):string;
var
idx :integer;
KeyLen :Integer;
KeyPos :Integer;
offset :Integer;
dest :string;
SrcPos :Integer;
SrcAsc :Integer;
TmpSrcAsc :Integer;
Range :Integer;
begin
if Src = '' then
begin
result := '';
exit;
end; KeyLen:=Length(Key);
if KeyLen = 0 then key:='Think Space';
KeyPos:=0;
SrcPos:=0;
SrcAsc:=0;
Range:=256;
offset:=StrToInt('$'+ copy(src,1,2));
SrcPos:=3;
repeat
SrcAsc:=StrToInt('$'+ copy(src,SrcPos,2));
if KeyPos < KeyLen Then KeyPos := KeyPos + 1 else KeyPos := 1;
TmpSrcAsc := SrcAsc xor Ord(Key[KeyPos]);
if TmpSrcAsc <= offset then
TmpSrcAsc := 255 + TmpSrcAsc - offset
else
TmpSrcAsc := TmpSrcAsc - offset;
dest := dest + chr(TmpSrcAsc);
offset:=srcAsc;
SrcPos:=SrcPos + 2;
until SrcPos >= Length(Src);
Result:=Dest;
end;
我是说可以到pediy 去下一个peid 检测外壳
:(超级郁闷!