问题标签 [sjcl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - Ruby 中的 SJCL AES-128-CCM 解密
我正在尝试在 Ruby 中实现 aes-128-ccm 加密字符串的 SJCL 解密。在阅读了一个类似的问题后,我发现更新版本的 OpenSSL 库应该支持这一点,所以我已经将开发版本从 github 安装到 /opt
执行此操作后,当我运行 /opt/bin/openssl 密码时,我在列表中看不到 aes-128-ccm 密码:
但是如果我运行 /opt/bin/openssl enc -help 2>&1 我会看到“-aes-128-ccm”:
我使用以下命令重新安装了 ruby 2.0.0p0 和 rvm:(rvm reinstall 2.0.0 --with-openssl-dir=/opt
在上述文章中给出)。然后跑了cipher = OpenSSL::Cipher.new('aes-128-ccm')
。返回以下错误:
我的问题是如何在 Ruby 中添加对 AES-128-CCM 的支持/我在这里做错了什么?
javascript - 好的斯坦福 Javascript 加密库 (SJCL) 示例?(JS密码学)
我正在寻找一种在 Javascript 中进行客户端加密的方法(牢记http://www.matasano.com/articles/javascript-cryptography/)并找到了 SJCL。但我似乎无法为它找到好的代码示例。任何指针?
javascript - RNCryptor IOS + Javascript加密/解密AES 256
我是加密新手,我正在尝试通过 websockets 将一些对称加密使用 AES256 从移动应用程序传输到网页。
I 使用 RNCryptor 默认设置加密数据
IOS代码
这是通过 websocket 输出的输出 AgEBnXPPvAkJb7YVapwCVNd5SQw4JwqU7BfLsEXNZyKy9SazfJT8w16Y/hYY7aKxuz3Kuy2tAXXX/cHCc3PMhvG+fzSfrslRVMKvD6L+oWvXLg==
JAVASCRIPT 代码 - 我收到消息并尝试解析并显示它
由于某种原因,代码在生成密钥时卡住了(可能 10k 次迭代对于 CryptoJS 来说太多了???这就是 IOS 上使用的迭代)
我已经尝试了很多不同的东西,输出是垃圾,我实际上并没有解密消息。任何帮助将不胜感激。如果您要推荐 SJCL,请提供一些代码。RNCryptor 使用自己的消息格式。我使用它是因为它提供了随机静脉注射。如果您也知道任何图书馆,请推荐一个不同的图书馆。
谢谢阅读。
javascript - SJCL 加密结果错误的文件大小
我已经在我的一个应用程序中成功实现了 Rob Napier 的 iOS AES 加密方法。我现在希望能够使用我的 JavaScript 实现加密和解密该应用程序中的文件。我正在使用 FileReader 从用户那里获取本地信息并加载它
完成此操作后,文件将使用斯坦福 JavaScript 加密库进行加密,最后可以下载加密文件:
问题是加密文件比原始文件大得多。在我的 iOS 实现中情况并非如此,它工作得很好。当然,它不能毫无错误地解密。事实上,生成的文件将有 0 个字节的大小。
我希望有人可以向我指出我的代码中的错误。那真的很棒。
@邓肯:
谢谢你。我对此进行了调查,但我不确定我必须采取的所有步骤。尤其是它们在代码中的含义。也许有人可以在这里帮助我。非常感谢!
加密
- 生成随机加密盐
- 使用 PBKDF2 生成加密密钥(请参阅您的语言文档了解如何调用它)。将密码作为字符串、随机加密盐和 10,000 次迭代传递。
- 生成随机 HMAC 盐
- 使用 PBKDF2 生成 HMAC 密钥(请参阅您的语言文档了解如何调用它)。将密码作为字符串、随机 HMAC 盐和 10,000 次迭代传递。
- 生成随机 IV
- 使用加密密钥(上图)、IV(上图)、AES-256 和 CBC 模式加密数据。这是几乎所有 AES 加密库的默认模式。
- 将您的标头和密文以及 HMAC 密钥(上图)和 PRF“SHA-256”(有关 PRF 函数的名称,请参阅您的库的文档;这也可能称为“SHA- 2, 256 位”)。
- 按照上面给出的格式将这些元素放在一起。
javascript - 从数据库中读取 SJCL 内容是否需要为 json_encode(d)?
概述
我正在尝试加密数据,将其发送到数据库,然后使用斯坦福 Javascript 加密库 (SJCL) 解密数据。
问题
每当我尝试从数据库中调用数据时,都会收到“CORRUPT: ccm: tag doesn't match”错误。我查了一下,似乎我的内容或密码已损坏,并且由于密码直接来自文本框,因此我已将其范围缩小到内容。
代码片段
(PHP)
(Javascript)-调用 SJCL-
任何和所有的帮助表示赞赏,在此先感谢!
javascript - 如何使用 SJCL 解密 AES
我想通过给定的密码和使用斯坦福 Javascript 加密库 (SJCL) 的密钥来解密 AES,但我无法传递密钥:
这行不通。参考文档,键必须是“4、6 或 8 个单词的数组”。
怎么可能做到这一点?
javascript - 如何使用 256 位密钥在 SJCL 中解密
我是 SJCL 加密库的新手,我正在执行以下操作以使用 256 位密钥加密纯文本
但我无法解密相同的密码,我想知道如何解密这个密码。
javascript - 如何在 SJCL 中实现公钥/私钥加密?
我使用斯坦福 Javascript 加密库 (SJCL)进行对称 AES 加密(基于他们演示页面上的示例)。但是,我还有一个额外的要求是生成一个密钥对,用公钥加密数据,用私钥解密数据。一些类名表明这在 SJCL 中可能是可能的,但我想知道是否有人可以提供一个示例来说明它是如何完成的。在这个阶段我不关心私钥存储,只关心内存中的生成和公钥/私钥对的使用。
如果不可能,我会对涵盖 AES 和公钥密码学的替代库的建议感兴趣 - 但我知道这是我可以自己研究的东西!所以主要是我很想知道我开始使用的库是否可以满足我的所有需求,或者我是否需要寻找替代方案。
javascript - Javascript 加密 SJCL GCM 没有解密我加密的内容
我目前正在尝试使用 SJCL,但在加密/解密方面遇到了问题。由于缺乏好的例子,我想出了你在下面看到的,但它不起作用。谁能指出我做错了什么?提前致谢。