为什么以太坊使用RLP编码编码来序列化数据?我的意思是有没有使用现有格式的特定原因? RLP除了非常紧凑和节省空间。
答案 0 :(得分:0)
RLP(递归长度前缀)的目的是对二进制数据的任意嵌套数组进行编码,RLP是用于在以太坊中序列化对象的主要编码方法。看到这个RLP
RLP只是您提到的一种选择,可能有人会熟悉这种格式,而有些人则不熟悉,但是一旦选择了这项技术,最好在一个项目中保持一致,以免混淆其他项目。
答案 1 :(得分:0)
[[k1, v1], [k2, v2], ...]
,但是key的排序是不稳定的,这意味着在不同的实现中使用相同的值(Map)会输出不同的结果。所以 RLP 保证了以太坊 tx 哈希需要一致性。