【发布时间】:2017-05-05 15:19:43
【问题描述】:
我需要将PKCS#7 填充应用于使用 AES-CBC 算法进行消化的数据。我使用forge lib。这是我当前工作的代码(没有填充):
// transform json data to bytes
var data = {foo: 'bar'};
var stringData = JSON.stringify(data);
var bytes = forge.util.createBuffer(stringData);
// generate 16-byte vector iv
var iv = forge.random.getBytesSync(16);
// ciphering process
var cipher = forge.cipher.createCipher('AES-CBC', key);
cipher.start({iv: iv});
cipher.update(bytes);
cipher.finish();
var encrypted = cipher.output;
所以从理论上讲,我知道我应该在 bytes 变量中附加 1-16 个字节,然后再将其传递给 aes 算法。 forge 库中是否内置了这种操作?如果没有,有人可以帮我实现对消息的填充应用吗?
【问题讨论】:
标签: javascript encryption cryptography forge