Einzelnen Beitrag anzeigen

hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#6

Re: Rijnadel in Delphi nicht gleich wie das in PHP

  Alt 15. Feb 2008, 10:03
Erfolg

Benutze ich diesen Delphi Code

Delphi-Quellcode:
begin
with TCipher_Rijndael.Create do
try
  Mode := cmECBx;
  Init('terertertererfrt');
  showmessage(EncodeBinary('wertzuioplkjhgfd', TFormat_HEXL));
finally
  Free;
end;
Und diesen PHP

Code:
$key = 'terertertererfrt';
$string = 'wertzuioplkjhgfd';
$td = mcrypt_module_open('rijndael-128', '', 'ecb', '');
$iv_size = mcrypt_enc_get_iv_size($td);
$iv = str_repeat(chr(0), $iv_size);
if (mcrypt_generic_init($td, $key, $iv) != -1) {
$c_t = mcrypt_generic($td, $string);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
}
echo bin2hex($c_t);
Dan kommt das gleiche raus...

Aber! Wenn ich in Delphi den zu verschlüsselnden Text ändere, kommt die Meldung:

Code:
Messagelength for cmECBx must be a multiple of 16 bytes.
Ändere ich hingegen den Text in PHP so gibts einfach einen anderen verschlüsselten Text

Was muss ich tun, damit ich mehr als 16 Bytes verschlüsseln kann? Schlussendlich sollen damit auch
Dateien ver und entschlüsselt werden...


Danke schonmal
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat