文章是本人学习过程翻译,原文来自官方文档:https://web3j.readthedocs.io/en/latest/#
官网:https://web3j.io/
官方GitHub:https://github.com/web3j/web3j
官方demo:https://github.com/web3j/web3j/tree/master/integration-tests
文档版本v3.4.0。
Recursive Length Prefix
RLP编码是一种空间有效的,用于Ethereum对象序列化的方案。
要了解RLP规范,请参阅黄皮书和ethereum wiki
RLP Types
rlp编码定义支持两种数据类型:
- string
- list
list类型可以支持任意复杂度的数据结构编码。
RLP模块在web3j提供RLP编码功能,RlpEncoderTest展示不同值的编码。
交易编码(Transaction encoding)
在web3j, RLP编码是用于编码Ethereum的transaction对象到一个字节数组,字节数组在提交到网络之前签名。交易类型和签名逻辑在Crypto模块讲解,TransactionEncoderTest提供了交易签名和编码的例子。
依赖(Dependencies)
这是一个非常轻量级的模块,没有其他依赖项。希望其他项目希望与Ethereum RLP编码的JVM或Android会选择使用这个模块而不是编写自己的实现。