【发布时间】:2018-12-14 18:32:12
【问题描述】:
我正在使用 guid 进行字符串加密,如下所示,并存储 cipherout.ciphertext 值,但不存储 cipherout.iv 值。 但是在解密时,为什么我不能只传递密钥,而不是传递密钥和 cipherout.iv 值。因为它在解密时要求这两个值。我是否需要同时存储密钥和 cipherout.iv 值以进行解密? 请指教
FIRSTFILE.js:
var guid = "4ab23a136dc347d";
var inputString = "sometext";
// Create the key
var key = crypto.createSecretKey({guid:guid, encoding:encode.Encoding.UTF_8});
// Encrypt
var cipher = crypto.createCipher({algorithm: crypto.EncryptionAlg.AES, key: key});
cipher.update({input: inputString, inputEncoding: encode.Encoding.UTF_8});
var cipherout = cipher.final({outputEncoding: encode.Encoding.HEX});```
SECONDFILE.JS
// Decrypt
var decipher = crypto.createDecipher({algorithm: crypto.EncryptionAlg.AES, key: key, iv:cipherout.iv}); //HERE
decipher.update({input: cipherout.ciphertext, inputEncoding: encode.Encoding.HEX});
var decipherout = decipher.final({outputEncoding: encode.Encoding.UTF_8});```
【问题讨论】:
标签: netsuite suitescript suitescript2.0