From 8cbe3c10844848906ce2420da7741eee45ec9a0b Mon Sep 17 00:00:00 2001 From: ps5antq2e <1819276859@qq.com> Date: Tue, 24 Dec 2024 23:03:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E7=9A=84=E7=94=9F=E6=88=90=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rsa_key_generate.py | 46 ++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/rsa_key_generate.py b/rsa_key_generate.py index ab8a4a5..6012ff5 100644 --- a/rsa_key_generate.py +++ b/rsa_key_generate.py @@ -1,24 +1,24 @@ -from OpenSSL import crypto -import tkinter as tk -import tkinter.filedialog -# 生成 RSA 密钥对 -key = crypto.PKey() -key.generate_key(crypto.TYPE_RSA, 2048) # 2048 是密钥位大小,也可以是 1024, 4096 等 -# 提取私钥并将其转换为 PEM 格式 -private_key_pem = crypto.dump_privatekey(crypto.FILETYPE_PEM, key).decode('utf-8') -# 提取公钥并将其转换为 PEM 格式 -public_key_pem = crypto.dump_publickey(crypto.FILETYPE_PEM, key).decode('utf-8') -# 将私钥保存到文件 -root = tk.Tk() -root.withdraw() -try: - file_path = tk.filedialog.asksaveasfilename(title="私钥保存",defaultextension=".pem", filetypes=[("PEM files", "*.pem")]) - with open(file_path, 'w') as f: - f.write(private_key_pem) -except: - print("私钥保存失败") -# 将公钥保存到文件 -file_path = tk.filedialog.asksaveasfilename(title="公钥保存",defaultextension=".pem", filetypes=[("PEM files", "*.pem")]) -with open(file_path, 'w') as f: - f.write(public_key_pem) +from OpenSSL import crypto +import tkinter as tk +import tkinter.filedialog +# 生成 RSA 密钥对 +key = crypto.PKey() +key.generate_key(crypto.TYPE_RSA, 2048) # 2048 是密钥位大小,也可以是 1024, 4096 等 +# 提取私钥并将其转换为 PEM 格式 +private_key_pem = crypto.dump_privatekey(crypto.FILETYPE_ASN1, key) +# 提取公钥并将其转换为 PEM 格式 +public_key_pem = crypto.dump_publickey(crypto.FILETYPE_PEM, key) +# 将私钥保存到文件 +root = tk.Tk() +root.withdraw() +try: + file_path = tk.filedialog.asksaveasfilename(title="私钥保存",defaultextension=".pem", filetypes=[("PEM files", "*.pem")]) + with open(file_path, 'wb') as f: + f.write(private_key_pem) +except: + print("私钥保存失败") +# 将公钥保存到文件 +file_path = tk.filedialog.asksaveasfilename(title="公钥保存",defaultextension=".pem", filetypes=[("PEM files", "*.pem")]) +with open(file_path, 'wb') as f: + f.write(public_key_pem) print("RSA 密钥对已成功生成并保存为 PEM 文件。") \ No newline at end of file