我想使用Closure-Library使用AES对数据进行编码。
在研究图书馆时,我发现了这个aes-test:https://github.com/google/closure-library/blob/master/closure/goog/crypt/aes_test.js和the implementation并发出以下警告:
警告:这只是ECB模式。如果你正在加密某些东西 超过16个字节,或使用相同的密钥加密多个值 (所以基本上,总是)你需要使用块密码模式 操作。见goog.crypt.Cbc。
我想知道如何使用这个库用AES算法编码更大的块。
我想使用IV,就像这个CryptoJS示例那样:
var encoded = CryptoJS.AES.decrypt(DATA, KEY, IV);
我也可以使用端到端库(https://code.google.com/p/end-to-end/source/browse/javascript/crypto/e2e#e2e%2Fsymmetric)的部分,它也提供了aes加密。但是,我不知道如何使用此实现。
答案 0 :(得分:1)
您指定的CryptoJS解密呼叫以及crypt.Cbc中的代码都使用CBC操作模式。不应使用ECB模式。如果你遇到问题,请尝试并实施CBC并提出具体的新问题。