比特币与区块链入门教程

(1)什么是比特币(Bitcoin)?

首先比特币不是一种实体货币,而是一种去中心化、点对点的数字化虚拟货币。

中本聪在2008年11月1日发表了一篇名为《比特币白皮书:一种点对点的电子现金系统》(简称比特币白皮书)的文章,宣布了比特币的诞生。

2009年1月3日,中本聪在荷兰赫尔辛基的一个小型服务器上打包了第一个区块——创世区块,获得了50枚比特币的奖励,比特币开始正式流通发行,同时也标志着比特币的底层技术——区块链技术的诞生。

比特币有哪些优点

为什么比特币现在这么火,比特币又是如何开始应用的呢?

从物物交换到比特币。

货币一开始以实物货币的状态呈现,如贝壳、金银等,因为它们具有稀缺性,用于充当一般等价物。

后来我们开始用纸币进行支付。面值100元的纸币制作成本可能只有几厘钱,却能够换取价值100元的物品,这是因为有国家的信用背书,让人们相信这一文不值的纸币能够换100元的商品。

随着互联网的发展,我们从纸币过度到记账货币,比如发工资只是在银行卡账户上做数字的加法,买衣服只是做减法。整个过程中都是银行在记账,且只有银行有记账权。

在2008全球经济危机中,美国政府因为有记账权所以可以无限增发货币。中本聪觉得这样很不靠谱,于是他想创建一种新型支付体系:大家都有权来记账,货币不能超发,整个账本完全公开透明,十分公平。这就是比特币产生的原因和动机。

因此比特币具有公开透明、完全去中心化、点对点交易等特点,同时以大家的算力和信息技术做为信用背书,信用成本非常低。

因为比特币具有匿名性,所以早期比特币经常用于暗网的非法交易,从而导致比特币被很多人所误解,认为是一种非法交易的货币。

第一次比特币交易

2010年5月22日,早期比特币爱好者——美国程序员拉兹洛(Laszlo Hanyecz)希望能用比特币交换实物商品。

他在一个比特币论坛发帖说:希望用10000个比特币交换2个价值25美元的披萨。一位英国志愿者与拉兹洛达成交易,获得了10000个比特币的报酬。

这是比特币第一次有了价格,在整个加密社区引起了很大的轰动,人们为了纪念这次交易,把每年的5月22日称为“比特币披萨日”,比特币爱好者们聚在一起吃披萨庆祝。

以现在比特币的价格计算,当时的2块披萨价值约5亿人民币,不知道那位程序员哥哥现在作何感想!

什么是挖矿和矿工

因为比特币是一种去中心化的加密货币,所以并没有中心化的发行机构。当初中本聪创立的第一个区块开始,便设计了一整套的规则,一枚比特币可以细分至小数点后8位,同时每个区块发行50枚比特币,每21万个区块产量减半,每10分钟产生一个区块,所以比特币产量每4年减半一次,截止到2018年,比特币已减半两次,每个区块只产生12.5枚比特币。大约在2045年,99.95%的比特币将发行完毕,到2140年,比特币将不再细分,至此,比特币全部发行完毕,发行总量约为2100万枚。

Hash算法

想了解挖矿,先需要知道什么Hash算法(哈希数列)。

哈希算法是一种只能加密,不能解密的密码学算法,可以将任意长度的信息转换成一段固定长度的字符串。

同时,这个输出值有两个特点:
1. 就算输入值只改变一点,输出的哈希值也会天差地别。
2. 只有完全一样的输入值才能得到完全一样的输出值。
3. 输入值与输出值之间没有规律,所以不能通过输出值算出输入值。要想找到指定的输出值,只能采用枚举法:不断更换输入值,寻找满足条件的输出值。

哈希算法保证了比特币挖矿不能逆向推导出结果。

而挖矿便是利用计算机计算这个随机数,争取记账权的过程。

中本聪为了控制每个区块产生的速度在10分钟左右,设计了每2016个区块便会根据全网算力动态调整一次难度,从而达到10分钟算力的平均值。而利用矿机计算这个结果的过程便是挖矿,利用矿机挖矿的人便是矿工。(参考http://www.ruanyifeng.com/blog/2017/12/blockchain-tutorial.html (区块链入门))

如何挖矿

购买一台专业的矿机,然后注册一个比特币钱包地址,下载专门的挖矿软件就可以了。

比特币钱包 https://blockchain.info/
挖矿软件 https://pool.btc.com/tools

不过由于目前全网算力的提升,单台或几台矿机已经能难通过挖矿获得比特币,所以一般选择加入矿池(即拥有大量矿机,专门用来挖矿的地方,一般选择位置比较偏僻,电力比较便宜的地方),通过算力占比来获得相应的比特币收益。

也可以通过投资比特币等其它代币来获得收益。目前中国最大的数字资产交易平台——火币网

比特币与区块链入门教程_第1张图片
火币网

(2)什么是区块链(Blockchain)?

区块链由一串使用密码学算法产生的区块连接而成。每一个区块上写满了交易记录,区块按顺序相连形成链状结构,也就是区块链大账本。

用比特币来说,矿工在生成新区块时,需要根据前一个区块的哈希值、新交易区块和随机数,来计算新的哈希值和随机数。也就是说每一个区块都是在前一个区块数据的基础上生成的,该机制保证了区块链数据的唯一性。

因为交易记录细微的变化也会彻底改变哈希值的结果,所以矿工在进行算力竞争的时候无法作弊,每个矿工都必须等前一个区块生成之后才能根据前一个区块的数据开始计算符合条件的随机数,保证了挖矿的公平性。

但是区块链也并非绝对的安全,如果某个人拥有了超过全网51%的计算机算力,即占大多数,他便可以利用算力的优势更改区块,将某个区块的交易抹除,从而产生一个新的区块。即51%攻击

区块链的技术支持

区块链并不是新发明的一种技术,而是一系列技术的集成,包括非对称加密技术、时间戳、共识机制等。

以比特币为例,区块链通过时间戳(Timestamp)和工作量证明(Proof of Work)机制解决了双重支付(Double Spending)和拜占庭将军问题(Byzantine Generals’ Problem),即保证同一笔比特币不可能被花费2次,并且在整个去中心化的区块链网络中,在所有节点间保持一致。

非对称加密机制保证私钥的安全性,时间戳保证区块按顺序连接成链,工作量证明机制解决了在去中心化系统中如何公平地分发2100万个比特币的问题。(数字签名参考《什么是数字签名》)

时间戳:区块链通过时间戳保证每个区块依次顺序相连。时间戳使区块链上每一笔数据都具有时间标记。简单来说,时间戳证明了区块链上什么时候发生了什么事情,且任何人无法篡改。

工作量证明机制:工作量证明是指,如果矿工找到了一个满足条件的结果,我们便可以认为全网矿工完成了指定难度系数的工作量。获得记账权的几率取决于矿工工作量占比全网的比例,如果占比30%,那么获得记账权的几率也是30%。所以提高工作量占比才能提高竞争力,才能获得更多新诞生的比特币。

区块链分叉与山寨币

比特币白皮书规定,节点永远认为最长链是正确的区块链,并将持续在它上面延长。所有矿工都在最长链上挖矿,有利于区块链账本的唯一性。

怎样算是“最长的区块链”呢?因为全世界的矿工同时在挖矿,有可能同时有2个矿工算出了正确的答案,那么区块链就会形成分叉,剩下的矿工有可能在其中任意一条分叉上继续挖矿,延长区块链。

所以我们通常要求在比特币转账被打包之后,还需要经历6个区块的确认,确保矿工不会再回到另一条分叉上挖矿时,才算真正的转账成功。

简单说,分叉是指区块链在进行“升级”时发生了意见分歧,从而导致区块链分叉。因为没有中心化机构,比特币等数字资产每次代码升级都需要获得比特币社区的一致认可,如果比特币社区无法达成一致,区块链很可能形成分叉。比如BTC的分叉币BTM,ETH(以太坊)和ETC(以太坊经典)。

同时由于比特币是一套开源的代码,所以建立新的代币成本非常低,从而出现了大量的山寨币,比较出名的有莱特币、以太币。

(3)区块链项目的分类与应用

一、币类

比特币与区块链入门教程_第2张图片
图片来自

白皮书查询地址:http://www.baipishu123.com/

二、平台

平台类项目主要功能为建立技术平台,满足各种区块链应用开发所需的技术要求。

简单地说,平台类应用让开发者可以在区块链上直接发行数字资产、编写智能合约等。智能合约就是在区块链数据库上运行的计算机程序,可以在满足其源代码设定条件下自行执行。

平台类区块链项目的主要功能是建立底层的技术平台,让开发者在底层技术平台上做应用开发,相当一部分平台尚处于开发状态当中,目前市值最大的是以太坊(ETH)。

以太坊与智能合约

官网:https://ethereum.org/
以太坊白皮书:https://ethfans.org/posts/ethereum-whitepaper

以太坊是一个可编程、可视化、更易用的区块链,它允许任何人编写智能合约和发行代币。就像比特币一样,以太坊是去中心化的,由全网共同记账,账本公开透明且不可窜改。

与比特币不同的是,以太坊是可编程的区块链,它提供了一套图灵完备的脚本语言,因此,开发人员可以直接用C语言等高级语言编程,转换成汇编语言,大大降低了区块链应用的开发难度。类似于安卓系统,提供了非常丰富的API 和接口,让用户可以开发出各种App。

以太坊(Ethereum),简称ETH。2013年底,Vitalik发布以太坊白皮书,2014年7月,开始以太币的预售。那时候圈内人称这种代币发行叫“币众筹”。通过为期42天的预售,以太坊团队通过预售60102216个以太币,募集了3万多个比特币;另外还对预售之前参与开发的早期贡献者、长期从事项目研究的开发者分别按照当时以太币发售总量的9.9%进行分配。所以以太坊正式发行时有 7200多万个以太币。

以太坊预售结束后,采用工作量证明机制PoW进行挖矿,每年按照当时发行总量的26%奖励矿工。2014年10月,以太坊将区块的出块时间从60秒缩减到了12秒,目前基本稳定在15秒,每个区块奖励5个以太币。

以太币(ETH)又被称为以太坊内部的燃料。和币类数字资产不同,以太坊除了用于转账,还用于支付智能合约的费用。

什么是智能合约

智能合约是一套以数字形式定义的承诺,承诺控制着数字资产并包含了合约参与者约定的权利和义务,由计算机系统自动执行。

智能合约程序不只是一个可以自动执行的计算机程序,它本身就是一个系统参与者,对接收到的信息进行回应,可以接收和储存价值,也可以向外发送信息和价值。这个程序就像一个可以被信任的人,可以临时保管资产,总是按照事先的规则执行操作。

举一个简单的例子,我跟你打一个赌,如果明天下雨,算我赢,如果明天没下雨,就是你赢了。然后我们在打赌的时候就把钱放进一个智能合约控制的账户内,第二天过去了,赌博的结果出来了以后,智能合约就可以根据收到的指令自动判断输赢,并进行转账。这个过程是高效,透明的执行过程,不需要公正等第三方介入。也就是说,有了智能合约以后,打赌就不能赖账啦。

所以以太坊作为一个平台,可以通过EVM(以太坊的虚拟机)编写智能合约,建立和运行去中心化的应用,并通过以太币(ETH)作为交易代币。

三、应用

应用类项目就是基于区块链开发平台(例如以太坊)开发的能够解决实体经济各个领域诸多问题的区块链项目。

例如基于区块链的预测平台Augur,基于区块链的算力交易平台Golem,基于区块链的奢侈品溯源平台VeChain,基于区块链提供资产兑换及转移服务的OmiseGo。

利用区块链技术,这些项目可以更好地解决信任问题、跨国界流通等问题,同时,利用区块链上的智能合约和代币,可以更好地实现自动执行,大大提高社会经济活动的效率。

应用类区块链项目范围比较广泛,涵盖金融、社交、游戏、产权保护等诸多领域,也是目前区块链项目市值增长最快的领域。

1、Augur

Augur是基于以太坊区块链打造的去中心化预测平台,于2015年6月正式发布,是以太坊上的第一款应用。

比特币与区块链入门教程_第3张图片
augur官网

2、Golem

Golem是第一个基于以太坊区块链打造的计算资源交易平台。通过区块链,Golem能链接全球的算力资源,从而实现计算能力的全球共享。应用所有者和个体用户(算力“请求方”)可以点对点地从其他用户处租用算力(算力“供应商”)。

比特币与区块链入门教程_第4张图片
golem官网

四、资产代币化

资产代币化是指将区块链资产挂钩黄金和美元等实物资产,是实物资产的区块链映射。目前只有不超过10个品种,比较典型的代表是对标美元的USDT,对标黄金的Digix Dao,DigixDAO每个代币代表1克由伦敦金银市场协会认证的黄金。

资产代币化具有方便交易,便于保管等优势。首先,资产代币化更方便交易。因为区块链资产可以拆分,具有更好地流动性。举个例子,目前房产需要整体转让,如果房产可以代币化,便可以拆分购买,更方便交易。

其次,实物资产代币化更利于保管。黄金等在实物交易中,很容易形成磨损,造成损失。但是实物资产代币化后并不需要进行实物转移,更利于实物资产的保管。

1、Digix

黄金是避险的不二选择。Digix发行的黄金代币则是数字资产世界里的黄金,其代币简称DGX,能够在数字资产世界中起到避险的作用。

比特币与区块链入门教程_第5张图片
digix官网

DGX如何实现对标黄金呢?它将黄金资产进行了上链(即:区块链)操作。

举个例子,假如你有1公斤黄金准备出售,你可以将黄金切割出售,但这样太麻烦,而且容易形成损耗。

你也可以将1公斤黄金寄到新加坡,让伦敦金银协会(LBMA) 验证黄金,验证合格后会给你发放黄金资产所有权的证书。

该数字化证书可以转换为1000枚DGX代币,即1个DGX代币=1克黄金。大大地提高了黄金的流通效率。同理,需要提取黄金时,只要你拥有相应的代币,即可换成证书去提取黄金。

2、USDT

USDT是Tether公司推出的对标美元(USD)的代币Tether USD。1USDT=1美元,用户可以随时使用USDT与USD进行1:1兑换。Tether公司执行1:1准备金保证制度,即每个USDT代币,都会有1美元的准备金保障,对USDT价格的恒定形成支撑。某个数字资产单价是多少USDT,也就相当于是它的单价是多少美元(USD)。

(4)区块链可以应用于那些领域?

区块链是去中心化的价值传输体系,具有信息公开透明、不可篡改、全球联通且交易成本低等特点。适合运用于暂时无信任中心、解决信任的成本非常高、跨中心间价值传输等领域。目前,区块链的应用领域广泛。

1、档案管理、专利保护等社会管理领域,物品溯源、防伪等物联网领域,慈善捐款等公益领域均运用了区块链上信息公开透明且不可篡改的特点。

2、交易清算结算、私募等金融服务领域运用了区块链低交易成本的特点。

3、社交、通讯领域,共享租赁等共享经济领域运用了区块链全球联通的特点。

(5)区块链有哪些缺点?

区块链上的信息公开透明,可以有效地防止黑箱操作等现象。但也意味着如果知道某个人的账户,我就能知道他的所有财富和每一笔交易,没有隐私可言。

区块链上的信息不可修改,意味着如果你转账信息填错,谁也无法帮你找回损失。

区块链是去中心化的,节点之间无需中心化机构便可以自证其信,但也意味着每个人都需有一本完整的账本,随着时间推进,账本越来越大,普通计算机可能难以运行。同时,去中心化意味着没有中心化机构替你保存密钥,一旦丢失便永远无法找回。

去中心化网络网络在各个节点之间达成一致的效率很低,很难像中心化支付方式那样快速。

参考文章:
1、http://tech.sina.com.cn/zt_d/blockchain_100 (《区块链100问》新浪联合火币网打造的系列动画)
2、https://yeasy.gitbooks.io/blockchain_guide/content/ (《区块链技术指南》杨宝华、陈昌著)
3、http://www.ruanyifeng.com/blog/2018/01/bitcoin-tutorial.html (《比特币入门教程》——来自阮一峰的网络日志)
4、http://www.weixinqun.cn/huodong/6620.html (《图解区块链》)

你可能感兴趣的:(比特币与区块链入门教程)