"""
@File : 加密与解密.py
@Time : 2023-07-23 10:02
@Author : simon
@Email : 294168604@qq.com
@Software: PyCharm
"""
from hashlib import md5
import base64
obj = md5()
str = "你是个小可爱"
obj.update(str.encode("utf-8"))
bs = obj.hexdigest()
print("md5加密结果:{}".format(bs))
base_str = "我马上要进行base64加密了"
bs64 = base64.b64encode(str.encode("utf-8"))
print("bs64加密结果:{}".format(bs64))
s = "5L2g5piv5Liq5bCP5Y+v54ix"
bs64_jie = base64.b64decode(s.encode())
print("bs64解密结果:{}".format(bs64_jie.decode("utf-8")))
obj = md5()
obj.update(str.encode("utf-8"))
bs = obj.hexdigest()
bs64 = base64.b64encode(bs.encode("utf-8"))
print("MD5加密后再进行base64加密结果:{}".format(bs64))
import urllib.parse
s = ' 123'
ret = urllib.parse.quote(s)
print(ret)
s = urllib.parse.unquote(ret)
print(s)
params = {'name': '张三', 'age': 20, 'address': '北京市海淀区'}
query_string = urllib.parse.urlencode(params)
print(query_string)
query_string = 'name=%E5%BC%A0%E4%B8%89&age=20&address=%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA'
params = urllib.parse.parse_qs(query_string)
print(params, type(params))
from Crypto.Cipher import AES
import base64
key = '1234567890123456'.encode()
text = 'alex is dsb!!!!!'
text = text.encode()
print("完整text:", text)
aes = AES.new(key, AES.MODE_ECB)
en_text = aes.encrypt(text)
print("加密数据:::", en_text)
en_text = base64.b64encode(en_text).decode()
print(en_text)
from Crypto.Cipher import AES
import base64
key = '1234567890123456'.encode()
model = AES.MODE_ECB
aes = AES.new(key, model)
text = '3NeIhJsnhzy3Ojoquz+9eg=='.encode()
ecrypted_base64 = base64.b64decode(text)
str = aes.decrypt(ecrypted_base64).decode()
print(str)
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad,unpad
import base64
key = '1234567890123456'.encode()
text = 'hello rain,you are very good'.encode()
text = pad(text, 16)
print("完整text:", text)
iv = b'abcdabcdabcdabcd'
aes = AES.new(key, AES.MODE_CBC,iv)
en_text = aes.encrypt(text)
print("aes加密数据:::", en_text)
en_text = base64.b64encode(en_text).decode()
print(en_text)
from Crypto.Cipher import AES
import base64
key = '1234567890123456'.encode()
model = AES.MODE_CBC
iv = b'abcdabcdabcdabcd'
aes = AES.new(key, model, iv)
text = 'C9mcRBT2K5Z60j55/oD+Qyn0k+4y2fjtG5un4YWFb/c='.encode()
ecrypted_base64 = base64.b64decode(text)
str = aes.decrypt(ecrypted_base64)
str = unpad(str, 16).decode()
print("aes解密数据:::{}".format(str))
from Crypto.PublicKey import RSA
rsakey = RSA.generate(1024)
with open("rsa.public.pem", mode="wb") as f:
f.write(rsakey.publickey().exportKey())
with open("rsa.private.pem", mode="wb") as f:
f.write(rsakey.exportKey())
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_v1_5
import base64
data = "我喜欢你"
with open("rsa.public.pem", mode="r") as f:
pk = f.read()
rsa_pk = RSA.importKey(pk)
rsa = PKCS1_v1_5.new(rsa_pk)
result = rsa.encrypt(data.encode("utf-8"))
b64_result = base64.b64encode(result).decode("utf-8")
print("RAS加密:" ,b64_result)
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_v1_5
import base64
data = "BkiKG8jzVGzbWOl4m8NXJEYglgtxhOB05MGmap8JSP97GzoewPBmDTs7c5iACUof3k/uJf0H88GygajVgBvkcbckJp7oO+Qj6VSUQYTOHhKN/VG2a8v+WzL34EO/S7BYoj2oOxIDAr8wDLxYxjBeXq/Be6Q1yBbnZcKaMkifhP8="
with open("rsa.private.pem", mode="r") as f:
prikey = f.read()
rsa_pk = RSA.importKey(prikey)
rsa = PKCS1_v1_5.new(rsa_pk)
result = rsa.decrypt(base64.b64decode(data), None)
print("rsa解密数据:::", result.decode("utf-8"))
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)