3.3.1.1 AES 对称加密 你有没有在深夜调试一个加密模块时,突然发现——同样的 AES 密钥和明文,Java 服务端解密出来的却是乱码,而 Python 客户端加密后发过来的数据,在 Node.js 后端却能正确还原?更诡异的是,本地单元测试全绿,压测环境偶发失败,日志里只有一行冰冷的 。 这不是玄学。这是你在用 AES 时,亲手绕过了一道看不见的闸门:填充(Padding)与模式(Mode)的隐式耦合陷阱。 今天,我们不讲 AES 的数学原理,不复述 SPN 结构或轮函数设计,也不堆砌 RFC 文档编号。我们要拆开的,是一个真实生产系统中反复咬住工程师脚踝的细节——AES/CBC/PKCS5Padding 在跨语言实现中因字节对齐偏差引发的静默解密失败。