python3 base64.b64encode()_b64decode().py

本文通过实例演示了如何使用Python的hashlib和base64模块进行MD5哈希计算及Base64编码、解码操作。首先,创建MD5哈希对象并更新待加密字符串,获取字节形式的哈希值。接着,利用base64模块对MD5加密结果进行编码和解码,展示了不同字符串长度对应的Base64编码结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

"""
模块:python3 base64.b64encode()_b64decode().py
功能:python3 base64 编码、解码。
参考:https://www.cnblogs.com/yrxns/p/7727471.html
知识点:
1.base64.b64encode(s, altchars=None)
    使用base64编码类似字节的对象 s,并返回一个字节对象。

    可选 altchars 应该是长度为2的字节串,它为'+'和'/'字符指定另一个字母表。
    这允许应用程序,比如,生成url或文件系统安全base64字符串。

2.base64.b64decode(s, altchars=None, validate=False)
    解码 base64 编码的字节类对象或 ASCII 字符串 s。

    可选的 altchars 必须是一个字节类对象或长度为2的ascii字符串,
    它指定使用的替代字母表,替代'+'和'/'字符。

    返回字节对象。如果s被错误地填充,则会引发 binascii.Error。

    如果 validate 为 false(默认),则在填充检查之前,
    既不在正常的base-64字母表中也不在替代字母表中的字符将被丢弃。
    如果 validate 为 True,则输入中的这些非字母表字符将导致 binascii.Error。
"""
import hashlib
import base64

md5HASHObject = hashlib.md5()
a = 'ok'
md5HASHObject.update(a.encode())
b = md5HASHObject.digest()
print("b:", b)
# b: b"DK\xcb:?\xcf\x83\x89)lIF\x7f'\xe1\xd6"
print(f"md5加密结果再进行base64编码:{base64.b64encode(b).decode('utf-8')}")
# md5加密结果再进行base64编码:REvLOj/Pg4kpbElGfyfh1g==

print(base64.b64encode('a'.encode()))
# b'YQ=='
print(base64.b64encode('ab'.encode()))
# b'YWI='
print(base64.b64encode('abc'.encode()))
# b'YWJj'
print(base64.b64decode(b'YWJj').decode())
# abc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值