我正在将一些服务器端Java代码迁移到新的NodeJS服务器。我正在寻找与Java的Cipher.doFinal(byte[])相等的Javascript方法调用。请注意,我不能使用NodeJS Buffers,因为它们不支持负字节值。因此,为了进行加密,我需要一个接受正数和负数数组的方法。
这是我目前与此问题相关的所有内容:
NodeJS / Javascript: var crypto = require('crypto'); var cipher = crypto.createCipher('aes256',key);
Java (javax.crypto.Cipher):
在Java代码中,我调用了这个方法,其中Iv代表初始化向量:
这是我目前与此问题相关的所有内容:
NodeJS / Javascript: var crypto = require('crypto'); var cipher = crypto.createCipher('aes256',key);
Java (javax.crypto.Cipher):
Cipher cipher;
SecretKeySpec skeySpec = new SecretKeySpec(key, "AES");
try {
cipher = Cipher.getInstance("AES");
} catch (NoSuchAlgorithmException e) {
} catch (NoSuchPaddingException e) {
}try {
cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
} catch (InvalidKeyException e) {
}
在Java代码中,我调用了这个方法,其中Iv代表初始化向量:
byte[] newIv = cipher.doFinal(myIv);
我该如何在JavaScript中得到与doFinal Java方法相同的结果?