GPG 密钥对生成:加号和减号是什么意思?

GPG 密钥对生成:加号和减号是什么意思?

我刚刚生成了一个新的 GPG 密钥对,并且 gpg 显示了一些随机的加号、减号、大于、小于和抑扬符。我一直想知道它们是什么意思。你能给我解释一下吗?

iblue@nerdpol:~$ gpg --gen-key
[... snip ...]

We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
.........+++............<+++++>.+++++...............>..+++++..<
...+++++............>+++++<.+++++.....................<+++++..>
.................................................+++++^^^^

答案1

这些是密​​钥生成过程的进度指示。由于密钥生成可能很慢,因此您会得到一些动画显示。显示的细节非常模糊,除了(一点点)用于调试 GPG 的一些非常具体的部分之外,没有什么用处。

你正在看到一个埃尔加迈勒密钥对生成。 GPG 需要生成几个具有特定数学属性的数字。其中一些数字,例如素数,是通过反复试验生成的(生成大约在正确范围内的随机数,测试它是否具有必要的属性,req)。 GPG 打印:

  • 成功生成素数或生成器后的换行符;
  • <如果>随机生成的素数因不在适当的范围内而被拒绝;
  • !如果某个素数最终因不合适而被拒绝;
  • ^当尝试候选生成器时;
  • .如果随机生成候选素数p结果不是素数,GPG 尝试p+2;
  • :如果随机生成的候选素数结果不是素数并且 GPG 尝试一个新的随机数;
  • .如果简单的素性测试失败;
  • +如果长素性测试成功。

如果您想要详细列表,请查看GPG 源代码中progresscipher/dsa.ccipher/elgamal.c和的调用。cipher/primegen.c

相关内容