3 回答
TA贡献1946条经验 获得超4个赞
slowAES很容易使用。逻辑设计。合理的OO包装。支持IV和加密模式等旋钮和控制杆。与.NET / C#的良好兼容性。这个名字是诙谐的; 它被称为“ 慢速 AES”,因为它没有在C ++中实现。但在我的测试中,这并非不切实际。
它缺乏ECB模式。我猜也是缺少点击率模式,虽然你可以很容易地建立一个ECB模式。
它完全专注于加密。,做了很好的互补类RFC2898兼容的基于口令的密钥导出,在Javascript中,是可以从Anandam。这对库适用于类似的.NET类。良好的互操作性。但是,与SlowAES相比,Javascript PBKDF2 在生成密钥时明显慢于Rfc2898DeriveBytes类。
技术上有很好的互操作并不奇怪,但对我来说关键点是SlowAES采用的模型很熟悉且易于使用。我发现AES的其他一些Javascript库难以理解和使用。例如,在其中一些我找不到设置IV或模式的地方(CBC,ECB等)。事情并非我所期望的那样。SlowAES不是那样的。这些房产正好在我预期的地方。熟悉Java和.NET加密编程模型后,我很容易接受。
Anandam的PBKDF2并没有达到那个水平。它只支持对DeriveBytes函数的单次调用,因此如果您需要从密码派生密钥和IV,则此库将无法正常工作。一些轻微的修改,它正在为此目的正常工作。
编辑:我把一个将SlowAES和Anandam的PBKDF2的修改版本打包成Windows脚本组件的例子。将此AES与密码派生密钥一起使用可显示与.NET RijndaelManaged类的良好互操作性。
EDIT2:演示页面显示如何从网页使用此AES加密。使用.NET支持的相同输入(iv,密钥,模式等)可以提供与.NET Rijndael类的良好互操作。您可以执行“查看源”以获取该页面的javascript。
EDIT3
后期添加:Javascript Cryptography被认为是有害的。值得一读。
添加回答
举报
