в примере Python Pycryptodome по умолчанию для DSA-DSS Привет, ребята. Я задал этот вопрос, но, это не умно, я удалил в своем профиле и просто спросил из своего аккаунта друзей.
Проблема в том, что я пытался использовать шифрование с открытым ключом, подпись, проверку, так что...
До завтра все идет хорошо, но я столкнулся с DSA-DSS ECDSA. Если вы посмотрите на картинку, я думаю, что есть какая-то проблема, на которую я нацелен. Они делают «подписавшего» с закрытым ключом в DSS, но не используют его в подписи. Вместо этого используется знак ключа. Даже на уровне проверки (на картинке не видно) они вызывают открытый ключ из файла «PEM» и пытаются проверить без вызова DSS new() снова.
Итак, если вы сравните мой код и изображение, вы заметите, что я хочу сказать...
from Crypto.PublicKey import DSA
from Crypto.Signature import DSS
from Crypto.Hash import SHA256
key = DSA.generate(2048)
publickey=key.publickey()
message = b"Hello"
hash_obj = SHA256.new(message)
signer = DSS.new(key, 'fips-186-3')
signature = signer.sign(hash_obj)
Итак, здесь я пытаюсь проверить сообщение. Я больше не создавал объект has, и я вызвал открытый ключ из ключа, который я показал выше.
pkey=DSS.new(publickey,'fips-186-3')
pkey.verify(hash_obj,signature)
False
Итак, как видите, я получил "False". Я попробовал это на ECDSA - DSS снова вернул то же самое. так что если у вас есть то, что я хочу сделать, пожалуйста, помогите, что я хочу?