Hallo,
hat jemand Erfahrung mit dieser
Unit.
ich rufe die procedure auf.
Delphi-Quellcode:
sEncText := '
EÚ'#$81'
?ze,ª¶¯,…'
DecryptCFB(sEncText[1], sEncText[1], Length(sEncText));
procedure TDCP_blowfish.DecryptCFB(
const InData;
var OutData; Size: longint);
{$ELSE}
procedure BlowfishDecryptCFB;
{$ENDIF}
var
i: longint;
TB:
array[0..7]
of byte;
b: byte;
begin
{$IFDEF CFORM}
if not fInitialized
then
raise Exception.Create('
Blowfish: Not initialized');
{$ELSE}with Data
do begin{$ENDIF}
for i:= 0
to Size-1
do
begin
b:= PByteArray(@InData)^[i];
{$IFDEF CFORM}Encrypt(LB,TB)
{$ELSE}BlowfishEncryptECB(Data,LB,TB)
{$ENDIF};
PByteArray(@OutData)^[i]:= PByteArray(@InData)^[i]
xor TB[0];
Move(LB[1],LB[0],7);
LB[7]:= b;
end;
{$IFNDEF CFORM}end;
{$ENDIF}
end;
Unter D2007 wurde folgender Wert zurückgegeben: sEncText = 'IQN4.0WL1951'
unter XE2 wird dieser Wert zurückgegeben: sEncText = 'sQƒ§?ݦàþÒ'#$11'ñ'
Wer weiß hier Rat? Bin schon seit Tagen dabei dies Problem zu lösen.
Vielen Dank im Voraus für einen hoffentlich erfolgreichen Tipp.