问题标签 [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.
javascript - 如何使用 sjcl 生成对称密钥
是否可以使用 sjcl 生成对称密钥?我想返回对称密钥,而不仅仅是调用sjcl.encrypt()
函数。如果可能,请提供代码示例。
php - 使用 PHP AES CCM 模式解密的意外结果
我正在尝试使用 AES-256-CCM 重现加密操作,该操作当前在 Java 中使用 Bouncy Castle 提供程序执行。当使用 openssl 在 PHP 中尝试相同的操作时,我找不到一组产生相同输出的参数。
由于 AEAD 模式最近被添加到 PHP (7.1) 中,因此有关其工作原理的文档很少。
Java中“工作”加密的最小示例如下所示:
当我尝试使用不同的两种不同的库和语言重新生成它时,我已将 key 和 iv 设置为已知值。
当尝试使用 PHP 和 openssl 重新生成它时,我正在尝试使用以下代码
显然结果不匹配。为了寻找不正确的答案,我在 javascript 中使用 SJCL 创建了相同的操作。示例是:
Bouncy Castle 和 SJCL 库产生相同的输出,但我不知道有什么不同。
我已经尝试使用 PBKDF2 预处理密钥,如Encrypt in Javascript with SJCL 中的建议,并在 PHP中解密但没有成功。我试过 SHA256'ing 没有成功。
为什么 php/openssl 中的输出与 Bouncy Castle 和 SJCL 不同?
javascript - 使用 ElGamal 签名或使用私钥加密
我正在使用 SJCL js 库:如何使用 elGamal 算法来证明用户拥有基于公钥的私钥?我还使用了 ECCDH 部分,所以我不能只使用 ECDSA。
我希望每个人都能够通过使用他/她的公钥解密消息来验证拥有该私钥的用户是否确实编写了该消息,并确实提出了请求。
请求消息 -> 使用私钥加密 -> 发送 -> 每个人都可以使用他的公钥解密消息,证明他确实提出了请求
我对密码学很陌生,我了解到在非对称中您可以使用私钥来加密文件,但我似乎在 SJCL 上找不到这个工具。
我在下面附上了我尝试的屏幕截图,请让我知道我做错了什么。谢谢] 1
java - 与 sjcl 兼容的 java 解密抛出错误 - CCM 中的 mac 检查失败
我正在尝试在 java 上解密从客户端收到的加密消息,该消息使用 sjcl 进行加密我使用带默认参数的 sjcl
这是我到目前为止所拥有的
通过调用此方法,我得到了下一个异常
任何人都可以帮助我吗?
encryption - 用 sjcl.js 进行 aes gcm 解密的正确方法是什么?
我正在尝试在 aes 算法(gcm 模式)中使用 sjcl.js 加密库解密密码内容。这是我的代码:
key
并且cipherText
已经在 python (aes-gcm, 128bitkey) 中加密。有人知道如何解密吗?有没有 sjcl.js 的替代品和文档?谢谢!
注意:我已经使用 NodeJS Crypto lib 对其进行了解密,但 Crypto lib 与浏览器不兼容。浏览它会产生一个繁重的脚本,所以我正在寻找与浏览器兼容的轻量级 javascript lib。这是我使用 NodeJs 的代码:
javascript - 如何使用 sjcl.hash.sha256.hash 对文件内容执行 sha256 哈希?
我正在尝试使用 javascript 对文件内容执行 SHA256 哈希。
我使用以下函数获取文件
哈希函数是
但是当我选择一个二进制文件时它会产生错误的哈希数据
我只能使用文本文件生成实际哈希并更改fileReader.readAsArrayBuffer(this.files[0]); -------> fileReader.readAsText(this.files[0]);
有人可以帮我解决问题吗
angular - 在 Angular 7 中使用 SJCL 时无法解析 './node_modules/sjcl' 中的 'crypto'
我想在客户端加密数据,所以我找到了 SJCL npm。
浏览了他们的文档。但是,SJCL 贡献者提供的文档较少,无法在 Angular 中实现
我尝试了以下方法。
我安装了包
npm install --save sjcl
之后我也尝试安装类型定义
npm install --save sjcl @types/sjcl
这是我的 package.json
我也这样做了
在我的一个组件中。
此外,我已经通过这个链接 Using SJCL library in Angular2
当我运行角度应用程序时,我得到
可能是我的笔记不是那么完美,或者我定义错误。如何在没有此警告的情况下使用 SJCL 加密数据?
javascript - 将纯 Nativescript 5.x 项目迁移到 Nativescript 6 - JS ERROR NOT READY: generator is not seeded
将纯 Nativescript 5.x 项目迁移到 Nativescript 6 使用 nativescript-nodeify (0.8.0) 、 sjcl (1.0.8) 和 uuid (3.3.3)
在 ios 或 android 上执行时,sjcl.random.randomWords(PBKDF2_SALT_SIZE) 是抛出错误 - JS 错误未准备好:生成器未播种
尝试了不同的方法在 webpack 中配置加密。仍然无法解决此错误!在这方面的任何帮助将不胜感激!!!
android - 如何在 Android 中使用 elGamal 加密密钥?
我在 node.js 上使用 SJCL.js 创建了以下密钥对
我知道我也需要在 Android 中以某种方式使用 elGamal。我想实现一个聊天功能,每个要发送的文本聊天都将使用接收者的公钥进行加密。
如何使用这些 elGamal 公钥在 Android 中执行加密(以及分别解密的私钥)?到目前为止,我刚刚找到了对 RSA 密钥的支持。
kotlin - 如何反序列化 Android 中的公共/私有 P-384 密钥?
我使用 P-384 曲线在 node.js 中使用 sjcl.js 创建了一个公钥/私钥集。它是这样构造的:
在 Javascript 中,这可用于加密字符串“hello world”,如下所示:
这导致具有相关参数的加密对象:
同样,在 Javascript 中,可以像这样对密钥进行反序列化:在 javascript 中,可以像这样对密钥进行反序列化
并像这样用来解密
直到这里,一切都很好。但是,我现在需要能够使用 Kotlin 在 Android 中执行相同的操作。
有以下错误:
Caused by: java.lang.IllegalArgumentException: Key length not 128/192/256 bits.
如何在 Android 中正确反序列化此密钥并使其正常工作?