问题标签 [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 投票
2 回答
510 浏览

public-key-encryption - 获得了 GnuPG v1.4.5 公钥文件。是否有一个简单的虚拟证明工具可以加密 OSX 上的文件?

我之前几乎不得不处理 PGP 加密,我只记得它把我搞糊涂了。今天,一位客户向我们扔了一个曲线球,告诉我们必须先加密 CSV 文件,然后才能通过 FTP 传递它们。他们给我们发了一个公钥。不幸的是,我们将有相当不精通技术的人处理 CSV 文件并对其进行加密,上次我记得我必须做很多命令行,并在钥匙串或其他东西中进行初始设置。是否有一个简单的工具可以让 CSV 管理员设置他们的系统并使用一个不错的 GUI 工具来加密文件?还是我们必须进行疯狂的手动命令行设置?我从 CSV 管理器远程工作,所以我不容易先在我的系统上弄清楚,然后尝试在他们的系统上镜像我在此处所做的事情。

谢谢!

0 投票
2 回答
20099 浏览

php - 你如何使用 PHP OpenPGP 库?

gnupg PGP 库有一个PHP 扩展端口。但是,我很难找到解释如何使用该库的示例。

您如何正确地为应用程序用户创建密钥,然后使用 GnuPG 库使用它们来加密/解密文本?

0 投票
1 回答
300 浏览

go - OpenPGP Public Key Authentication in Go

I'm working on a Go peer-to-peer chat service to be used in Hyperboria, which operates as a meshnet. That is relatively unimportant compared to my problem:

I need to use OpenPGP keys existent in user's GPG keyrings in order to encrypt and decrypt messages. I need to be able to discover public and private keys, check that given key IDs are present, and use them to either encrypt or decrypt []byte, (either before or after it goes across a TCP connection)

Is there a package that I could look into to do this?

0 投票
2 回答
1536 浏览

shell - 用于解锁 PGP 文件的 Linux / Windows Shell 脚本

我有一系列从 FTP 服务器下载 PGP 文件的脚本。然后我使用 PGPKeys 使用私钥解压缩这些文件。然后,一个 SQL Server 作业会提取解压缩的文件,该作业会将数据附加到我们的数据库中。我想自动化整个过程。是否有使用 shell 脚本(Linux 或 Windows)解压缩 PGP 锁定文件的方法?

0 投票
1 回答
1424 浏览

.net - 修复 Gpg4Win PGP 加密二进制文件因使用 VB .NET 上传到 CoreFTP 服务器而损坏

这篇文章与之前关于使用 C# 将这些文件传输到 FTP 服务器时防止 PGP 二进制文件损坏的文章类似 (http://stackoverflow.com/questions/7353993/ftp-sharing-pgp-file-during-transfer -in-c-sharp),虽然我问的是不同的问题。

概括:

我已通过对所有 PGP 加密文件进行文本保护来修复 PGP 文件损坏的根源;但是,我有一堆 PGP 二进制文件,这些文件在实施此修复之前已加密并上传到我的 FTP 服务器。了解了用于将文件上传到 FTP 服务器的代码和用于管理 FTP 服务器的软件,是否可以修复损坏的 PGP 二进制文件以便可以解密和恢复它们?

详细信息:1)我有使用 Gpg4Win 加密的 PGP 加密文件,这些文件不是文本铠装(它们是二进制文件),这些文件是使用 VB .NET 代码(包括在下面)从 IIS 6.0 Web 服务器上传到 CoreFTP 服务器的。

2) 我没有这些文件的未加密副本。在上传到 CoreFTP 服务器之前,它们在网络服务器的内存中被加密。因此,我需要解密二进制 PGP 文件,否则文件中的数据将会丢失。

3) PGP 文件中的二进制文件已损坏,即使我有正确的 PGP 私钥,我也无法解密 Gpg4Win 中的文件。Gpg4Win 无法找到/读取加密二进制文件中的 PGP 数据。

4) 在上传到 CoreFTP 服务器之前,我能够成功解密更多最近的 PGP 加密文件,这些文件是文本保护的(二进制数据以 base64 表示法存储)。因此,解密问题很可能是由于文件损坏而不是 Gpg4Win 或我的 PGP 私钥/公钥对的任何问题。

5) 我尝试在 PGP 二进制文件上使用的几个二进制文件恢复程序说它们找不到文件数据并且无法修复二进制文件损坏。或者,它们不会对 PGP 二进制文件中包含的二进制数据进行任何更改。

用于上传 PGP 二进制文件的 VB .net 代码:

对于我的 FTP 服务器,我使用的是适用于 Windows 的最新版本的 CoreFTP。

响应 FTP LIST 命令时,CoreFTP 以 Unix 格式(而不是 MS-DOS 格式)返回文件信息,所以我想知道二进制损坏是否是从使用 MS 的 Windows 服务器传输二进制文件的结果-DOS 格式化二进制文件到使用 Unix 格式的 FTP 服务器。但是,我在打开/读取从我的网络服务器上传到 CoreFTP 服务器的非 PGP 二进制文件时没有遇到任何问题。

谢谢!艾萨克

0 投票
2 回答
576 浏览

bouncycastle - 使用 Bouncy Castle API 撤销 pgp 密钥

我想使用 Bouncy Castle API 撤销我的 PGP 公钥。我已生成吊销证书。但我无法找到使用撤销证书撤销公钥的方法。我将如何实现它?

我在 PGPPublickey.java 类中找到了 addCertification 方法,但它是用于添加证书而不是用于添加吊销证书。

我尝试了这种方法,但它实际上将任何吊销证书添加到公钥中,并且该密钥也被吊销。但是,公钥应仅添加从相应私钥生成的吊销证书。

0 投票
1 回答
4926 浏览

c# - C# 如何使用 openPGP 密钥简单地加密字符串

我有 OpenPGP pgpkey,并且pgpid在 C# 中如何使用 Bouncy Castle 库简单地加密字符串?

接收者的公钥(base64 中的 MPI): BADelitpUqMZLn+bryZR5rK9J3eu+pRVFP5tpboOlIwO2vqO/rCi8VvT2TPzEJarWhyZ465NIohYCiia9vaGUEp4rsDzFnVNgpON47yPew1zCmOOofituf+X6Qlaxylm5NnO4vnRcmoF4IbGwSCqyGgGor29D75Hovwlj1q6BWHYWwAGKQ==

公钥的密钥类型:RSA

公钥的密钥 ID(8 字节,十六进制):02044b001cd7a551

0 投票
1 回答
870 浏览

cryptography - pgpdump 输出分析

我已经使用pgpdump了一个加密文件(通过 BouncyCastle)来获取有关它的更多信息,并找到了几行关于部分开始、部分继续和部分结束的信息。所以我想知道这到底是在描述什么。它是纯文本的某种碎片吗?

此外,在 RSA 算法之后,位计数代表什么?在这种情况下,它是 1022 位,但我见过 1023 和 1024 位的文件。

转储输出

0 投票
1 回答
900 浏览

bouncycastle - 如何使用 Bouncy Castle 库从 PGPPublicKey 获取签名列表?

我有一个 PGPPublicKey 对象。我想使用 Bouncy Castle API 获取与其关联的所有签名(带有用户 ID、电子邮件 ID、每个签名的信任级别)的列表。我试过但无法得到它。如果有人有示例链接或知道使用哪种方法获取它,请告诉我。

0 投票
1 回答
518 浏览

bouncycastle - OpenPGP 签名是否包含签名者的用户 ID?

我有一个签名的公钥。我想查看这个 OpenPGP 公钥中的所有签名。

我有签名列表,当我尝试获取签名者的用户 ID 时,没有返回任何内容。

所以我怀疑 OpenPGP 签名是否包含签名者的用户 ID。

我使用 Thunderbird 查看签名,但它也显示未找到用于签名的用户 ID,当我导入与我签名的私钥对应的公钥时,它显示签名者的用户 ID。

我的结论是 OpenPGP 签名不包含签名者的用户 ID。它们仅包含密钥 ID。如果您也有签名者的公钥,那么它会尝试从该公钥中获取用户 ID 并显示给您。

注意:我使用的是充气城堡 API。