最近这段时间,博主在整理一份通俗易懂的挖矿科普专辑,希望从最初加密货币交易的发生到挖矿确认交易的各个环节,全面地介绍挖矿过程中,到底发生了什么,哪些环节产生了挖矿收益,而我们常说的算力又指的是什么,挖矿收益为何要这样分配等等。
以比特币为例,我们知道比特币网络里设计挖矿的目的是打包交易,维护比特币网络,那么交易其实就是跟挖矿息息相关的第一个环节。在比特币网络中交易的过程使用了非对称加密技术,数字摘要技术,区块链技术等,其中的技术实现,已经有众多大神珠玉在前,博主就不献丑了。这篇文章的主要目的是将比特币的交易过程用较为浅显的语言展示出来,让更多跟笔者一样的技术门外汉了解比特币。
国务院:推进科普与区块链技术深度融合:为贯彻落实党中央、国务院关于科普和科学素质建设的重要部署,依据《中华人民共和国科学技术进步法》、《中华人民共和国科学技术普及法》制定《全民科学素质行动规划纲要(2021-2035年)》,其中要求实施智慧科普建设工程。推进科普与区块链等技术深度融合,强化需求感知、用户分层、情景应用理念,推动传播方式、组织动员、运营服务等创新升级,加强“科普中国”建设,强化科普信息落地应用,与智慧教育、智慧城市、智慧社区等深度融合。(新华社)[2021/7/10 0:40:52]
在展开说明之前,需要先安利几个概念:
非对称加密:也叫公开密钥加密,它是通过密码学的算法生成一对公私钥,公钥对外公开,私钥由本人保管。它有两个
用途:一,他人可以将数据用公开的公钥加密后传输给公钥持有人,公钥持有人使用对应的私钥将数据解密,读取信息,通过这种方式,可以保证
信息传输的安全性;二,公钥持有人可以使用私钥对
火币推出《一分钟读懂DeFi》系列科普视频:据官方消息,8月24日,火币推出《一分钟读懂DeFi》系列科普视频,并与微博财经合作冠名播出,布道DeFi认知,助力行业发展《一分钟读懂DeFi》是由火币成长学院打造的业内首个系统全面讲解DeFi的系列科普动画,继推出《区块链100问》后的再续佳作。《一分钟读懂DeFi》系列动画对DeFi的发展进行系统梳理,适合想要由浅入深、全面系统了解区块链DeFi的人们轻松了解DeFi。目前视频已由火币网官方微博发布。[2020/8/24]
信息签名,然后将信息和签名一起发送给他人,他人可以通过公钥对信息签名进行验证,验证签名信息与发送信息一致,则证明信息是由公钥持有人发出,可以在不暴露公钥持有人身份和私钥的情况下,确保信息来源的可靠性。(参考链接:
https://en.wikipedia.org/wiki/Public-key_cryptography)
哈希算法:也叫散列函数,可以通过它将数据量较大的消息或者数据计算出一个格式固定,数据量较小的
动态 | 链客社区联合北京交通广播推出区块链技术科普节目:12月11日15:15—16:00,区块链技术社区——链客区块链技术社区将联合北京交通广播FM103.9从零开始为大众科普解码区块链技术,蜻蜓FM及北京广播网同期进行全球直播。首期做客嘉宾为链客区块链技术社区创始人郄建军和百度区块链产品负责人于雅楠。[2019/12/11]
数字摘要。好的哈希算法应该是
不可逆的,
敏感的,
防冲突的。(参考链接:
https://en.wikipedia.org/wiki/Hash_function)
比特币里的公钥和私钥:比特币世界里,用来确定比特币归属的是按照比特币协议生成的一对对公钥和私钥,它们通过非对称加密算法生成,
公钥通过两次
哈希算法运算
得到一个散列值,再经过
动态 | 美国演说家Anthony Robbins开始科普什么是比特币:美国演说家安东尼·罗宾(Anthony Robbins)在自己的网站上发布了一篇比特币的科普文章,并在推特上向自己的粉丝介绍什么是比特币,目前他的推特账户共有粉丝304万人。[2019/1/1]
Base58Check编码生成了我们常见到的比特币的
钱包地址。所以钱包地址经过解码后,就可以得到对应公钥的哈希,可以用于验证私钥签名,加密数据等等。
UTXO:Unspenttransactionoutput,未花费的交易输出,它是比特币世界里的
抽象货币,每个UTXO都被一个
公钥锁定,只有持有该公钥对应私钥的人,可以
通过私钥签名并使用该UTXO。可以把UTXO理解为
抽象的纸币,但它的面值不是固定的。(参考链接:
https://en.wikipedia.org/wiki/Unspent_transaction_output)
科普时报:区块链与云计算长期发展目标不谋而合:据《科普时报》今日报道,区块链与云计算两项技术的结合,从宏观上来说,一方面,利用云计算已有的基础服务设施或根据实际需求做相应改变,实现开发应用流程加速,满足未来区块链生态系统中初创企业、学术机构、开源机构、联盟和金融等机构对区块链应用的需求。另一方面,对于云计算来说,“可信、可靠、可控制”被认为是云计算发展必须要翻越的“三座山”,而区块链技术以去中心化、匿名性,以及数据不可篡改为主要特征,与云计算长期发展目标不谋而合。[2018/5/4]
抛开代码,我们接下来看看比特币的交易是怎样的一个过程:
如下图,有甲、乙、丙、丁四个人,他们都有比特币钱包,钱包私钥自己持有,钱包地址在比特币网络公开,用于UTXO的锁定和验证。
起始,甲给丙0.7BTC,在比特币网络里的记录是
UTXO(1):甲给丙0.7BTC;乙给丙0.5BTC,在比特币网络里的记录是
UTXO(2):乙给丙0.5BTC。此时,丙的比特币钱包的账户余额为这两个UTXO之和,
丙的比特币总数=UTXO(1)+UTXO(2)=1.2BTC。如下图:
这天,丙向丁买了一批货物,需要向丁支付0.8BTC。丙通过比特币网络向丁转账,但丙现有的两个UTXO均不足0.8BTC,需要将两个UTXO一起使用,
类似现金交易:给丁支付1.2BTC,丁找给丙0.4BTC。但在比特币网络中,这个
找零的工作是由丙自己发起的。
整个交易的流程如下:
丙通过比特币钱包准备交易信息,交易信息包括输入和输出两个部分,输入是UTXO(1)和UTXO(2),以及丙的钱包私钥签名
交易的输出是未确认的UTXO(3):丙给丁0.8BTC,这个新的UTXO指向丁的钱包公钥,待交易确认后,将被丁的钱包公钥锁定。
此时还有0.4BTC需要找零给丙,因此还需要输出一个未确认的UTXO(4):丙给丙0.3999BTC,这个新的UTXO指向丙的钱包公钥,待交易确认后,将被丙的钱包公钥锁定。
为什么找零的数额不是0.4BTC呢?因为比特币网络要求,交易转账,需要向比特币网络支付交易手续费。剩余0.0001BTC未指向任何钱包公钥,将作为转账手续费支付给打包这笔交易的矿工。
交易信息准备完毕后,经过丙的钱包验证交易合法后,将交易广播到比特币网络中,由挖矿节点验证交易后,打包交易,并向比特币网络广播,交易完成。
旧的UTXO被消耗,新的UTXO开始生效,此时丁的钱包里有一个未使用的UTXO(3):丙给丁0.8BTC,丙的钱包里有一个未使用的UTXO(4):丙给丙0.3999BTC。
以上是较为抽象的比特币交易的过程,有关比特币交易的构造,签名验证,节点验证,交易广播,加入挖矿节点mempool,矿工构造预备区块,以及最终的出块确认的过程,后续会分别介绍,本篇不做展开。
从这个抽象的交易过程,我们可以发现,比特币的交易实质上是一堆UTXO的输入和输出的过程,伴随旧的UTXO被消耗,新的UTXO产生,完成了一次又一次的比特币交易。交易的过程由非对称加密和哈希算法进行双重保护,比特币持有者可以放心完成交易而不必担心身份被泄露,交易过程中也消耗了一部分比特币,用于奖励打包交易的矿工,使矿工乐于完成自己维护比特币网络的任务。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。