Questions tagged «gpg»

gpg是GNU Privacy Guard(GnuPG)的主要命令行工具,实现了用于公用密钥加密的OpenPGP标准。它允许加密,签名验证和信任模型(如信任网络)。gpg(及其库gpgme)是许多FOSS加密应用程序(如邮件用户代理)的基础。有一个独立版本(1.x)和一个(2.x)版本,需要使用gpg-agent进行秘密密钥处理。

4
pass和gpg:无公钥
我使用通行证已经很长时间了;但是将密钥存储和gpg密钥导出到另一台机器后,我看到以下输出: $ gpg --list-key /home/shved/.gnupg/pubring.gpg ------------------------------ pub 2048R/FA829B53 2015-04-28 uid [ultimate] Yury Shvedov (shved) <shved@lvk.cs.msu.su> sub 2048R/74270D4A 2015-04-28 我的密钥已导入并值得信任,但无法使用: pass insert test Enter password for test: Retype password for test: gpg: 2048R/FA829B53: skipped: No public key gpg: [stdin]: encryption failed: No public key fatal: pathspec '/home/shved/.password-store/test.gpg' did not match any …

1
SSH,tmux和GnuPG代理的最佳做法
我正在尝试将加密软件整合到GnuPG,但遇到了一个令人困惑的问题。 我的主要设备是无头服务器,我专门在tmux中工作。没有X会话,因此我已经将gpg-agent配置为使用pinentry-curses。我已配置gpg-agent使用以下脚本通过ssh-agent仿真在登录时调用: if pgrep -u "${USER}" gpg-agent >/dev/null 2>&1; then eval `cat $gnupginf` eval `cut -d= -f1 $gnupginf | xargs echo export` else eval `gpg-agent -s --enable-ssh-support --daemon` fi 我已经将ssh密钥添加到了gpg-agent中,但是当我尝试另一个ssh会话时,命令将挂起。 我发现,如果我杀死gpg-agent并创建一个新的登录shell,则该代理将按其应有的方式工作(调用pinentry-curses然后像ssh-agent一样工作)。 但是,如果我创建另一个登录外壳(例如,通过弹出打开另一个tmux窗格)并尝试ssh,该命令将挂起,并且pinentry-curses窗口将打印在最初启动该代理的登录外壳的内容上。 此外,如果我关闭了最初启动该代理程序的外壳,则无论如何都会调用pinentry-curses并导致cpu-crippling无限循环。(已知的错误,请参见http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=559936。) 本质上,我想知道要更改我的设置以使GnuPG代理与ssh-agent一样无缝地工作。谢谢你的帮助!
12 ssh  tmux  gpg 

1
如何识别gpg键ID,以便将其删除
执行后apt-key list,我会看到一个要删除的密钥。 ... pub rsa2048 2017-11-24 [SC] 3241 413F 3CE0 B919 E82F DCA0 6239 92CF C9A9 7C2C uid [ unknown] John Doe <john.doe@gmail.com> sub rsa2048 2017-11-24 [E] ... man apt-key告诉我可以通过执行来删除密钥apt-key del keyid。它还告诉我list(aka finger)将列出带有指纹的受信任密钥,因此我假设这3241 413F 3CE0 B919 E82F DCA0 6239 92CF C9A9 7C2C是指纹而不是密钥ID。我搞砸了gpg --list-keys和gpg --list-public-keys,但是,它没有列出任何键,而是~/.gnupg/使用各种不显示键ID的非文本文件创建的。 如何识别密钥ID,以便删除密钥? PS。在问这个问题之前,我搜索了一个解决方案,有人建议不要使用“短键ID”。如果我不应该按照所述通过keyid删除密钥man apt-key,请提供适当的方法。
12 debian  apt  gpg  apt-key 

1
以机器可读的格式获取apt的密钥ID和指纹
我正在尝试修补puppetlabs-apt中的一个问题,以允许使用密钥指纹作为标识符,以确保其40位密钥指纹中存在某个密钥。 我在检查密钥是否存在时遇到困难,我需要一个将输出以下内容的命令: 密钥的8位数字ID。 密钥的16位ID。 密钥的40位ID。 有没有apt-key我可以用来输出这些值的命令(每行一个),所以我可以解析输出并检查键是否存在?
11 apt  gpg 

3
为GPG键添加“随机数熵”?
在下面的视频中:Linux HOWTO:使用PGP保护数据,第2部分,显示了如何使用创建密钥对gpg。大约在1:50,讲师说: 生成密钥时,最好将鼠标稍稍移动一下,以便为创建密钥对提供更多的随机数熵。 在我看来,这就像是一个神话,尤其是因为命令行工具通常不应受到光标的影响。另一方面,我不知道Linux的随机数生成器是如何工作的,无论它是由GUI共享还是独立于GUI。他声称有什么存货,还是这是一个货运崇拜计划的例子?
10 linux  gpg  random 

2
一次缓存所有gpg子项密码?防止需要输入多个gpg密码?
我可以只输入一次gpg密码并解锁所有子密钥(签名,解密,身份验证)吗? 目前,我需要输入3次gpg密码(用于签名,解密和身份验证)。这很不方便。 我试图提出一个shell脚本。 #!/bin/bash set -x set -e set +o history signing_key=77BB3C48 encryption_key=CE998547 tempfile="$(mktemp)" echo "test" > testfile unset passphrase || exit 1 read -sp 'Enter password. ' passphrase ; echo exec 3<<<"$passphrase" gpg2 --no-tty --use-agent --batch --yes --passphrase-fd 3 --sign-with "$signing_key" --clearsign "$tempfile" gpg2 --no-tty --use-agent --verify "$tempfile.asc" gpg2 …

3
禁用gnome-keyring守护程序
我尝试过的方法: https://wiki.gnupg.org/GnomeKeyring https://blog.josefsson.org/tag/keyring/ 从启动应用程序中删除GNOME密钥环应用程序 http://lechnology.com/software/keeagent/installation/#disable-ssh-component-of-gnome-keyring 当我登录时,这些都不阻止启动此过程: me 1865 0.0 0.0 281816 7104 ? Sl 10:50 0:00 /usr/bin/gnome-keyring-daemon --daemonize --login 这使我的Thunderbird无法正确解密电子邮件。当我终止该进程时,我可以按预期解密电子邮件,但是我不想每次登录时都这样做。 OS Information: Debian GNU/Linux 8.3 (jessie) 有人可以帮忙吗?

7
一次加密多个文件
我正在编写一个脚本,该脚本创建项目档案,然后创建它们的7z档案,以使我可以更轻松地保存特定版本并保留加密的备份。 生成存档并进入加密阶段后,gpg如果可能的话,我想通过一次调用来加密文件,以便仅让用户输入一次密码。否则,我们要么不得不将用户的密码短语缓存在内存中(我真的不想这么做),要么让他们输入并确认每个已归档项目的密码短语(这更糟)。 有没有一种方法可以传递多个文件名以gpg一次性加密所有文件名? 如果我尝试这样做: $ gpg --cipher-algo AES256 --compression-algo BZIP2 -c project1.7z project2.7z ...我在shell中看到以下错误: usage: gpg [options] --symmetric [filename] 有什么方法可以做我想要完成的事情?
10 gpg 

2
如何自动接受epel gpg密钥
第一次从epel安装软件包时,系统会提示我是否要导入GPG密钥。 请注意,在安装redis时,会有2个“这可以吗”提示? [root@us-devops-build02 yum.repos.d]# yum install redis Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile .. truncated for readability Total download size: 213 k Installed size: 668 k Is this ok [y/N]: y Downloading Packages: redis-2.4.10-1.el6.x86_64.rpm | 213 kB 00:00 warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID 0608b895: …


1
使用apt等效于rpm -K
在中定义为在“ 最大RPM”中和在“ 最大RPM”中验证存储库的签名apt相当于什么?rpm -K *.rpm-Kman rpm 情况示例: sudo rpm --import https://mirrors.example.com/rpm/RPM-GPG-KEY-release && rpm -K example.rpm
9 debian  rhel  apt  rpm  gpg 

6
密钥服务器接收失败(在每个可用的密钥服务器上)
我最近安装了Ubuntu 17.04,但无法添加任何PPA。 我尝试使用不同的密钥服务器手动添加密钥,但是每次尝试都使密钥服务器收到错误: $ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0F164EEB 收到错误: Executing: /tmp/apt-key-gpghome.qm2WNA0lTK/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0F164EEB gpg: keyserver receive failed: No keyserver available $ sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 0F164EEB 收到错误: Executing: /tmp/apt-key-gpghome.O681PzEx7r/gpg.1.sh --keyserver keys.gnupg.net --recv-keys 0F164EEB gpg: keyserver receive failed: Connection refused 其他键也是如此。我无法添加任何PPA。
9 ubuntu  gpg  ppa 

1
gnupg 2.1.16等待熵的块
从2.1.16(当前为2.1.17)发布的gnupg块仅在首次调用时等待熵。 注意:这不是尝试生成密钥,只是为了解密文件并启动代理。 第一次启动gpg-agent时,无论是直接使用gpg2 file.gpg还是使用诸如的应用程序pass,pinentry都会出现,一旦我输入密码并点击Enter它,它就会挂起15秒左右。 在default-cache-ttl窗口中的所有后续调用将立即执行。 在--debug-all模式下运行,挂起的时间段将打印1: gpg: DBG: chan_6 <- S PROGRESS need_entropy X 30 120 gpg: DBG: chan_6 <- S PROGRESS need_entropy X 120 120 gpg: DBG: chan_6 <- S PROGRESS need_entropy X 30 120 gpg: DBG: chan_6 <- S PROGRESS need_entropy X 120 120 gpg: DBG: chan_6 <- …

2
RSA 2048密钥对生成:通过openssl 0.5s通过gpg 30s,为什么会有所不同?
RSA 2048密钥对生成:通过openssl 0.5s通过gpg 30s,为什么会有所不同有几个程序可以使RSA公共/私有密钥对生效 例如,GnuPG / OpenPGP有一个通过启动的向导 gpg --gen-key OpenSSL可以使用这些命令行生成密钥对 openssl genrsa -out testkey.private 2048 openssl rsa -in testkey.private -pubout -out testkey.public 对于同一件事,这就是生成密钥对RSA 2048位,我可以感觉到-在同一台机器上-截然不同的时间。 openssl大约在0.5秒内生成一个密钥对,大约 gpg需要30 秒,甚至广告“移动鼠标以生成随机性/熵” 差异可以解释吗?我知道gpg除了创建RSA密钥外,还做了一些处理,但是我确实选择了选项(4) 请选择您想要哪种钥匙: (1)RSA和RSA(默认) (2)DSA和Elgamal (3)DSA(仅签名) (4)RSA(仅签名) 您的选择? 因此,实际上唯一生成的是2048位RSA密钥对。时差却惊人地达到了30秒? 在我看来,要么gpg浪费了不必要的时间,要么OpenSSL没有等待足够的时间,因此创建了不安全的密钥。 我的问题是什么可以解释差异? 更新资料 RSA创建必须以某种随机性为输入。因此,为了确保快速的openssl不仅仅是使用一些存储的随机性的结果,我将其批处理了好几次 time bash -c“对于{1..50}中的i;执行openssl genrsa -out / dev / null 2048;完成;” 产生 …
9 gpg  openssl  random 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.