Files
sixGuoDjango/django_jwt_token/RSA非对称密钥.py
T

46 lines
1.0 KiB
Python
Raw Normal View History

2026-08-02 14:07:04 +08:00
import base64
import os
import django
from Crypto.Cipher import PKCS1_OAEP, PKCS1_v1_5
from sixGuoDjango.settings import base_dir_name
os.environ.setdefault( key="DJANGO_SETTINGS_MODULE", value=f"{base_dir_name}.settings" )
django.setup( )
from pathlib import Path
from Crypto.PublicKey import RSA
from django.conf import settings
def jwt_rsa_证书创建( ):
# 生成2048位密钥对
key = RSA.generate( bits=2048 )
#
# 导出私钥(PEM格式)
private_key = key.export_key( passphrase=settings.SECRET_KEY )
# print( "私钥:\n", private_key.decode( ) )
# 导出公钥(PEM格式)
public_key = key.publickey( ).export_key( )
Path( settings.BASE_DIR ).joinpath( "django_jwt_token/private.pem" ).write_bytes( data=private_key )
Path( settings.BASE_DIR ).joinpath( "django_jwt_token/public.pem" ).write_bytes( data=public_key )
print( "证书创建成功了" )
if __name__ == "__main__":
# 这里写你的主程序代码
pass
jwt_rsa_证书创建( )