区块链(一)从比特币谈区块链

一、什么是比特币
          比特币的诞生(从中央集权到民主共和)
                2008年全球经济危机,一个化名中本聪的人在网络上发表论文提出来比特币的概念。2009年中本聪完成比特币网路搭建并将源码开源。
          寻找中本聪
            中本聪从出现直到消失,都没有人知道他的真实身份。
                有人猜测是望月新一。1969年3月29日出生于日本东京,数学家,现为日本京都大学教授,在“远阿贝尔几何”领域中作出过超卓贡献,2012年8月在数学系主页上贴了4篇论文,通过总共长达512页的艰深推理(当代数学论文多为10~20页),他宣称自己解决了数学史上最富传奇色彩的未解猜想:ABC猜想。同时,望月新一也被认为是比特币的疑似创始人。
                后有记者找到了隐居在洛杉矶山脚下的房子里,中本聪是美国特工,喜欢火车模型,在山下隐居。找到他时没有人相信这个窘迫的老人就是比特币的创始人。多利安·中本也否认与比特币的关系。之后真中本尘封五年的电邮发出一封邮件说自己不是“多利安·中本”。
                后又有澳大利亚人莱特声称自己是中本聪,并展示了创始人才有的比特币,业内人士也同意了这个说法。
        区块链世界大事记
时间 比特币价格 事件 影响
2007.5   中本聪开始编写比特币代码  
2008.8   中本聪注册域名bitcoin.org  
2008.11.1   中本聪比特币创世论文《比特币:一种点对点的现金支付系统》在隐秘的密码学讨论组metzdowd.com发表  
2009.1.3   中本聪在位于芬兰赫尔辛基的一个小型服务器上挖出了上帝区块:第一批比特币50个 中本聪在上帝区块中插入了一句话:“英国财政大臣达林被迫考虑第二次出售缓解银行危机”。载自《泰晤士报》的这句话既说明了区块产生的时间,又是在金融危机下对银行系统的冷嘲
2010.5.21 $0.0025 现实生活中有记载的第一次比特币交易:弗罗里达程序员Laszlo Hanyecz用1万btc购买了价值25美元的披萨优惠券 这项交易诞生了比特币第一个公允汇率0.0025美元/btc
2010.7.16 $0.08 经过为期5天的10倍暴涨,BTC价格从$0.008升至$0.08 第一次价格剧烈波动,显示出这种新生事物的特性,伺候比特币每次价格暴涨都被反对者反复诟病(有股酸味
2010.7.17 $0.05 第一个比特币交易平台MT.GOX在东京创立  
2011.2.9 $1.10 价格首次达1美元,1btc与1美元等价 BTC与美元等价的消息被媒体大肆报道后引起人们的高度关注,新用户大增。此后2月内,比特币与英镑、巴西币、波兰币的互兑交易平台先后开张
2011.4.23 $1.70 中本聪发出最后一封电邮后彻底消失 电邮内容是:我已经干别的事了,Gavin和其他人会很好的接手比特币项目。而在4个月前,中本聪就已经停止了论坛发帖
2011.6.8 $31.91 继6月2日汇价迈过10美元后,Mt.Gox上的成交价高达$31.91峰值 4天后价格暴跌至10美元,并经历了半年阴跌
2011.11.14 $1.99 比特币价格创半年新低  
2013.4.10 $266 BTC价格创266美元历史最高  
2013.7.5 $65.40 4.10行情以来的最后一个低点  
2013.12.5   中国人民银行联合工信部、银监会、证监会和保监会印发了《关于防范比特币风险的通知》。《通知》中,央行明确了比特币为“网络虚拟商品”,而不是货币。同事《通知》规定,金融机构与支付机构不得开展与比特币相关的业务。  
2014.2.25   MT.GOX因安全漏洞,关闭网站停止交易。  
2014.3.21   一条关于我国央行取缔比特币交易的小道消息在微博上迅速被传开,引发市场恐慌。当晚,比特币从每个3600元跌破3000元,最低降至2600元,而新上市的莱特币则从每个100元跌到1元。这个事件被称为“321事件”。  
2015.9   分布式账本初创公司R3、LLC公司宣布和高盛、摩根大通、瑞士银行等9家银行结成联盟,共享数据、研究、想法合计数,旨在微金融行业找出基于区块链的解决方案。  
2016.1.5   全球共享金融100人论坛(GSF100)宣布成立“中国区块链研究联盟”  
2016.1.20   中国人民银行数字货币研讨会在京召开,会议要求早日推出央行发行的数字货币。随后央行行长周小川接受媒体采访表示:数字货币终将取代纸币!  
2016.5.2   澳大利亚企业家克雷格·莱特上BBC坚称自己是中本聪  
2016.6.17   DAO众筹项目遭遇黑客攻击,以太坊被迫硬分叉 这在区块链历史上留下了沉重的一笔,由于编写的智能合约存在重大缺陷,区块链界最大的众筹项目TheDAO被攻击,导致300多万以太币资产被分离出资产池。
2016.7.10   比特币产量第二次减半,每个区块奖励从25变为12.5个比特币  
2016.7.20   区块链世界里第二大市值的以太坊硬分叉完成。 TheDAO被攻击后,软分叉和硬分叉之争成为焦点。
2016.12   超级账本成员总数突破100个,中国企业占四分之一。 超级账本(hyperldger)是Linux基金会于2015年发起 的推进区块链数字技术和交易验证的开源项目,加入成员包括:荷兰银行(ABN AMRO)埃森哲等十几个不同利益体,目标是让成员共同合作,共建开放平台。
2017.4.1 ¥6900 日本比特币合法化  
       
       
到这里就可以直接登录交易平台网站查看比特币交易K线:https://www. chbtc.com (周线)    涨幅最能说明2017年形式的发展

之前我们提到比特币,声音总集中在分析比特币是不是骗局。而现在,讨论的声音都是比特币到底能不能成为法定货币及它的通缩特性上。

二、比特币的交易和使用
          如何获得比特币
              挖矿,购买
        如何使用比特币
              支付, 交易平台
        存储比特币就是如何保存和管理比特币私钥。有三个目标:可获取性,安全性,便利性。如何做到一小部分钱带在身上,大部分钱存在别的地方?

比特币钱包软件:一个管理你比特币和私钥,让你方便使用的应用软件。
钱包下载地址: https://www.btctrade.com/wallet.help.html

要使用或接收比特币,需要与对方交换地址。目前有两种主流加密方式,一种是字符串(Base58码,一个包含58个字符的字符集来编码),一种是二维码。
存储:冷存储:把比特币放在个人电脑里,方便但不安全。冷存储:离线,不联网封存。分开存储也要不同的私钥。
有几种方法:分层确定性钱包、大脑钱包、纸钱包、防损硬件。可以多种结合使用,但风险还是存在。
其他方法:密钥分存,密钥共享。
            

     矿工的一天
        挖矿潮好比当年的淘金热,早去的人确实大赚了一笔,但现在潮水已退。
        挖矿需要什么
             矿机,以目前的全网算力,不成立一个矿池挖到矿的概率低到可以忽略。

        
        矿工的任务
            挖矿,首先必须加入比特币网络并与其它节点相连。建立连接后,有六个任务:
一、监听交易广播。(监听网络上的交易广播,然后验证他们的签名是正当有效的,交易输出没有被重复支付)
二、维护区块链网络和监听新的区块。(监听并验证交易)
三、组装一个备选区块。(你可以把监听到的交易放进去,保证都是正当有效的)
四、找到一个让你的区块有效的随机数。(想赚钱。。。挖矿!!!创建新区块的奖励多啊)
五、希望你的区块被全网接受。(不接受,算出来也没用)
六、利润。(创建区块的奖励和放入这个区块的交易队列手续费就都是你的啦。。。哈哈哈)


        挖矿的激励与策略(每产生剩余总量的50%新增区块的赏金减半)
                如果: 挖矿奖励 > 挖矿成本
                那么: 挖矿奖励 = 区块奖励   +   交易费 ;挖矿成本 = 硬件成本 + 运营成本(电费,空调等)
影响因素:挖矿时间影响电费,硬件影响挖矿算力,比特币与法币汇率影响收益,

2015年全网算力挖矿用电相当于全球最大核力发电场发电量10%   , 目前还在不断增加。
 
三、从比特币谈区块链原理
     区块链是比特币的底层技术。可以说,比特币是区块链的一种应用形式。
        密码学及加密货币
                顾名思义,加密货币采用了密码技术。这里我们主要说下哈希算法和数字签名。
                哈希函数满足三个特性:
                碰撞阻力:如果无法找到两个值,x和y,x≠y,而H(x) = H(y),则称哈希函数H具有碰撞阻力。
                                注意:没人能找到碰撞,不代表不存在碰撞。
                                应用:信息摘要。 如果我想知道我上传的文件是否被篡改,我可以对原文件进行哈希,下载文件后在进行哈希,进行对比。
                隐秘性:如果,当其输入 r 选自一个高阶最小熵的概率分布,在给定H( r || x )条件下来确定x是不可行的。
                                注意:保证输入域足够大而分散,如果输入不满足要求,可以与一个满足要求的分散输入结合。
                                应用:承诺。输入绑定随机数得到输出,并用同样方法验证的过程。
                谜题友好:如果对于任意n位输出值y,假定k选自高阶最小熵分布,如果无法找到一个可行的方法,在比2的n次幂小很多时间内找到x,保证H(k||x)=y 成立,那么我们称哈希函数H为谜题友好。
                                注意:搜索谜题没有捷径,除了搜索庞大空间来进行求解,别无他法。
            数字签名:
            第一,只有你可以制作你自己的签名,但任何人看到它都可以验证其有效性;
            第二,我们希望签名只与某一特定文件发生联系,因此该签名不能用于表明你同意或支持另一份文件。
                    

比特币的区块
     区块链是由两个基于哈希值的数据结构组成的,第一个是区块的哈希链,第二个是树状的数据结构(梅克尔树)。每个梅克尔树都有一个币基交易,创造区块的交易:没有指向上一个资金来源的指针,币基参数可以放任何值(例如中本聪的嘲讽)。
     展示下区块链的图


            区块链的数据结构:
            •上一区块头的哈希值
            •时间戳
            •挖矿难度值
            •工作量证明随机数(nonce)
            •包含该区块交易的Merkle Tree的根哈希 

            交易区块数据结构:梅克尔树,以太坊:帕特里夏树

            如果有人想要篡改区块链中任意地方的数据,为保证数据一致,他需要篡改所有的哈希值直到最开始的地方。最终遇到链表头部(梅克尔树根指针)将不能篡改。
            
        比特币如何做到去中心化
                去中心化是一个重要的概念,这个概念并不是比特币所独有的特性。
          下面说下比特币如何做到去中心化:实际上比特币并没有真正解决分布式共识问题,而是通过特定货币系统解决了这个问题。
          共识机制
            达成共识有几个难题:
                1.有的借点会死机或是根本就是恶意节点
                2.就比特币而言,点对点网络是不完美的,并非所有对应的节点是两两相连的。要执行一个所有节点都参与的共识协议好像并不现实。
                3.由于交易信息是分布在整个网络上,信息传递会有严重延迟。
                4.节点之间没有一个统一的全球时间概念

              拜占庭将军问题:其实就是少数服从多数。

                如何达成分布式共识?
                每隔十分钟,每个节点都提议,自己未被认可的交易成为已经达成共识的区块链后面的下一个区块。然后每个节点都把自己提议的交易作为输入,有些没被写入的正当有效交易可以等待下一次机会。
                比特币没有规定共识的起点和终点,共识是通过一段较长的时间达成的,随着时间的流逝,我们对某一个块的认识与最终总体共识吻合的概率越来越大。一般达到6次确认就可以放进区块链。

        奖励机制与工作量证明(POS/POW)(51%攻击)
            奖励机制:
                给表现诚实的节点奖励,奖励那些创造区块最终被放进长期共识链的节点。
                比特币中有两种不同的奖励机制:
                一种就是区块奖励,创建区块的节点可以在这个区块中加入一笔特别的造币交易,节点可以自己制定接收地址。区块奖励最初是50个BTC,每生成210000个区块,也就是每四年减半一次。区块奖励是比特币被允许创造出来的唯一途径。
                一种是交易手续费奖励,把交易写入共识链区块的节点会针对每笔交易收取手续费。

            为什么区块奖励会做到奖励诚实行为?
            只有节点提议的区块被纳入长期共识链才会得到奖励,而被纳入的节点必定是诚实的。

            工作量证明(proof of work):依据是计算能力
            (还有另一种权益证明(proof of stake):根据币的拥有量。暂不讨论!)
         计算能力决定被自动选中的概率。比特币是用哈希函数解谜来证明工作量的,任何提议并创建区块的节点想要制造下一块,这个节点必须找到一个数,我们把它称为临时随机数。当把这个随机数、前序区块的哈希值还有要被写入新区块的交易数据列表连接起来,组成一整串字符,然后用哈希函数计算输出值。输出值命中目标区间(小于目标哈希值),则挖矿成功。
            H( nonce || prev_hash || tx || tx || tx || ··· || tx )< target
            区块要保证10分钟出一个新块。随着全网算力提升,计算难度也要不断提升才能保证10分钟出块。2014年年底,产生一个区块平均要10的20次幂运算,每产生2016个区块之后,所有的节点都会自动重新计算目标区域相对于整个输出范围的比例大小,使得后续的区块产生的时间间隔约为10分钟。
            这意味着,一个矿工花费了一笔资金挖矿,但整个挖矿体系在不断增加,越来越多的矿工加入,部署了越快的硬件设备。你找到一个区块的工作量就增加了,概率也降低了。找到区块的概率取决于全网算力。
            为什么是10分钟?
            这是比特币的理想时间间隔,其他币定义也不一样,主要是将交易打包成块,对信息进行优化处理。

            这时候只要以计算能力为权重的大多数矿工遵循比特币协议,攻击就没可能发生。
             
启动加密货币:
     比特币系统里三个不同的想法-----区块链的安全性,挖矿生态系统的健康程度,货币的价值。
如何避免出现51%攻击呢?反过来说:一个黑客不能够制造一大堆挖矿节点来占据50%以上的新区块生成。   
前提是有一个健康的挖矿生态系统,大部分节点诚实,遵守协议。那一个健康挖矿生态系统的前提呢?(也就是怎么保证矿工把算力都投入到解哈希谜题的竞争中呢?)是比特币的价值,比特币兑换法币汇率。那如何保障币的价值和稳定性?需要用户普遍相信区块链的安全性(信任)。
        比特币初创时,三者都不存在,只有中本聪自己挖矿,比特币作为货币也没有什么价值,这时候没有很多人挖矿,区块链也不安全,任何人都可以颠覆这个过程。

     
      比特币网络
          一个节点3个小时没有音讯就会被其他节点忘记。
        每秒钟只能处理7个交易。visa平均2000/秒,峰值10000/秒。
修改协议:
硬分叉:可能会造成之前版本的协议失效。这样有一部分没有更新的节点(老节点)和新分支会分别扩展不同的区块链。
软分叉:加入新的特性,让现有的校验规则更严格。老节点依然会接收所有区块,而新节点会拒绝一些。


四、另类币与 区块链的未来
       
            政府管制
     政府之所以注意到比特币这样的数字货币的原因之一在于,不可追踪的数字货币不收资本管制。政府如果想对比特币进行监管,就必须吧比特币与当地法定货币银行系统隔离开来。
     因为比特币交易的匿名性,人们可以很轻松的转账,参与交易不需要绑定组织和个人,逃税就很方便。同时,远程转移资金不通过监管机构,买卖非法商品就更容易。较为突出的黑市包括绵羊集市、丝绸之路、丝绸之路2.0、黑市重装上阵、进化、阿格拉。美国联邦调查局打击丝绸之路的过程中缴获了174000个比特币。
     强制上报:要求必须将达到一定限额的交易明细上报
     
          另类币
    莱特币,狗币,以太币等等

     莱特币:莱特币具有三种显著差异。第一, 莱特币网络每2.5分钟(而不是10分钟)就可以处理一个块,因此可以提供更快的交易确认。第二, 莱特币网络预期产出8400万个莱特币是比特币网络发行货币量的四倍之多。第三, 莱特币在其工作量证明算法中使用了由Colin Percival首次提出的 scrypt加密算法,这使得相比于比特币,在普通计算机上进行莱特币挖掘更为容易。
     以太币:以太币是一种雄心勃勃的另类币,致力于提供一种满足图灵晚辈计算要求的可编程语言。在以太坊体系,一个合约就是一个存在区块链里的程序。合约可以再以太坊专用虚拟机EVM执行。以太坊支持循环语句,不存在死循环;以太坊通过燃料机制实现这一点,每执行一条虚拟机指令都需要花费成成本,这个燃料费用就是通过以太坊体系内部的以太币支付的,ETH:12秒出块,没有上限。 









你可能感兴趣的:(区块链,资料,学习,面试)