问题标签 [openpgp]

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 投票
5 回答
7678 浏览

java - 对 Java + OpenPGP 的推荐?

我想开发一个小型 OpenPGP 客户端,并且正在为 OpenPGP 搜索 Java 库。

这种方法是否有任何(开源)建议?

Cryptix.org似乎不再活跃了......

0 投票
1 回答
836 浏览

php - 使用 RFC 1847 加密和签名的 MIME 消息

我需要一个用于网络传输的客户端-服务器加密解决方案(即签名和加密的客户端,以及验证和解密的服务器端)。

我正在使用 HTTP,但由于共享主机限制(我的服务器是共享主机环境),SSL 不可用。寻找替代解决方案,我决定使用GnuPG的 OpenPGP 。原因之一是 PHP 通过各种 PEAR 和 PECL 模块支持它(PHP 是我打算用于我的客户端脚本和服务器脚本的语言,尽管 Perl 作为最后的手段也是可用的)。

我现在正试图决定传输数据的最佳方式。我遇到过RFC 1847,它定义了加密和签名的多部分 MIME 消息。该协议在RFC 3156中专门针对 PGP 进行了扩展。(我认为这些协议与 S/MIME 加密电子邮件协议有关)。

我的问题是:是否有任何理由遵循这些标准?就协议而言,它们看起来像是明智的解决方案,但是否有任何客户端实际使用该协议?例如,如果我向 Apache Web 服务器发出多部分/加密请求,是否有任何简单的方法来检索数据?我使用 PHP 脚本进行的测试使我认为 PHP 试图破译这样的请求是没有用的($_POST 数据似乎来自 'multipart/form-data' MIME 类型数据)。

由于我的主机允许我打开套接字,因此可以使用 PHP 的套接字编程 API 编写一个 PHP 脚本来充当一个接受“多部分/加密”和“多部分/签名”HTTP 请求的服务器,但是这个似乎有点矫枉过正。

有什么建议么?

有关我的问题的更多信息,请参阅此问题

0 投票
1 回答
1208 浏览

.net - 是否有任何适用于 .NET 的非 GPL 开源 PGP 库

我正在寻找用于加密和解密 PGP 文件的免费开源 API。我想在闭源产品和开源产品中使用它,所以它必须是 GPL 以外的许可证。

0 投票
1 回答
613 浏览

pgp - PGP - GnuPG - 几个问题

我想使用 GnuPG ( http://www.gnupg.org/ ),它是完全替代 PGP 的开源软件。

该软件看起来很棒,虽然我以前从未使用过它。

我将使用该软件加密文件以通过网络传输,我不使用该软件来发送电子邮件。

我有几个问题:

  1. Windows 和 Ubuntu 有哪些推荐的 GUI?

  2. 我想生成一个密钥对,它是 Diffee Hellman (DH/DSS) 而不是 RSA。执行此操作的行命令是什么?以及使用 2048 的密钥长度。

  3. 一旦我生成了我的公钥-私钥对,我如何通过命令行签署别人的公钥?

0 投票
1 回答
239 浏览

cryptography - OpenPGP 签名

我正在阅读 RFC4880 以尝试使用http://phpseclib.sourceforge.net/生成 OpenPGP 子集(RSA 签名)的实现。我已解析出公钥和压缩文字签名数据包。我可以提取 n 和 e 并将它们提供给 Crypt_RSA 以构造一个验证器。我告诉它我正在使用 sha256。然后它需要一个“消息”和一个“签名”参数。我从签名包中获取签名数据没问题。我的问题是:什么是“信息”?根据第 5.2.4 节,它是文字数据包(s?)(它们的主体还是整个包?)和“散列”子包的某种组合。我是否只是按照它们出现的顺序将所有数据包和散列数据包连接在一起?

0 投票
1 回答
227 浏览

public-key - 读取 PGP 密钥信息

如果只有描述而不是实际信息,有人可以显示对 pgp 外观信息的描述吗?类似的东西(我不记得这些值是否正确)

数据包类型[4 位],字节总长度[16 位],数据包版本类型[4 位],创建时间[32 位],加密算法[8 位],...等

我试图理解 rfc4880,但它乏味且令人困惑。到目前为止,我想我已经提取了我上面写的 4,但我似乎无法得到其余的信息。

谁能帮忙?我知道我可以找到一些 pgp 程序,但这样做的重点是让我首先了解这些程序是如何工作的

0 投票
2 回答
2516 浏览

objective-c - OpenPGP 库

是否有创建 OpenPGP 密钥或使用 OpenPGP 加密文件的库?

0 投票
1 回答
1426 浏览

security - 寻找解释 PGP 签名和加密文件内部结构的模型

我正在尝试使用 BouncyCastle 调试和扩展现有的一段 Java 代码来解密和验证安全附件。

我查看了 BouncyCastle 样本,但更难从中提取的是 PGP 保护附件的模型。从代码和各种错误中我可以推断出有一个 PGPMarker 表示的东西,然后你可以找到一个 PGPCompressedData 里面有一个 PGPOnePassSignatureList 等等。这并没有阐明诸如何时期望一个与另一个以及在单独执行签名和加密时是否存在一次性签名等问题(这些是我遇到的示例,但不是问题的主题)。BC 的 javadoc 并没有解释太多(例如,PGPOnePassSignature是“一次通过签名对象”)。

通过反复试验对模型进行逆向工程非常耗时,而且由于我还没有成功地在谷歌上搜索到一个很好的资源,我希望也许其他人知道。

提前致谢。

0 投票
1 回答
297 浏览

c# - 如何替换 Linq Cast 表达式?

问题:我有一些用于 pgp 加密的代码:http: //blogs.microsoft.co.il/blogs/kim/archive/2009/01/23/pgp-zip-encrypted-files-with-c.aspx

它具有以下方法,使用一些 LINQ。我仍在使用 .NET 2.0 并且无法切换更高版本,但是...

如何用普通代码替换这个表达式?我不太了解 Linq,我猜它会进行一些排序?

0 投票
2 回答
3168 浏览

encryption - PGP 加密文件或文本?

我有一个需要加密的 csv 文件。我想问一下加密内容和加密文件有什么区别吗?或者他们是一样的?因为我们的客户没有明确说明他们想要什么?

谢谢,