生成 RSA 并写入文件

Generating RSA and writing to file

为什么我在这段代码中得到异常: 我得到输出:

[*] Error creating your key

[*] Error creating your key

import os, hashlib
from Crypto.Cipher import AES
from Crypto.PublicKey import RSA

raw_key = RSA.generate(2048)
private_key = raw_key.exportKey('PEM')
try:
with open('master_private.pem', 'w+') as keyfile:
    keyfile.write(private_key)
    keyfile.close()
print ("[*] Successfully created your MASTER RSA private key")
except:
print ("[*] Error creating your key")

make_public = raw_key.publickey()
public_key = make_public.exportKey('PEM')
try:
with open("master_public.pem", "w+") as keyfile:
    keyfile.write(public_key)
    keyfile.close()
print ("[*] Successfully created your MASTER RSA public key")
except:
print ("[*] Error creating your key")

文件创建成功,但未填充任何内容。我刚开始 Python.

你应该捕获异常并显示以了解问题所在,但我认为你的问题是 write 方法,private_key 它的字节但你必须传递一个 str 来写入方法,你可以尝试:

   keyfile.write(private_key.decode())

其他问题可能是你的权限问题,可能没有创建文件的权限,尝试捕获异常并打印以了解发生了什么

try:
    with open('master_private.pem', 'w+') as keyfile:
    keyfile.write(private_key)
    keyfile.close()
    print ("[*] Successfully created your MASTER RSA private key")
except Exception as e:
    print ("[*] Error creating your key", e)

还要检查您的语法,为什么该代码没有得到很好的尝试