我正在尝试使用python-gnupg,我在使用多个密钥加密文件时遇到问题。我见过几个人的页面'关于这个问题,我关注https://www.red-dove.com/python_gnupg/index.html#encryption-and-decryption因为它匹配得最好。显然,我应该将keyID放在列表中,但是当我这样做时,gnupg失败了。但是,如果我只给出一个keyid作为参数,那么一切都很好。 例如,在一个快速的bpython会话中:
>>> import gnupg
>>> gpg=gnupg.GPG(homedir='/home/fred/.gnupg')
>>> stream=open('../../README', 'r+')
>>> t=['1BFA0C4BDED1F993, F8DE6324AB01797D']
>>> encrypted=gpg.encrypt(stream, t , always_trust=True, output='test.gpg')
>>> encrypted.ok
False
>>> encrypted.stderr
u"gpg: Sorry, no terminal at all requested - can't get input\n"
>>> stream=open('../../README', 'r+')
>>> encrypted=gpg.encrypt(stream, '1BFA0C4BDED1F993' , always_trust=True, output='test.gpg')
>>> encrypted.ok
True
>>> encrypted.stderr
u'[GNUPG:] PROGRESS need_entropy X 8 16\n[GNUPG:] PROGRESS need_entropy X 16 16\n[GNUPG:] BEGIN_ENCRYPTION 2 9\n[GNUPG:] END_ENCRYPTION\n'
我尝试了不同的排列,强迫t成为一个字符串并将其拆分为每个方向(因为python-gnupg的文档变化很大,但我似乎无法使用多个密钥加密任何内容,这对我目前的工作有些问题。
我想知道是否有人有过这方面的经验。