生成RSA公钥的n值
创始人
2024-12-05 05:05:05

简介:RSA算法是一种非对称加密算法,与对称加密算法不同的是,RSA算法有两个不同的密钥,一个是公钥,一个是私钥。 原理是:根据数论,寻求两个大素数比较简单,而将它们的乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。RSA公开密钥密码体制是一种使用不同的加密密钥与解密密钥,“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制 。RSA允许选择公钥的大小。512位的密钥被视为不安全的;768位的密钥不用担心受到除了国家安全管理(NSA)外的其他事物的危害;

历史攻略:

Python:DES、AES、RSA加解密

案例源码:编辑 vim key_n.py

# -*- coding: utf-8 -*- # time: 2024/7/17 0:42 # file: main.py # author: tom # 微信公众号: 玩转测试开发 from cryptography.hazmat.backends import default_backend from cryptography.hazmat.primitives import serialization from cryptography.hazmat.primitives.asymmetric import rsa  # 读取PEM文件 with open('rsa_public_key.pem', 'rb') as pem_file:     pem_data = pem_file.read()  # 加载公钥 public_key = serialization.load_pem_public_key(pem_data, backend=default_backend())  # 确保这是一个RSA公钥 if isinstance(public_key, rsa.RSAPublicKey):     public_numbers = public_key.public_numbers()     n_value = public_numbers.n     print(f"n_value:{n_value}") else:     print("这不是一个RSA公钥") 

编辑 vim test_run.sh

openssl genrsa -out rsa_private_key.pem 2048 openssl rsa -in rsa_private_key.pem -out rsa_public_key.pem -pubout python3 key_n.py 

运行:./test_run.sh

运行结果:

图片

相关内容

热门资讯

无源物联网深度解析:无电池联网... 你是否想过,有一天我们身边的智能设备再也不需要换电池、再也不怕没电? 从智能门锁到可穿戴设备,从环...
2026年惠州“发改讲堂”第4... 为抢抓人工智能发展战略机遇,提升干部队伍专业素养,助力我市人工智能与机器人产业创新发展,5月9日,惠...
华为申请信息传输方法专利,能够... 国家知识产权局信息显示,华为技术有限公司申请一项名为“信息传输方法、通信装置及存储介质”的专利,公开...
2026沪港创新项目评选启动仪... 来源:滚动播报 (来源:上观新闻) 5月12日,2026沪港创新项目评选启动仪式在大零号湾海创城举...