crypto-js은 자바 스크립트 개발자가 텍스트를 암호화하는 데 사용됩니다. 사용이 간편합니다. 이 예 암호화 함수에 Java의 crypto-js 라이브러리에서 암호화 기능 구현
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);
은 두 인수 messageToEncrypt 염화칼슘을 취하고있다. 구성의 나머지 부분은 정의 내에있을 것입니다. 나는 자바 스크립트 녀석이 아니기 때문에 발견하기가 어렵고 이해하기가
의 정의이다.
자바를 사용하여 동일한 AES
암호화를 달성하고 싶습니다. 예. messageToEncrypt and salt crypto-js 라이브러리 및 Java 구현을 사용하여 동일한 암호화 된 텍스트를 가져와야합니다.
Google에서 일부 링크를 탐색하여 javax.crypto
을 시도했습니다.
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);
그러나 keySize 및 iterationCount와 같은 정확한 매개 변수를 알지 못하므로이 기능이 작동하지 않습니다.
나는 또한 https://github.com/mpetersen/aes-example/blob/master/src/main/java/org/cloudme/sample/aes/AesUtil.java을 사용하려고했지만 keySize 및 iterationCount에 대해서는 확실하지 않습니다.
java에서 crypto-js의 AES 암호화를 어떻게 정확하게 구현할 수 있습니까?
어쩌면 https://stackoverflow.com/questions/992019/java-256-bit-aes-password-based-encryption를 보라 – Lino