GNU Privacy Guard(GnuPG / GPG)是一个实现秘密密钥加密和公钥加密的加密套件。 GnuPG是GNU项目完整且免费实现RFC4880定义的OpenPGP标准。使用此标记可以编程使用GPG工具或其库。有关直接使用GPG工具或其图形下载的问题属于超级用户。
我仍在使用 GPG,如这篇文章中所示:How do I encrypt plaintext with GnuPG? 我现在需要的是能够列出加密消息的各种信息(例如所有收件人),而无需...
请注意:尽管我在这里提到了 Azure Databricks,但我相信这本质上是一个 Python/GNUPG 问题,因此任何具有 Python/GNUPG 加密经验的人都可以回答。 我有...
生成 PGP 密钥对时,您可以选择公钥算法: $ gpg --expert --full-gen-key gpg (GnuPG) 2.2.19;版权所有 (C) 2019 自由软件基金会, Inc. 请选择哪类...
我需要对文件流进行 ZIP 和 GPG 加密。 然后通过SFTP上传。 我正在使用 Zip Archive 来创建条目。 我正在使用 GPG 进行加密,starksoft.aspen Nuget。 在这里获取本地文件流和
我知道如何使用 gpg verify,如下所示: $ gpg --验证 somefile.sig gpg:使用 RSA 密钥 ID E1B768A0 于 2013 年 7 月 23 日星期二 13:20:02 BST 进行签名 gpg:来自“Richard W.M. Jones 的好签名” 我知道如何使用 gpg 验证,如下所示: $ gpg --verify somefile.sig gpg: Signature made Tue 23 Jul 2013 13:20:02 BST using RSA key ID E1B768A0 gpg: Good signature from "Richard W.M. Jones <[email protected]>" gpg: aka "Richard W.M. Jones <[email protected]>" gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: F777 4FB1 AD07 4A7E 8C87 67EA 9173 8F73 E1B7 68A0 但我真正想做的是根据特定的公钥文件验证该文件。 其动机是作为从网站下载大文件的程序的一部分,并且需要在使用它们之前验证它们没有被篡改。该网站将包含文件和签名。该程序将附带 GPG 公钥。当我将文件上传到网站时,我将使用相应的私钥(显然未分发)对它们进行签名。看起来该程序应该能够执行以下操作: gpg --no-default-keyring --verify file.sig \ --is-signed-with /usr/share/program/goodkey.asc 但是gpg没有这样的选择。看起来唯一的方法是解析 gpg 命令的打印输出,这看起来非常不安全(它包含由攻击者控制的文本)。 编辑:我不知道这里回答自己的问题的礼仪是什么,但我找到的答案是使用 --status-fd 标志。该标志生成很好的可解析输出,我可以检查所需的指纹: gpg --status-fd <N> --verify file.sig 在 fd N 上产生: [GNUPG:] SIG_ID rpG8ATxU8yZr9SHL+VC/WQbV9ac 2013-07-23 1374582002 [GNUPG:] GOODSIG 91738F73E1B768A0 Richard W.M. Jones <[email protected]> [GNUPG:] VALIDSIG F7774FB1AD074A7E8C8767EA91738F73E1B768A0 2013-07-23 1374582002 0 4 0 1 2 00 F7774FB1AD074A7E8C8767EA91738F73E1B768A0 [GNUPG:] TRUST_UNDEFINED 这就是 Perl 的 GnuPG 库的工作原理。 使用特定公钥文件(如密钥环)的唯一方法是该文件采用 GPG (OpenPGP) 文件格式而不是 ASCII 装甲版本(例如 pubkey.gpg 而不是 pubkey.asc)。 因此这将验证文件: gpg --no-default-keyring --keyring /path/to/pubkey.gpg --verify /path/to/file.txt.gpg 这不会: gpg --no-default-keyring --keyring /path/to/pubkey.asc --verify /path/to/file.txt.gpg 编辑:对于超级用户网站上的类似问题,我对此进行了更详细的介绍: https://superuser.com/questions/639853/gpg-verifying-signatures-without-creating-trust-chain/650359#650359 我想出了以下脚本: #!/bin/bash set -e keyfile=$(mktemp --suffix=.gpg) function cleanup { rm "$keyfile" } trap cleanup EXIT gpg2 --yes -o "$keyfile" --dearmor "$1" gpg2 --status-fd 1 --no-default-keyring --keyring "$keyfile" --trust-model always --verify "$2" 2>/dev/null 用作: $ check-sig.sh <ascii-armored-keyfile> <signature-document> 如果您已在 /usr/share/program/goodkey.asc 准备好密钥 先导入gpg --import /usr/share/program/goodkey.asc 然后执行验证命令gpg --verify somefile.sig somefile
我正在尝试在 Erlang 中做一些与公钥相关的事情,它们要求我跟踪公钥。根据此页面,我应该能够使用 file:read_file/1 和
我无法在 Erlang 中“pem_entry_decode”GPG 公钥。通过 OpenSSL 生成的公钥工作正常。我已经按照 Erlang - 导入 GPG 公钥中的建议修复了 GPG 密钥。 #!/usr/local/bin/e...
我无法提交 git 。每次我尝试时都会显示此消息。 错误:无法加载公钥 632EA751459C3A1A:没有这样的文件或目录? 致命:写入提交对象失败 我正在使用 Gpg4Win。
我有一个 Python 中的 Azure 函数,我正在尝试使用 python-gnupg 包装器在进行本地开发时调用 GnuPG 二进制文件。 这是我在 Azure Func 中尝试的代码...
我正在运行一个自托管的 Renovate 实例,我需要使用 GPG 密钥签署对 GitLab 的提交。 为此,我使用我的
错误:需要 str、bytes 或 os.PathLike 对象,而不是 StorageStreamDownloader - 在 python 中使用 pgp 解密 blob 文件
我正在尝试从azure blob存储中读取csv文件(加密)并使用gnupg对其进行解密并在python中读取它。我能够访问 blob 文件,但是当我将其传递给 dcrypt 函数时,它会抛出...
我想开始在 Codium 上使用 GPG 密钥签署我的提交(也在 Code - OSS 上尝试过,但我得到了同样的错误)。 这是我面临的错误: 错误:gpg 未能对数据进行签名 致命:未能...
当我通过诗歌 shell 激活虚拟环境时,GPG 签名会变得混乱,因为 $GPG_TTY 是为父 shell 设置的。所以每次我使用诗歌 shell 时我都必须执行 GPG_TTY=$(tty) 。难道是……
如果我在 GitHub 上更改我的 GPG 密钥,我之前的提交是否会显示为未验证?
假设我执行以下操作: 创建新的 GPG 签名密钥 将其添加到 GitHub 从 GitHub 删除旧密钥 我之前的提交仍会显示为已验证吗?
如何在 WSL2 中使用 GPG 密钥和 Yubikey 来验证 GIT?
我正在尝试在 WSL2(Ubuntu 发行版)中设置 Yubikey 以使用 GPG 密钥作为 SSH 密钥来对 GIT 服务器进行身份验证。下面是我的设置 YubiKey Manager(ykman)版本:5.1.1 它是如何安装的?:使用...
在 Windows 上使用 GPG4Win 代替 Git 的内部 GPG
当我在 git 中运行 gpg --list-secret-keys --keyid-format LONG 时,我根本没有显示任何密钥。另一方面,当我在 cmd 或 PowerShell 中运行相同的命令时,我得到的输出看起来像......
gpg:找不到 keyblock 资源 pubring.kbx,因为存储库路径以 gnupg home 为前缀
我曾经让 gpg 签署我的提交,一切正常,但我突然收到了这条消息: gpg: keyblock 资源 '/c/Users/username/path/to/project/C:\Users\username\.gnupg/pubring.k...
我正在尝试将我的 GPG 私钥存储在 Jenkins 中,以便我可以使用它来签署 rpm 包和存储库。这工作正常,但我无法混淆密钥以使其不显示...
gpg 上的非零 [错误] 代码:密钥服务器接收失败:无法分配请求的地址
我收到有关使用 Python 3.7.7 构建 Debian:stretch-slim Docker 映像的消息: gpg:密钥服务器接收失败:无法分配请求的地址 命令“/bin/sh -c set -ex [...]” [...]
导出 ASCII 防护的 GPG 密钥,删除密码,同时保留密钥环上的密码保护
我想在我的笔记本电脑上的个人密钥环中保留受 GPG 密钥密码保护的密钥,同时也将其导出为无密码的 ASCII 装甲文件,以便在拥有它的自动化系统中使用...