区块链和比特币的几个常见概念
几天前接到一项任务,要给不懂区块链和比特币的小白解释几个常见概念,任务开工后才发现是一项蛮艰巨的任务。混迹币圈一年多,如今地址、区块高度、交易ID整天用,BTC、ETH、EOS等各种代币张口就来,这还不算什么以太、辣条、红烧肉之类的行话,没有学习能力的小白一进来就被吓跑了。
不过,让小白能够快速入门区块链的办法我也曾想过,曾经还写过一个直播课程,准备用一个小时介绍区块链中的12个基本概念,课程早就写好了,可惜却懒得讲了。因为我曾用了整整一个下午给几个程序员介绍区块链,最后的效果并不理想。今天,我用一篇文章把这些基础概念用非常简短的文字介绍一遍,能不能明白都请留言反馈一下吧。
区块链(Blockchain)
区块链(Blockchain)本身是一个复合词,可以分为两个简单的单词:区块(block)和链(chain),可以比喻成全世界人民共同维护的公开大账本,内部是由一个一个区块互相链接而成。
区块(Block)
一个区块(Block)相当于会计人员的一个账本盒,里面收录着在全世界内发生的一小部分交易账单。每个盒子有唯一的编号,后面的区块用链(Chain)的形式与前面的区块相连。
区块高度(Block Height)
刚才说到了“链”,会自然想到自行车的链条,但这种类比不太合适。区块链世界的准确术语是区块高度,你需要把区块链想像为堆叠在一起的账本盒,最底层的区块高度为0,向上高度依次增一。
比特币(Bitcoin)
比特币(Bitcoin),简称BTC,是运用加密原理构建的第一种数字货币,创始人为中本聪,该货币的计量单位也叫BTC。它的最小单位为聪,即0.00000001 BTC。比特币通过挖矿方式来发行新币,发行总量为2100万个。
区块链技术是一种底层技术,比特币是构建在其上的第一种应用。根据区块链内部技术细节的不同,就出现了上千种竞争币(AltCoins)。
交易(Transaction)
这里的交易是指发生在区块链上的交易,要与传统交易相比较来理解。两人面对面的纸币交易,只有双方知道,如果用电子转账,则会被银行这样的中心机构记录在册,此交易信息被三方知晓。
发生在区块链上的交易,则会迅速广播至全世界的所有其它计算机,任何一台计算机都可证明这笔交易的存在,不容抵赖。
钱包(Wallet)
我们把参与到比特币网络中的计算机软件称为节点,我们大多数用户最常用的是发币、收币、查看交易记录等,这类软件称为钱包软件,这些钱包软件也是节点,它们要与其它钱包软件互换区块数据和交易数据。
保存了全部大账本的钱包软件称为全节点钱包(当前所有区块的数据已经超过了150GB),如Bitcoin Core;而只保存了部分账本数据的钱包软件称为轻钱包(可能只需100多M),比如Breadwallet钱包等。
挖矿(Mining)
区块链上的交易采用分布式竞争记账,任何一笔转账交易都广播至全世界的网络中,每个人都可以参与记账,但要完成一定工作量的数学运算(也叫挖矿,如今的计算量已经达到了天文数字)。谁先完成这个运算,谁就有权在全世界公开的大账本上增加一个区块,并获得BTC奖励。这个增加的区块仍要经过全世界其它计算机的验证,再迅速广播到全世界网络中,开始下一轮新的竞争。
交易ID(Transaction ID)
交易ID即TxID,是transaction ID的简称。一笔交易通过计算机编码之后就是一串二进制数字,会占用几百、几千字节不等,并不利于查询。把这些字节的内容再经过一个数学变换生成一个长度为64的字母数字串,可以唯一代表这笔交易,方便记录和查询。
下面是一个txID的例子:
9cd60057ba30918038fba9ae41c58c2315cbd210b1de4f1bb90434edd610ef7a
确认数(Confirmations)
区块链分布式记账网络中,如果你的交易被挖矿产生的新区块收录,则称为增加了一次确认。如果在这个区块之上又有后续新区块产生,则确认数又增加一次。得到越多的确认数,交易越不可能被篡改。如果涉及大额资金的转账,通常认为6次交易确认数是足够可信的。
地址(Address)
比特币地址可以理解为银行卡的卡号,你可以放心地公开给他人,用于BTC收款。它是一串长度为30左右的字母和数字组成的字符串,以“1”或“3”开头的地址最为常见,从本质上讲,这个地址是一串私钥通过复杂的加密算法生成的。
下面是一个比特币地址的例子:
1NVL791XZCEWGxY7co6zgP5EkB1jf2dv9m
以太坊(Ethereum)
比特币的区块链里可以嵌入少量程序代码,不过出于安全考虑,代码的功能较弱。以太坊(Ethereum,创始人为天才少年Vitalik Buterin)则扩展了这部分功能,成为一个能够在区块链上实现智能合约的底层开发平台。基于以太坊,如果编写好一套合约的运行规则,则可以轻松发行一种新的代币(Token)。运行以太坊上面的程序需要消耗一种基础货币 —— 以太币( Ether , 简称 ETH )。
智能合约(Smart Contract)
智能合约(Smart Contract),简单理解就是让合同能够自动执行。这里的合约是由程序代码定义的,一旦部署之后就由平台(比如以太坊平台)强制执行,人工无法干预,合约的参与者也无须彼此信任。有人认为比特币是区块链1.0时代,而把智能合约称为区块链2.0时代。
上一篇:区块链可信 厉害的地方
下一篇:区块链技术背后为人所知的魔法