【发布时间】:2026-02-09 02:15:01
【问题描述】:
我正在使用 pygpgme 生成密钥,效果很好,但我必须像这样向 gpgme 提供密码:
key_params = dedent("""
<GnupgKeyParms format="internal">
Key-Type: RSA
Key-Length: 2048
Name-Real: Jim Joe
Passphrase: secret passphrase
Expire-Date: 0
</GnupgKeyParms>
""")
ctx = gpgme.Context()
result = ctx.genkey(key_params)
出于安全原因,我宁愿永远不知道密码,而是让 gpg-agent 为用户提供对话。
当我使用 pygpgme 解密或使用 gpg 命令行工具生成密钥时,密码短语对话框按预期弹出。
一种解决方案是使用带有子进程的 gpg 命令,但我想知道是否有更好的解决方案。
【问题讨论】: