gpt4 book ai didi

python - 如何从 python 中的 RSA 公钥中提取 N 和 E?

转载 作者:太空狗 更新时间:2023-10-29 22:24:59 26 4
gpt4 key购买 nike

我有一个 RSA 公钥,看起来像

-----BEGIN PUBLIC KEY-----
MIIBIDANBgkqhkiG9w0BAQEFAAOCAQ0AMIIBCAKCAQEAvm0WYXg6mJc5GOWJ+5jk
htbBOe0gyTlujRER++cvKOxbIdg8So3mV1eASEHxqSnp5lGa8R9Pyxz3iaZpBCBB
vDB7Fbbe5koVTmt+K06o96ki1/4NbHGyRVL/x5fFiVuTVfmk+GZNakH5dXDq0fwv
JyVmUtGYAiMJWPni2hGpAsbyjzLix9UNX5XiYIIrIr55IHtD5u1XNkmYLOdVQ98r
6hez3t2eaE0pP2k+mjRach+2tD93PBZmreHgVZtejumi+ZWLMqpd++AY0AzH0m8E
6sa8JFUAiYZbVtmrcGTCUCkzC2Es1/knSeZ41xki1qD0V3uw/APP8Q+BgbX3SJp0
EQIBAw==
-----END PUBLIC KEY-----

我想在 python 中从这个键中找出模数 N 和指数 E 是什么?

使用 pycrypto 包我可以这样加载到 key :

from Crypto.PublicKey import RSA

# read the public key in:
public_key = RSA.importKey(open('key.pub', 'r').read())

但遵循 pycrypto's rsa module 的文档目前尚不清楚如何提取较小的成分。我该怎么做?

最佳答案

经过一个小时左右的尝试和谷歌搜索后,在这里找不到解决方案是真正简单的解决方案。这源于 python 对象的工作方式。

查看文档时,请注意它是如何谈论 keydata

这告诉我们当我们这样做的时候

pub_key = RSA.importKey()

我们正在创建一个 RSA 对象。这个对象有变量

['n', 'e', 'd', 'p', 'q', 'u']

所以你只需要做:

print pub_key.n
print pub_key.e

等等以从该对象访问这些变量。

关于python - 如何从 python 中的 RSA 公钥中提取 N 和 E?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42504079/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com