Wie kann Sie extrahieren, N und E aus einem öffentlichen RSA-Schlüssel in python?
Ich habe einen öffentlichen RSA-Schlüssel, so dass es aussieht wie
-----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-----
Ich soll herausfinden, was der modulo-N und exponent E werden aus diesem Schlüssel, in python?
Mit pycrypto Paket ich bin in der Lage zu laden, um die Schlüssel als solche:
from Crypto.PublicKey import RSA
# read the public key in:
public_key = RSA.importKey(open('key.pub', 'r').read())
aber nach der Dokumentation von pycrypto ist rsa-Modul Es war nicht klar, wie es zu extrahieren, die kleineren Komponenten. Wie mache ich das?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nach einer Stunde oder so spielen und googeln und nicht finden, eine Lösung ist hier die wirklich einfache Lösung. Die Stängel ab, wie sich python-Objekte arbeiten.
Beim Blick auf die Dokumentation, zu bemerken, wie er spricht über die keydata
Was dieser sagt uns, dass, wenn wir tun,
schaffen wir eine RSAobject. dieses Objekt besitzt die Variablen
So einfach:
damit der Zugriff auf diese Variablen, die das Objekt.
Wenn zum Beispiel Ihr öffentlicher Schlüssel gespeichert ist, als alicepublic.pem im Verzeichnis:
Tun dies in der interpreter zeigt die Komponenten.