当前位置: 首页 > news >正文

企业品牌网站建设怎么做华强北做电子网站建设

企业品牌网站建设怎么做,华强北做电子网站建设,网络推广营销服务,网站如何做谷歌优化以下是使用 Python 实现非对称加密的 A 端和 B 端软件的详细步骤及代码示例,并且会说明如何将其打包为可执行的 .exe 文件。这里我们使用 cryptography 库来实现 RSA 非对称加密算法。 1. 安装依赖库 首先,确保你已经安装了 cryptography 库。如果没有…

以下是使用 Python 实现非对称加密的 A 端和 B 端软件的详细步骤及代码示例,并且会说明如何将其打包为可执行的 .exe 文件。这里我们使用 cryptography 库来实现 RSA 非对称加密算法。

1. 安装依赖库

首先,确保你已经安装了 cryptography 库。如果没有安装,可以使用以下命令进行安装:

pip install cryptography

2. 编写 A 端软件代码(a_end.py

from cryptography.hazmat.backends import default_backend
from cryptography.hazmat.primitives.asymmetric import rsa, padding
from cryptography.hazmat.primitives import serialization, hashes
import base64def encrypt_message(public_key_pem, plaintext):# 加载公钥public_key = serialization.load_pem_public_key(public_key_pem.encode(),backend=default_backend())# 加密明文ciphertext = public_key.encrypt(plaintext.encode(),padding.OAEP(mgf=padding.MGF1(algorithm=hashes.SHA256()),algorithm=hashes.SHA256(),label=None))# 将加密后的字节数据转换为 Base64 编码的字符串,方便复制encrypted_base64 = base64.b64encode(ciphertext).decode()return encrypted_base64if __name__ == "__main__":# 读取公钥文件try:with open('public_key.pem', 'r') as f:public_key_pem = f.read()except FileNotFoundError:print("未找到公钥文件 'public_key.pem',请确保文件存在。")exit(1)# 输入明文plaintext = input("请输入要加密的明文: ")# 加密明文encrypted_text = encrypt_message(public_key_pem, plaintext)# 输出可复制的密文print("加密后的密文(可复制):")print(encrypted_text)

3. 编写 B 端软件代码(b_end.py

from cryptography.hazmat.backends import default_backend
from cryptography.hazmat.primitives.asymmetric import rsa, padding
from cryptography.hazmat.primitives import serialization, hashes
import base64def generate_key_pair():# 生成私钥private_key = rsa.generate_private_key(public_exponent=65537,key_size=2048,backend=default_backend())# 生成公钥public_key = private_key.public_key()# 保存私钥到文件private_pem = private_key.private_bytes(encoding=serialization.Encoding.PEM,format=serialization.PrivateFormat.PKCS8,encryption_algorithm=serialization.NoEncryption())with open('private_key.pem', 'wb') as f:f.write(private_pem)# 保存公钥到文件public_pem = public_key.public_bytes(encoding=serialization.Encoding.PEM,format=serialization.PublicFormat.SubjectPublicKeyInfo)with open('public_key.pem', 'wb') as f:f.write(public_pem)print("密钥对生成成功,私钥保存为 'private_key.pem',公钥保存为 'public_key.pem'。")def decrypt_message(private_key_pem, encrypted_base64):# 加载私钥private_key = serialization.load_pem_private_key(private_key_pem.encode(),password=None,backend=default_backend())# 将 Base64 编码的密文转换为字节数据ciphertext = base64.b64decode(encrypted_base64)# 解密密文plaintext = private_key.decrypt(ciphertext,padding.OAEP(mgf=padding.MGF1(algorithm=hashes.SHA256()),algorithm=hashes.SHA256(),label=None))return plaintext.decode()if __name__ == "__main__":# 生成密钥对generate_key_pair()# 读取私钥文件try:with open('private_key.pem', 'r') as f:private_key_pem = f.read()except FileNotFoundError:print("未找到私钥文件 'private_key.pem',请确保文件存在。")exit(1)# 输入密文encrypted_text = input("请输入要解密的密文: ")# 解密密文decrypted_text = decrypt_message(private_key_pem, encrypted_text)# 输出解密后的明文print("解密后的明文:")print(decrypted_text)

4. 打包为 .exe 文件

我们可以使用 PyInstaller 库将 Python 脚本打包为可执行的 .exe 文件。首先,确保你已经安装了 PyInstaller

pip install pyinstaller
打包 A 端软件

在命令行中,进入包含 a_end.py 文件的目录,然后运行以下命令:

pyinstaller --onefile a_end.py

打包完成后,在 dist 目录下会生成 a_end.exe 文件。

打包 B 端软件

同样,在命令行中进入包含 b_end.py 文件的目录,运行以下命令:

pyinstaller --onefile b_end.py

打包完成后,在 dist 目录下会生成 b_end.exe 文件。

5. 使用说明

  • B 端软件(b_end.exe:运行该软件会生成密钥对,将私钥保存为 private_key.pem,公钥保存为 public_key.pem。然后提示你输入要解密的密文,输入后会输出解密后的明文。
  • A 端软件(a_end.exe:运行该软件前,需要确保 public_key.pem 文件存在。运行后,输入要加密的明文,软件会输出加密后的密文,该密文可以复制并提供给 B 端进行解密。

通过以上步骤,你就可以实现一个简单的非对称加密的 A 端和 B 端软件,并将其打包为可执行的 .exe 文件。

http://www.dtcms.com/a/429838.html

相关文章:

  • 12388网站建设管理情况网站策划书我与音乐
  • 网站建设电话销售话术技巧漂浮广告网站
  • 天津市哪里有做网站的wordpress html5视频
  • 免费网站建设 百度收录人力资源三网站建设
  • 社区类网站建设网页制作与设计课本
  • 微信群推广平台有哪些安卓优化
  • 北京seo优化网站建设程序员参与洗钱网站建设
  • 没有网站怎么快速做cps网站区分
  • wordpress邮箱模板网站建设优化兼职
  • 如何查一个网站有没有做外链wordpress获取当前用户id
  • 做网站哪里找程序员jsp开发网站开发源码
  • 家用电脑怎么做网站wordpress 文字围绕图片
  • 网站布局建议免费搭建自己的官网
  • wordpress文章标题高亮插件太原seo排名优化软件
  • vs2017建设网站WordPress最强网站
  • 团购网站开发需要多久网站建设 赣icp 南昌
  • 昆明学网站建设如何用子域名做网站
  • 大兴网站设计销售手机网站的后期安排
  • 校园网站开发的意义网站开发工程师工资hangq
  • 上海地区做旧物回收的网站秦皇岛网站设计
  • 电子商务网站建设系统功能罗湖做网站
  • 判断网站做的好坏开封网站优化
  • 卖游戏币网站制作网站开发具备的相关知识
  • 赣州市建设考勤在哪个网站建设银行信用卡在网站激活后如何设置密码
  • 快站微信网站制作wordpress模板博客
  • 网站 页面 结构手机网站建设专业服务公司
  • 怎么做考试资料分享网站做网站一般是怎么盈利
  • 网站制作过程流程做淘宝客一定要网站吗
  • 用云做网站网站不能添加图片
  • 建设项目验收在哪个网站公示合浦县建设局网站