gpt4 book ai didi

python - 使用 base64 库中的 b32decode 进行 base32 解码时忽略填充异常

转载 作者:行者123 更新时间:2023-12-02 03:24:04 24 4
gpt4 key购买 nike

在尝试使用 base64 库解码 base32 字符串时,我需要一种方法来忽略“不正确的填充”异常。

我看过这个帖子Python: Ignore 'Incorrect padding' error when base64 decoding这解决了 base64 (b64decode) 解码的问题。我尝试做同样的事情(添加最大数量的可接受填充,如果我不是 msitaken,对于 base32 是 6)像这样

b32decode(str(decoding) + "======", True, None)

但无论如何都会引发异常。

预期的结果是即使没有正确的填充也能解码 base32 字符串:

decoding = JBSWY3DPEBZXIYLDNMQG65TFOJTGY33XEE== #this string should have 6 '=' as padding
print(b32decode(str(decoding) + "======", True, None))
>> Hello stack overflow!

最佳答案

据我测试。这行代码将使它起作用。

pad_length = math.ceil(len(b32_string) / 8) * 8 - len(b32_string)
bytes_data = base64.b32decode(b32_string.encode('ascii') + b'=' * pad_length)

关于python - 使用 base64 库中的 b32decode 进行 base32 解码时忽略填充异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53906739/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com