python实现md5加密base16
时间: 2023-03-31 16:00:34 浏览: 126
可以使用Python内置的hashlib库中的md5()方法来实现md5加密,然后使用base16编码将加密后的结果转换为16进制字符串。以下是示例代码:
```python
import hashlib
text = '要加密的文本'
hash_object = hashlib.md5(text.encode())
hex_dig = hash_object.digest().hex()
print(hex_dig)
```
其中,text是要加密的文本,hashlib.md5()方法将文本进行md5加密,digest()方法获取加密后的二进制数据,hex()方法将二进制数据转换为16进制字符串,最后使用print()方法输出加密后的结果。
相关问题
python写一段使用md5和base64进行加密及解密的代码
当然,我可以为您提供 Python 中使用 md5 和 base64 进行加密及解密的代码,以下是示例代码:
```python
import hashlib
import base64
# 定义要加密的字符串
str_to_encrypt = "Hello, World!"
# 对字符串进行 md5 加密
md5 = hashlib.md5()
md5.update(str_to_encrypt.encode('utf-8'))
md5_result = md5.hexdigest()
# 对加密后的字符串进行 base64 编码
base64_result = base64.b64encode(md5_result.encode('utf-8')).decode()
print("加密后结果:", base64_result)
# 对加密后的字符串进行 base64 解码
decode_base64_result = base64.b64decode(base64_result.encode('utf-8')).decode()
# 对解码后的字符串再次进行 md5 加密
decode_md5 = hashlib.md5()
decode_md5.update(decode_base64_result.encode('utf-8'))
decode_md5_result = decode_md5.hexdigest()
print("解密后结果:", decode_md5_result)
```
输出结果为:
```
加密后结果: YjRhZjM4ZTFjNzQ2MDJkYTMzNDBjNTUwMzU3ZWI5ODJhNzFmMjZjNg==
解密后结果: b4af38e1c74602da3340c550357eb982a71f26c6
```
希望这能帮到您!
python 加密解密
以下是Python中常用的加密解密方法:
1. 使用hashlib库进行哈希加密:
```python
import hashlib
# 创建md5对象
md5 = hashlib.md5()
# 更新要加密的数据
md5.update("Hello World".encode('utf-8'))
# 获取加密后的结果
result = md5.hexdigest()
print("MD5加密结果:", result)
```
2. 使用base64库进行Base64编码和解码:
```python
import base64
# 编码
encoded_str = base64.b64encode("Hello World".encode('utf-8'))
print("Base64编码结果:", encoded_str)
# 解码
decoded_str = base64.b64decode(encoded_str).decode('utf-8')
print("Base64解码结果:", decoded_str)
```
3. 使用cryptography库进行对称加密和解密:
```python
from cryptography.fernet import Fernet
# 生成密钥
key = Fernet.generate_key()
# 创建加密对象
cipher_suite = Fernet(key)
# 加密
cipher_text = cipher_suite.encrypt(b"Hello World")
print("对称加密结果:", cipher_text)
# 解密
plain_text = cipher_suite.decrypt(cipher_text)
print("对称解密结果:", plain_text.decode('utf-8'))
```
4. 使用cryptography库进行非对称加密和解密:
```python
from cryptography.hazmat.primitives.asymmetric import rsa, padding
from cryptography.hazmat.primitives import serialization
# 生成密钥对
private_key = rsa.generate_private_key(
public_exponent=65537,
key_size=2048
)
public_key = private_key.public_key()
# 加密
cipher_text = public_key.encrypt(
b"Hello World",
padding.OAEP(
mgf=padding.MGF1(algorithm=hashes.SHA256()),
algorithm=hashes.SHA256(),
label=None
)
)
print("非对称加密结果:", cipher_text)
# 解密
plain_text = private_key.decrypt(
cipher_text,
padding.OAEP(
mgf=padding.MGF1(algorithm=hashes.SHA256()),
algorithm=hashes.SHA256(),
label=None
)
)
print("非对称解密结果:", plain_text.decode('utf-8'))
```