crypto-js wird von JavaScript-Entwicklern verwendet, um Text zu verschlüsseln. Es ist einfach zu bedienen.Implementieren Sie die Verschlüsselungsfunktion aus Crypto-js-Bibliothek in Java
var CryptoJS = require("crypto-js");
// Encrypt
var ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123');
// Decrypt
var bytes = CryptoJS.AES.decrypt(ciphertext.toString(), 'secret key 123');
var plaintext = bytes.toString(CryptoJS.enc.Utf8);
console.log(plaintext);
In diesem Beispiel encrypt Funktion nur zwei Argumente messageToEncrypt und Salz nimmt. Der Rest der Konfiguration würde innerhalb seiner Definition liegen. Ich bin kein javascript Kerl, so ist es schwierig zu finden und zu verstehen verschlüsseln Definition.
Ich möchte die gleiche AES
Verschlüsselung mit Java erreichen. Also für das gleiche Eingabeargument z.B. messageToEncrypt und salt Ich sollte den gleichen verschlüsselten Text mit der crypto-js-Bibliothek und der Java-Implementierung erhalten.
Ich versuchte javax.crypto
durch die Erkundung einiger Links auf Google.
String plainText = "messageToEncrypt";
String key = "mySalt";
SecretKey secKey = new SecretKeySpec(key.getBytes("UTF-8"), "AES");
Cipher aesCipher = Cipher.getInstance("AES");
aesCipher.init(Cipher.ENCRYPT_MODE, secKey);
byte[] x = aesCipher.doFinal(plainText.getBytes());
System.out.println(x);
Aber das funktioniert nicht für mich, weil ich genaue Parameter wie keySize und iterationCount nicht kenne.
Ich habe versucht, https://github.com/mpetersen/aes-example/blob/master/src/main/java/org/cloudme/sample/aes/AesUtil.java auch verwenden, aber ich bin mir nicht sicher über keySize und iterationCount.
Wie kann ich einfache exakte Implementierung der AES-Verschlüsselung von crypto-js in Java erstellen?
haben vielleicht einen Blick auf https://stackoverflow.com/questions/992019/java-256-bit-aes-password-based-encryption – Lino