• 用Kubo工具在IPFS上存取文件

    要在ipfs网络上存取文件,除了使用带有图形界面的应用程序之外,还有一堆命令行工具可供使用。本文将介绍官方的Kubo工具的使用方法。文章翻译自Basic CLI Operations,英语好的同学请自行查看),英语好的同学请自行查看。 安装Kubo直...
  • IPFS怎样存储你的文件?

    从某种意义上说,IPFS就是一个文件系统,你向IPFS提交的文件都会存储在这个分布式文件系统内。为方便理解,我们可以将它和Windows的NTFS文件系统做一些类比。 从存储的角度看文件一个文件从存储的角度看可以分为两部分,一是文件的内容,即文件中包...
  • Merkle Tree和Merkle DAG(默克尔树和默克尔有向无环图)

    Merkle Tree和Merkle DAG看名字挺玄乎,其实非常简单,仅仅是哈希(HASH)和Tree(树)和DAG(有向无环图)的综合运用。 Merkle TreeMerkle Tree在之前的文章《到底什么是区块链?区块链结构简述》中已经讲过,...
  • 以太坊地址到底区不区分大小写?

    以太坊地址以0x开头,代表十六进制。接下来是40个十六进字符,每个字符代表4比特位,那么以太坊的地址是160位(20字节)。 十六进制的A-F是不区分大小写的,也就是说像下面这两个地址应该是同一个: 0xBFB153499C9191F7049D839...
  • 比特币脚本是如何实现多签的?

    多签(MultiSig),又叫“多重签名”,是指一笔交易需要多个私钥签名才能被执行。 大多数情况下,一笔交易只包含一个付款人,当交易被执行时,只要验证这个付款人的签名就可以了。 但也会有这样一类场景:一个钱包被多个人共同持有。比如,某公司有5个合伙人...
  • 理解比特币交易脚本

    比特币的交易基于UTXO,支持Pay to Public Key Hash(P2PKH-付款到公钥哈希)、Pay to Public Key(P2PK-付款到公钥)和Pay to Script Hash(P2SH-付款到脚本哈希)三种交易验证方式。 ...
  • 以太坊史话之The DAO与ETH硬分叉

    历史上,比特币出现过几次硬分叉,新产生了BCH、BSV等山寨比特币。同样,以太坊在2016年也出现过硬分叉。我过去觉得分叉都是某些矿工想获得额外收益搞出来的,但看完了ETH分叉的整个事件后,才发现分叉事件的背后也许另有故事。 这件事要从The DAO...
  • 什么是盲签?如何用RSA实现盲签?

    什么是盲签?盲签是一类特殊的签名方式。在一般的数字签名场合,签名者在文件或数据末尾附上自己的签名,表示该文件或数据确实是自己发出的。在这里,数据和签名是两部分,它们都由同一个人发出。 而在另一些场合下,数据和签名可能由不同的人分别提供。也就是说,数...
  • 到底什么是区块链?区块链结构简述

    这些年区块链被吹上了天,越是被吹得神的东西,阿牛哥越是报有怀疑的态度,至少就“区块链”的本意而言,没那么高深莫测。 严格的讲,区块链是一种链式数据结构。在IT领域,链表应该是最常见的链式结构,而区块链和链表十分相似,区别在于链表以内存指针连接节点,...
  • ECDSA签名算法原理

    非对称密钥的加密算法除了能在通信中用于加密数据外,还能用于数字签名,这一点是对称密钥加密实现不了的。 什么是数字签名和现实世界中的签名一样,在文件上签名表示这份文件中的内容由署名者自己作出或者决定,而非其他人伪造的,所以签名是一个确认身份的过程。 在...