本文主要讲filecoin地址与以太坊地址的映射关系,不涉及filecoin具体编码细节
具体讲地址之前,需要先了解一下filecoin的actor。actor可以看做是硬编码的filecoin合约。actor类型有system、init、reward、cron、power、market、verifiedRegistry、datacap、eam、paych、miner、multisig、account、placeholder、ethaccount、evm
其中一些是单例actor,目前包system、init、reward、cron、power、market、verifiedRegistry、datacap、eam。单例合约是预先创建的,这些actor只有f0地址。
一些是多例actor,目前包括paych、miner、multisig、account、placeholder、ethaccount、evm。多例actor都是由用户创建。其中paych、miner、multisig地址f2开头,account地址f1、f3开头,placeholder、ethaccount是f4开头,evm地址比较特殊,evm地址同时拥有f2、f4地址
filecoin地址目前有5种地址类型
f0地址,是filecoin链上编号地址,每个多例actor第一次在链上创建时都会分配一个uin64类型的编号,这个编号就是f0地址。一般情况下多例actor有唯一的编号。除了evm类型actor
f1、f3地址,是account类型地址,地址是由公钥生成,里面有公钥是所有信息。f1、f3地址可以链下生成,只有第一转账后才会在链上创建这个地址,同时分配一个f0地址
f2是 paych、miner、multisig类型的actor地址,在创建这些actor时,会通过一些算法生成一个f2地址,这些f2地址都有相应的f0地址。
f4开头地址,目前f4地址与以太坊地址一一对应,里面包含了完整的以太坊地址信息。每个以太坊地址可以直接转换为一个f4地址,第一次向这个地址转账时,链上生成placeholder类型actor,同时分配一个f0地址。使用placeholder类型的actor生成只能合约时,这个地址类型由placeholder转化为ethaccount。生成的以太坊智能合约是evm类型的actor。这个actor同时有f2、f4地址,这两个地址对应了同一个f0地址。
以太坊地址转为filecoin地址时,每个以太坊地址可以直接转换为f4地址。
filecoin地址转为以太坊地址时,如果是f4地址或者与f4地址相对应的f2、f0地址,根据f4地址转化为以太坊地址。文章来源:https://www.toymoban.com/news/detail-618222.html
其他和f4无关的filecoin地址根据其f0地址转化为以太坊地址,转化规则是0xff0000000000000000000000+8位的f0编号组成20位的以太坊地址。文章来源地址https://www.toymoban.com/news/detail-618222.html
到了这里,关于filecoin与以太坊地址映射的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!