在将数据输入加密算法(如签名、加密、MAC 或哈希)之前,如何打包数据。
这个问题几十年来一直没有得到充分的解决。
首先,编码应该产生规范的输出,因为当两种不同的编码解码为相同的内存数据时,像比特币这样的系统就会陷入困境。
但更重要的是,编码系统应该考虑域分离这一重要问题。
为了了解这个问题,让我们看一个简单的例子,使用像 protobufs 这样的众所周知的 IDL。
不幸的是,这两个数据结构逐个字段地排列在一起,尽管对于程序和程序员而言,它们意味着完全不同的东西。
来源:HackerNews











