base64 - 为什么有些 base64 字符串不能对称编码?
问题描述
我认为base64可以对称编码/解码,但我发现一些base64字符串在解码后没有编码回相同的字符串。
bash 中的示例:
printf "fV==" | base64 -d | base64
fQ==
printf "fS==" | base64 -d | base64
fQ==
printf "Ck==" | base64 -d | base64
Cg==
printf "Pm==" | base64 -d | base64
Pg==
printf "cK==" | base64 -d | base64
cA==
python中的示例:
from binascii import a2b_base64, b2a_base64
b2a_base64(a2b_base64(b'am==')) == b'ag==\n'
我尝试过其他在线编码器/解码器,它的行为相同。
为什么会这样?
有一些正常的base64形式吗?
解码后如何编码回原始形式?
解决方案
推荐阅读
- c# - 在.net核心中的应用程序启动期间自动映射器映射验证?
- machine-learning - 在 MIT BIH NST 数据集上使用 ICA
- reactjs - 注销时完全删除或重置 redux thunk store
- javascript - TypeError:无法读取未定义的属性“地图”,打字稿中的reactjs
- api - Postmates API 是否像 Postmate 应用程序 UI 那样涵盖实际的“搜索提供商 + 订单 + 付款”
- javascript - React Native Picker onValueChange 问题
- jenkins - 使用文本编辑器配置 Jenkins 作业的 UI 元素
- ios - 当应用程序返回前台时删除任何弹出窗口
- spring-boot - 使用 spring boot、crud 存储库、hibernate 和 postgres 使用非自动生成的 id 级联父子
- laravel - 如何在子刀片和主刀片之间发送数据