为了账号安全,请及时绑定邮箱和手机立即绑定

Javascript AES加密

Javascript AES加密

慕桂英4014372 2019-07-23 19:48:18
Javascript AES加密在Javascript中是否有可用于AES 256位加密的库?
查看完整描述

3 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

这是一个使用slowAES 的演示页面

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被认为是有害的。值得一读。


查看完整回答
反对 回复 2019-07-23
  • 3 回答
  • 0 关注
  • 2020 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号