我已经阅读了这个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哈希函数是单向哈希,对吗?
答案 0 :(得分:2)
基本上,IPFS是一项(键,值)存储服务。从ipfs add
命令获得的多重哈希值是值的多重哈希值,也是使用ipfs get
或ipfs object
命令从IPFS服务检索值的关键。
使用IPFS服务的http api,curl "https://ipfs.infura.io:5001/api/v0/object/data?arg=key
的工作原理与ipfs object data
命令完全相同。
所以这与解码散列无关,它只是通过您的键(多重散列)来获取值。