Используйте GPG в Python с PyNaClPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Используйте GPG в Python с PyNaCl

Сообщение Anonymous »

Я пытаюсь поиграть с GPG и PyNaCl.
Я могу импортировать ключ в Python с помощью оболочки gnupg CLI python-gnupg и знать, что его ответ закодирован в base64.< /p>

Код: Выделить всё

import base64
import gnupg

key_id = "..."
gpg = gnupg.GPG()
public_key = "".join(gpg.export_keys(key_id).split("\n")[2:11])
public_key = base64.b64decode(public_key)
Но тогда это не чистый ключ ED25519, и я не могу просто импортировать его с помощью:

Код: Выделить всё

import nacl
nacl.signing.VerifyKey(public_key)
  • Какую обработку мне нужно выполнить, чтобы получить только открытый ключ? Я немного поигрался с gpg -a --export ... | gpg --list-packets, но я не понимаю его вывода.
Как только я это получу, я тоже захочу подписывать сообщения. Я сделаю это напрямую с помощью gpg:

Код: Выделить всё

data, passphrase = ...
signature = gpg.sign(data, keyid=key_id, passphrase=passphrase, detach=True).data
base64.b64decode(signature)
  • Это чистая подпись без дополнительных метаданных?


Подробнее здесь: https://stackoverflow.com/questions/787 ... ith-pynacl
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»