问题标签 [cryptlib]
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.
ios - 为什么 decrytedText 为 NULL?
我的应用从 GET 请求中接收加密数据。我在解密数据时遇到问题。我正在使用跨平台的 CryptLib 库CryptLib。遵循 CryptLib.m 中的文档,但似乎没有任何效果。如果有人对 CryptLib 有所了解,将不胜感激,请在下面查看我的代码。
代码
c - 如何使用 cryptlib 实现自定义 I/O 代码?
我正在使用 Peter Gutmann 的 cryptlib 来实现 TLS 加密。
cryptPopData
通常,cryptlib 的功能cryptPushData
将处理特定于协议的握手、加密或解密数据,以及读取或写入由 cryptlib 内部管理的网络套接字。这行得通,但现在我需要自己实现 I/O(并且 I/O API 与套接字不兼容)。
需要发生的事情大致是这样的(1):
根据cryptlib 手册p 中的“管理您自己的网络连接和 I/O”一章。127,这个确切的场景应该是可能的,但我不明白。
如果您想使用系统提供的任何高性能 I/O 功能,也可以使用此工具,例如异步 I/O 或硬件加速 I/O,其中专用子系统管理所有网络传输并发布完成转移完成后通知您的应用程序。这允许您使用自己的连接管理/套接字多路复用/读写代码,而不是使用 cryptlib 提供的工具。
以下讨论涉及网络套接字,因为这是用于网络 I/O 的最常见抽象,但是 cryptlib 可以使用任何可以由整数值或句柄表示的网络 I/O 标识符。如果您的网络抽象需要的不仅仅是一个简单的句柄,您可以将引用或索引传递给您的系统处理网络 I/O 所需的任何数据结构的数组。
解释性文本指出,应用程序可以使用它来实现 I/O 本身,而不是让 cryptlib 执行 I/O,这正是我所需要的。它还提到,即使编程示例涉及套接字,该原理也可以应用于其他类型的 I/O。
但是,提供的所有编程示例都归结为:
我不明白应用程序代码接收到的加密 RxData 如何对 cryptlib 可见,以便它可以由 cryptlib 处理(如果适用,还可以解密)。如果没有这一步,cryptPopData
如果我从不告诉它我从远程设备收到了什么,应该如何给我解密数据?
TxData 也是如此——我没有看到任何 cryptlib API 可以为我提供它希望通过网络发送的传出加密(1)数据。
我本来期望两个应用程序提供的 I/O 回调(一个用于读取,一个用于写入),或者一个辅助推送/弹出接口,它将传出的网络数据弹出 cryptlib,并将传入的网络数据推送到 cryptlib。
(1) 我意识到它会更加细微 - 它也可能是初始 TLS 握手的数据 - 在这种情况下,cryptlib 将要求我在没有提供未加密的 TxData 的情况下发送数据,并且它会要求我接收数据没有我真正从中获得解密的 RxData 有效负载。
reactjs - env-cmd 中不允许使用美元符号
我想问一下环境变量中的美元符号有什么问题?我试图尽一切努力解决我在使用来自 npm 的 env-cmd 包和 react 时遇到的问题
样本
经过几个小时的调试,直到我注意到它从示例环境变量REACT_SECRET_CODE中删除了$符号,然后控制台日志中显示的变量不是&FG%@(*4Fgawq@)
$B&FG%@(*4Fgawq@)