IPFS-and-Blockchain-Principles-and-Practice
IPFS-and-Blockchain-Principles-and-Practice copied to clipboard
《IPFS原理与实战》全书相关资料,出版社: 华章图书 | 机械工业出版社,作者:董天一、戴嘉乐、黄禹铭
29页 kademlia DHT中对距离计算公式有误,[2n,2(n+1)-1]是否不应该用上脚标,此问题在32页同样出现。 162页 SV不是调用POREP.prove的参数。
第4章 IPFS模块解析 89页: 第一行:“结果一共占用32字节”,此处的32字节是否应该更正为 22字节? 101页: 最后一行: “它位于应用层和传输层中间”,此处这样表达很模糊。这里的“它”是指什么? 102页: 第3行~第4行: “P传输层的核心”,此处的“P传输层” 正确的应该是 ?
2021年4月第一版第6次印刷 ipfs version: 0.9.1 书中长参数前的减号(横杠)应为两个, 像 *ipfs -help* 执行结果是 *Error: unknown option "help"*, 应为 **ipfs --help**, 推荐用正则表达式 ` -[a-z]{2,}` 匹配一下整本书的电子稿; 以及第213页(章7.4第二自然段) daemon 打成了daempon
您好,感谢您回答问题。 书中介绍了IPFS应用了git为基础架构,并可以很容易地实现git的功能。请问如何利用IPFS实现git的功能? 比如,在git仓库中,使用git log指令即可追溯修改的hash值和修改者即相应commit。IPFS中是否有此类功能?目前我看到的所有资料,针对一个改了三版的文件,IPFS无法通过第三版的hash追溯前两版的hash。有沒有什么方法可以通过IPFS仓库或其他方法验证IPFS中确实保留了各版本的信息并将之勾连?
根据 [multiformats/cid](https://github.com/multiformats/cid ) ,4.3.3节(2020年11月一版四印第115页)第三段表述不正确,长度、前导字节等有误,应将`46`改为`34`,将`0x12或者0x20`修改为`0x1220`或`0x12、0x20`。相应的,伪代码第11行应修改为`If cid.prefix == '0x1220'`。此外,伪代码有疑似多余的字符,如代码第4行(第二个注释行)末尾的`2`、第10行末尾分号前的`2`、第13行末尾的`v0uf`。另外,建议下次印刷时,调整一下这段代码的缩进。 附第三段修改后的内容: ```得到了二进制CID,若其长度是34字节,并且前导字节是0x1220,那么我们就可以确定它是CIDv0,并且是完整的。如果其长度不是34字节,并且前导字节不是0x1220,我们可以通过前导字节的第1个字,即判断版本号,由此将CID各个版本解码。``` 此外,还有两个小建议: 一是IPNS中将libp2p公钥的哈希转换为CID格式,其[Multi-Codec](https://github.com/multiformats/multicodec/blob/master/table.csv)代码为0x72,[Multi-Hash](https://github.com/multiformats/multibase/blob/master/multibase.csv)代码为0x00,由于IPNS地址也是常见的一种数据,故建议把它的代码加到表4-4 Multi-Hash函数类型表和表4-11 Multi-Codec表格中。表4-4内容:`名称:identity,十六进制代码:0x00,描述:8比特二进制`,表4-11内容:`名称:libp2p-key,描述:libp2p公钥,代码:0x72,数据类型:IPLD` 二是第1.2.2节第一段的一句话`如果用私钥对数据进行加密,那么只有用对应的公开密钥才能解密`不严谨。非对称密码学中,私钥不能用来加密,只用来签名。因为公钥是公开的,故用私钥”加密“毫无意义。建议把这句话中的`加密`改为`签名`,`解密`改为`验证`。 望您能考虑并采纳,写书不易,感谢您的贡献,辛苦~
我搭建了5个节点的私有网络,A节点上传文件后,依次在B,C,D,E节点下载,速度并没有变快,请问是需要什么配置么?
的6.4中,有一个cat.jpg图片的下载。在命令行执行ipfs cat命令可以下载(591KB),但是打不开,似乎格式不对。 但是同样的CID,6.5节的第一小节的那个链接,复制到浏览器之后打开可以看到图片(432KB)。 这两种方式下载下来的图片大小不同,第一种方式的还打不开,第二种方式可以正常打开图片。这是怎么回事那?谢谢。