我正在使用CryptoJS(AES)在客户端加密一些重要内容。我正在使用的代码如下:
function encrypt(value) {
var keyIV = 'Ei9sHWE25Jiol77Q';
return CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(value), CryptoJS.enc.Utf8.parse(keyIV),
{ keySize: 256 / 8,
iv: CryptoJS.enc.Utf8.parse(keyIV),
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
}).toString();
}
但正如您所见,任何人都可以看到用于加密的密钥。我如何制作这种关键的安全或非人类可读格式或任何其他技巧,以确保密钥是安全的?
答案 0 :(得分:1)
您需要提供有关您尝试做什么以及您的疑虑的详细信息。
例如:
在安全方面很少有绝对正确的答案。有不同的工具可用于不同的目的。
答案 1 :(得分:-2)
如果您只担心密钥,请使用非对称加密。您只需要在客户端存储公钥。
加密数据保存并且无法通过操作进行处理,您可以使用私钥在服务器端对其进行解密。