大家好呀,不知道上次的内容大家感觉如何呢?我们今天继续哈。
在比特币网络上的行为实际上只有一种:转账(当然通过添加信息和染色等等可以实现更多行为,但是我们这里只讲比特币网络本身)。也就是说,像A转10个比特币给B这样的。
这在传统中心化的金融系统中非常简单,但在去中心化网络中可不是这样,因为没有一个中心机构来对此行为进行确认和进行相应的操作。
所以,(1)转出账户A的所有者甲,必须把这条消息向全网广播,让全网的节点(全节点,下同)都知晓这个行为。
(2)这条消息需要用A的私钥进行加密,生成一条签名的信息,我们把它称为Mn。这样做的目的是,全网的节点可以用A的公钥对它进行解密和验证,以确认这条消息确实是由A的所有者发出的,没有伪造,因为只有A的所有者才有私钥,才能进行这个加密工作。另外,在比特币网络中(其他大多数区块链网络也是这样),A的公钥就是A的钱包地址,它是全网都能知道的。
(3)对于这个转账行为的描述,不能只是从A转10个比特币这么简单。举例来说,如果A钱包里有15个比特币,其中7个是在Mn-1这个交易中由C转给它的,8个是在Mn-2这个交易中由D转给它的,那么本次交易需要如下描述:
输入:7个比特币(来源Mn-1),8个比特币(来源Mn-2);
输出:10个比特币(到B的地址),5个比特币(回到A的地址,称为找零)。
通过这样的方式,每个比特币的来源和去向都是唯一的可追溯的(一直追溯到当初它被某个矿工挖出来,这是比特币发行的唯一方式),这样收到信息的节点一方面可以知道A的钱包里确实有超过10个比特币可以转给B,另一方面A的比特币的来源都是真实可靠的,没有伪造。
(4)该交易的时间戳。这样收到它的节点就能按照时间顺序把它记在合适的位置。另外,如果时间与接受节点的差距太大,会被拒绝。
(5)其他的技术相关的信息。
收到这条信息的节点,对该交易的合法性进行验证后,如果合法,则把该交易记录到节点自己的待打包交易集中。
好,这次先讲这么多。下回,我们会讲很多人听了眼睛一亮的“挖矿”。
(读完之后,你选择点赞还是分享支持小磕呢~)
或者版权印(https://101612200004148.bqy.mobi)
领取专属 10元无门槛券
私享最新 技术干货