1

コマンドの -u スイッチと同等の、python-gnupg で代替秘密鍵を使用しようとしています。

gpg --encrypt --armor -r <<theirkeyid>> -u <<my_nondefault_key_id>>
gpg --decrypt -r <<theirkeyid>> -u <<my_nondefault_key_id>>

python-gnupg は常にデフォルトの秘密鍵を使用します。私が考え出した唯一のことは、おそらく別のキーリングを使用することですか、それとも方法はありますか? または、別の py ライブラリが複数の秘密鍵をサポートしていますか?

4

2 に答える 2

-1
  • --encrypt相手の公開鍵のみを使用する場合、この場合、オプション-uは無視されます
  • 受信者のキーをoptions.recipientsリストに設定できます。
  • 同様に--decrypting の場合、-rオプションは無視されます。通常、復号化に使用されるキーは、メッセージ内のキー ID から自動的に決定されます。メッセージが複数の公開鍵で暗号化されていて、キーストアに一致する秘密鍵が複数ある場合を除きます。
  • デフォルトのキーをオンに設定できますoptions.default_key
  • 別のキーストア ファイルを使用する場合は、それを追加の引数に追加するか、call引数リストで直接使用できます。

    gpg = GnuPGIntreface.GnuPG()
    #    ...
    gpg.options.recipients += ['spam', 'eggs']
    gpg.options.extra_args += ['--keyring', 'keyringfile']
    #    ...
    #    or:
    gpg.call(['--encrypt', '--keyring', 'keyringfile'])
    #    ...
    
于 2012-05-21T10:42:50.970 に答える