Hallo Zusammen,
seit einiger Zeit kämpfe ich mit dem Problem, dass meine Verschlüsselungsfunktionen nicht richtig funktionieren.
Die mit Swift verschlüsselten Strings kann ich ohne Probleme mit PHP entschlüsseln.
Wenn ich jedoch mit PHP Strings verschlüsseln möchte, bekomme ich da immer anderer Werte heraus, als wie mit Swift.
Könnt ihr mir da helfen, wo mein Fehler liegt?
Mein Code ih PHP sieht wie folgt aus:
Als verschlüsselten Text erhalte ich dann: a89ab899ab5d5adacf1d74c25b1b42db
Und in Swift bekomme ich mit dem gleichen Key und IV folgendes Resultat:
0e492778f9a3ee72c66d7867a21b98ca
Zum Verständnis noch mein Swift-Code:
Vielen Dank schonmal.
seit einiger Zeit kämpfe ich mit dem Problem, dass meine Verschlüsselungsfunktionen nicht richtig funktionieren.
Die mit Swift verschlüsselten Strings kann ich ohne Probleme mit PHP entschlüsseln.
Wenn ich jedoch mit PHP Strings verschlüsseln möchte, bekomme ich da immer anderer Werte heraus, als wie mit Swift.
Könnt ihr mir da helfen, wo mein Fehler liegt?
Mein Code ih PHP sieht wie folgt aus:
PHP-Code:
$text = 'Test';
$key128 = 'Test1234Test1234';
$iv = '1234567891011121';
$str = bin2hex(mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key128, $text, MCRYPT_MODE_CBC, $iv));
Und in Swift bekomme ich mit dem gleichen Key und IV folgendes Resultat:
0e492778f9a3ee72c66d7867a21b98ca
Zum Verständnis noch mein Swift-Code:
Code:
let input: Array<UInt8> = Array(_Nachricht.utf8); let k = "Test1234Test1234"; let i = "1234567891011121" let key: Array<UInt8> = Array(k.utf8) let iv: Array<UInt8> = Array(i.utf8) do { let encrypted = try AES(key: key, blockMode: .CBC(iv: iv), padding: .pkcs7).encrypt(input) return(encrypted.toHexString()) } catch { print(error) }
Vielen Dank schonmal.
Kommentar