为什么IPFS的多哈希可以解码?

时间:2019-08-16 10:42:10

标签: ipfs

我已经阅读了这个stackoverflow帖子: How to create an IPFS compatible multihash

$ echo "Hello World" | ipfs add -n
$ added QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u

base58

12 - 20 - 74410577111096cd817a3faed78630f2245636beded412d3b212a2e09ba593ca
<hash-type> - <hash-length> - <hash-digest>

ipfs cat

$ curl "https://ipfs.infura.io:5001/api/v0/object/data?arg=QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u"

Hello World

所以我想知道ipfs的解码如何工作?

据我所知,sha-256哈希函数是单向哈希,对吗?

1 个答案:

答案 0 :(得分:2)

基本上,IPFS是一项(键,值)存储服务。从ipfs add命令获得的多重哈希值是值的多重哈希值,也是使用ipfs getipfs object命令从IPFS服务检索值的关键。

使用IPFS服务的http api,curl "https://ipfs.infura.io:5001/api/v0/object/data?arg=key的工作原理与ipfs object data命令完全相同。

所以这与解码散列无关,它只是通过您的键(多重散列)来获取值。