在Python中解析字符串中的RSA密钥对

时间:2016-06-13 13:42:23

标签: python cryptography rsa pycrypto key-pair

我正在尝试从publicKey生成/读取RSA-keypair,并将privateKey作为String生成/读取。

这样的事情:

priK = "-----BEGIN RSA PRIVATE KEY-----MIIBOQIBAAJAVJhUS0gLqXLOmVv2xG23oFPwim9+rVxGhLUXqKShQCvB3iRMOHn7/GNJumpwmnglcsNXuqAhN0OxqKGGJdtYdwIDAQABAkBP0VrXnSbDvvuIX+k59Xvo3sp7FDAmSoaO+H9WM9+ht5H/f/geIrSEXSIkFLnzniMwtOJ422GmkDkL1F67HuDhAiEAlNauDiq3RqoXufbauyPEOG9fMS2pvB+auT2XCHJhhKsCIQCRgIo7WIRZYnNpNRWaoppUQK3g+aM8sdeBYpbs2nwDZQIgZXIxrmxFAUAb7d+oVFdbfc/DRSTHhPbRoaKuF87GUwMCIFmzaATsLjO42TPMETSS+BfnBAtFe5hIf3Z5pFgC3h9tAiEAgYjug92fmVvE+CcRSg6at7meSEbK/Kxg7Ar4mlkXMlI=-----END RSA PRIVATE KEY-----"

pubK = "-----BEGIN PUBLIC KEY-----MFswDQYJKoZIhvcNAQEBBQADSgAwRwJAVJhUS0gLqXLOmVv2xG23oFPwim9+rVxGhLUXqKShQCvB3iRMOHn7/GNJumpwmnglcsNXuqAhN0OxqKGGJdtYdwIDAQAB-----END PUBLIC KEY-----"

keyPair = RSA.importKey(priK + pubK)

我得到的错误是:

in importKey
    if lines[1].startswith(b('Proc-Type:4,ENCRYPTED')):

我甚至不知道是否有可能。我真的没有找到相关的信息。

1 个答案:

答案 0 :(得分:2)

RSA.importKey(key)导入一个密钥。它无法导入连锁密钥。

如果导入私钥,则可以从中提取公钥,因为常见的PKCS#1和PKCS#8格式具有创建公钥所需的全部信息。因此,您甚至不需要将公钥连接到它。

使用:

privateKey = RSA.importKey(priK)
publicKey = privateKey.publickey()