blockchain - eip, content hash, CID version0, 1, base58 , base 32的概念和相互转换
访问量: 626
EIP:
refer to: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1577.md
Ethereum Improvement Propalsal: 以太坊改进提案。 会提出以太坊的各种特性和新功能。
ENS;
refer to: https://ens.domains/
Ethereum Naming Service , 以太坊命名服务
Content Hash
这个是ENS中的特点,用户可以生成一个ipfs地址并且保存到这里。 0x..... 好多位
例如, bitsofcode.eth 的content hash: 0xe30101701220fb542ce810ffbcfa68c8a64c7825a8408148822051ab959d448553d09c27df25
IPFS CID : ( Conteng Identifiers ) 文本唯一标识。 Base 58: 一种编码,例如btc的地址
refer to: https://docs.filebase.com/ipfs/ipfs-cids
我们在使用IPFS的时候,总会看到这样的东东:
ipfs add CAKE.jpg
=> QmSkFCXoTamt9fJDxdiRU8EEsvBrT3zw8FFL5zvok2VyyB added
这里的 QmSk ... 就是 Base58的东东,它可以转换成CID。
一个 CID , 分成v0 和 v1两个版本。 例如:
对应上面的 QmSk ... ,它的 CID是 Bafy .....
Vitalik.eth 的 IPFS CID: bafybeigsn4u4nv4uyskxhewakk5m2j2lluzhsbsayp76zh7nbqznrxwm7e
借助于 content hash 这个组件: https://content-hash.surge.sh/ 我们可以直接转换:
例如对于 bitsofcode.eth:
ipfs 的内容: QmfFjVBz5wd66kyd89RWkJJiWEMq1Fde3XGN9MBfx47Btp
content hash: (0x省略) e30101701220fb542ce810ffbcfa68c8a64c7825a8408148822051ab959d448553d09c27df25
Base58
是一种编码格式,比特币的地址就是这样来的(据说)
ruby , python等语言都有。我就不赘述了。 参考这个ruby
CID v1, Base58, Base32之间的转换(我没看懂): https://github.com/ipfs/kubo/issues/6220
cid bafk ... 是base32的格式。