问题标签 [rncryptor]

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.

0 投票
1 回答
439 浏览

javascript - SJCL 不连接位数组

我正在尝试使用使用 SJCL 的 RNCryptor-JS,但由于某种原因,SJCL 位数组连接似乎不起作用。

当我message在第一组完成后记录输出时,返回的只是andsjcl.bitArray.concat的第一个串联。最终的十六进制输出就是第一个串联和串联。这加强了我的怀疑,即它可能是 CryptoJS 的错,因为输出连接有效并且位于两个 sjcl 变量之间。versionivhmac

我尝试使用 SJCL 随机位数组,但遇到了一些麻烦。SJCL 的生成器 ,prng使用时不工作

或者

而且sjcl.random.randomWords似乎不再起作用了。

0 投票
2 回答
1216 浏览

java - 为什么 JNCryptor/RNCryptor 库会抛出 InvalidHMACException?

我想使用 AES256 对称加密我的 iPhone 应用程序和我的 Java 服务器套接字。我目前正在使用 Rob Napier 的 RNCryptor/JNCryptor 库。iPhone 上的加密似乎运行良好,因为我能够再次解密加密的字符串。但是,一旦我尝试解密 Java 服务器套接字上的字符串,就会引发以下异常:

以下是用于发送加密数据的相关客户端代码片段(iOS/Objective-C):

这是在其套接字(Linux/Java)上接收加密数据的相应服务器代码:

有人知道我做错了什么吗?在发送数据之前,我是否必须使用 Base64 或类似的编码?任何帮助高度赞赏。

编辑:这是解决方案。我现在不使用基于字符的输入流,而是直接使用套接字中的 InputStream 来读取原始字节以提供解密算法:

0 投票
2 回答
1093 浏览

javascript - SJCL CBC 模式不解密

使用使用 SJCL 的 RNCryptor。我正在尝试解密十六进制消息,但是在使用 CBC 模式时,事情变得很奇怪。显然,在使用 CBC 时必须声明一个当心声明,我得到一个错误。

在盐、密钥和哈希方面,一切都与 Python 端的加密相匹配。但我得到这个错误:

我认为该方法已被弃用,因此我尝试使用此 CryptoJS 方法:

这只是返回一个空白字符串。

我觉得我真的很接近,只是在最后一部分需要一些帮助,谢谢。

0 投票
1 回答
1086 浏览

javascript - “无效的 AES 块大小”SJCL 解密

尝试使用使用SJCL 的 RNCryptor-js解密 AES 。在记录每一端的所有步骤后,(另一端是RNCryptor-python)密钥、盐、HMAC 哈希,一切都匹配。但是当我到达最后一步时:

我得到错误:

这是完整的代码:

PBKDF2:

解密(采用十六进制输入):

decrypted在定义的倒数第二个语句上引发错误。

我查看了 sjcl 异常,看起来它正在寻找长度为 4 的输入,我猜它是一个 WordArray。我只是不知道如何获得有效的输入。就像我说的那样,密文、iv、hmac 标记、盐都在 javascript 端被正确分割。可能只是编码问题。

这个错误似乎也只发生在 json 上(格式:'{"key":"value"}'),当我尝试类似“Hello, world”之类的东西时,我得到了一个没有错误的 4 字数组。

有什么建议么?

0 投票
1 回答
5738 浏览

ios - 创建需要(依赖于)另一个框架的框架

我想在 Swift 中使用 Cocoa Touch Framework Project 创建一个框架。但是,我在另一个名为 RNCryptor 的框架之上构建了这个框架,它是基于 Objective-C 的。我看过各种关于如何在 Xcode 中创建框架的教程,但没有一个教程涵盖了具有自己依赖项的框架。

我尝试创建一个框架项目,然后使用 CocoaPods 来管理它的依赖项。但是,出现了错误:'Check Dependencies' Unable to run command...'

所以问题是:是否有可能在 Xcode 中的另一个框架之上创建一个框架。如果是这样,怎么办?

0 投票
2 回答
278 浏览

ios - kRNCryptorAES256Settings 引用错误

我正在尝试在我的应用程序中使用 RNCryptor 进行一些数据加密。

看下面的代码:

体系结构 i386 的未定义符号:
“_kRNCryptorAES256Settings”,引用自:ChatBubbleViewController.o ld 中的 __TFC8UtraceUI24ChatBubbleViewController21textFieldShouldReturnfS0_FCSo11UITextFieldSb:未找到体系结构 i386 的符号 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

我不确定为什么它会尝试查找带有下划线的常量名称;理想情况下,它应该尝试在 bridgesupport 和其他头文件中查找 kRNCryptorAES256Settings。

任何线索可能出了什么问题?

谢谢 !

0 投票
1 回答
366 浏览

swift - 我在使用 RNCryptor 库解密时遇到问题

解密时出现错误:无法执行操作 RNCryptorError 1 我不明白我做错了什么。这是我的代码块 在此处输入图像描述

0 投票
2 回答
4729 浏览

xcode - 代码签名 .framework 时出错

我使用 CocoaPods 安装了RNCryptor框架。这在我的应用程序上运行良好,并且在通过 xcode 手动归档应用程序时运行良好。

但是当我尝试使用带有命令的终端进行存档时:

我得到错误:

0 投票
2 回答
412 浏览

ios - 生成和保存加密和解密密码的策略

我正在使用RNEncryptorandRNDecryptor类进行加密和解密,如下所示:

第一次我必须在我的应用程序中加密数据时,我使用以下RNCryptor类生成密码:

我将此生成的密码保存在应用程序的钥匙串中,并将其用于所有后续加密和解密。

这是加密/解密的好策略还是任何人都可以看到其中的任何缺陷?我是否应该生成一个 AES 密钥并将其存储在钥匙串中并使用它而不是密码?

编辑:我根据 Rob Napier 的回答将上面生成密码的方式从使用NSProcessInfo类更改为使用类。RNCryptor除此之外,我仍然很想知道使用密码而不是 AES 密钥的一般策略是否正确和安全。

0 投票
1 回答
1586 浏览

xcode - RNCryptor:在 Swift 中解密 AES128CBC

如何使用 RNCryptor (AES128CBC) 解密 NSData?我已经尝试了解文档:https ://github.com/RNCryptor/RNCryptor-Spec/blob/master/draft-RNCryptor-Spec-v4.0.md

编辑:

我更改了链接到的代码片段@zaph。你可以看到上面的结果。

NSString(data: cryptData, encoding: NSUTF8StringEncoding)结果nil。问题是什么?