So, du bist mir'ne Nuss
Delphi-Quellcode:
function CCFDecrypt(const CCF: Binary; const Password: Binary): Binary;
begin
with TCipher_Rijndael.Create do
try
Mode := cmCFB8;
Init(Password);
Result := DecodeBinary(CCF, TFormat_MIME64);
finally
Free;
end;
end;
function CCFEncrypt(const CCF: Binary; const Password: Binary): Binary;
begin
with TCipher_Rijndael.Create do
try
Mode := cmCFB8;
Init(Password);
Result := EncodeBinary(CCF, TFormat_MIME64);
finally
Free;
end;
end;
procedure Test;
var
Password, Data: Binary;
begin
Password := TFormat_HEX.Decode('8C35192D964DC3182C6F84F3252239EB4A320D2500000000');
Data := CCFEncrypt('CCF: http://rapidshare.com/files/58141435/voy402.part1.rar', Password);
WriteLn('MIME64 : ', Data);
WriteLn('HEX : ', TFormat_HEX.Encode(Data));
Data := CCFDecrypt(Data, Password);
WriteLn('Data : ', Data);
end;
raus kommt dann
Code:
MIME64 : imlVf7HadQ70zlFlQno/ssi7aJalsNLvX0cgQ4Y0TNT23LLgR0bVdle/wsZ2FpKnZeOlnhn/XnLLJg==
HEX : 696D6C5666374861645137307A6C466C516E6F2F73736937614A616C734E4C765830636751345930544E54323
34C4C6752306256646C652F77735A3246704B6E5A654F6C6E686E2F586E4C4C4A673D3D
Data : CCF: [
url]http://rapidshare.com/files/58141435/voy402.part1.rar[/
url]
Wie du siehst brauscht du im
DEC nur die richtigen Parameter einstellen und ohne Probleme funktioniert alles. Man sollte eben wissen WAS man da eigentlich als Datenformat so macht und gleich die richtigen Testvektoren liefern.
So das kostet dich ein Bier und da ich keines trinke könntest du uns an deiner fertigen Anwendung, RapidShare Tool, partizipieren lassen.
Gruß Hagen
EDIT: ach übrigens ich hoffe das es positiv auffällt mit wie wenig Sourcezeilen man das Gleiche in Delphi machen kann was im PHP umständlich geht
EDIT: kryptographisch betrachtet ist diese Methode Dateien zu schützen unsicher, falls das Passwort nicht jedesmal neu per Zufall gewählt wird !