区块链

 区块链的两大产品:比特币,以太坊
         去中心化模型:
          中心化模型: 例如三个人将一定的本金放到一个指定的后台作为自己的初始资产,那么这个后台一定概率情况下,将这笔钱放出做贷款,或者跟某个客户私下偷换数据,如果拿去放贷款等,那么这个后台他在预定时间没有要回,或者修改数据怎么办,因为总帐在后台这边,我们不清楚后台会拿存放过去的钱做什么,所以有了去中心化的思想,解决这个问题。
           去中心化模型中点对点通信(peer to peer): 那么将这个记账的事情,交给所有人来记,那么想要做数据的假帐,就非常困难,所有人都记账,你的与我的不一样,那么就不正常。如果这三个人斗地主,输赢的钱帐本由很多人来记录,这个很多人记账的时候,有人优先记录了算出了这个帐,然后分享给其他记账的人,那么会对这个优先记出来的人奖励,(比特币就是如此,你先计算出并同步出来,那么就给你奖励)。这个没有固定的一个来作为总记录帐的,是有人优先算出,然后同步给所有人,然后其他人也再次同步刚刚先算出来的人发布的信息,保障数据一致性。
        账本隐私问题:
             按照去中心化的思想,那么算出后同步信息发布给别人时,因为涉及资金等信息,所以发布的过程泄露了信息怎么办?这个例如比特币,他会将重要信息(比如账户,或者转帐人信息)全部使用hash算法进行加密,然后再次发布出去。
        账本一致性:
            账本是每个人都有的本地记录,假如我有一千块:我与A用户进行交易,我将这1千从我账本转移给A,我与A互相同步账本,但是我在这个消息还没有同步给所有的人的时候,没有收到我已经将我钱都花出去的信息的人是不知道我已经没钱了,我乘机与不知道的人B再次交易,在B这里再买一千的东西,然后我们互相记录,那么在所有节点中会出现两个信息,我买了A的东西,A现在的账本是n+1000; 第二个信息,我买了B的东西,B的账本是n+1000;这时就出了问题,就会生成两条链  在比特币中称为双花。   在正常情况下,只能判定第一个信息是正确的,因为与A交易在先,那么B就不算正确信息,但显然也不符合道义。
            此案例映射到比特币中,比特币是怎样解决这个问题的呢?比特币系统的规则是:最长链为最可信任的链条。  比特币也是一条链接着一条链,每个链都是一个账本,每次交易变化都会生成下一条链,由下一条链记录所有交易后的信息。      如果某用户伪造自己为最长的链,那么数据也是会崩掉的, 比特币中是由矿工解决这一问题,(矿工:创造区块,使链增长)成为矿工是由算力获得矿工的身份的:系统内计算机进行算力比拼,胜出的获取记账权,将交易信息打造成新的区块,然后同步给其他节点。  此时回到案例引出的问题,也就是说在比特币中,我想要做假账,那么我需要每次在所有节点中每次算力比拼中获取头筹,那么我才能每次同步出我的记录的数据,然同步给所有节点,那么如果我失败了一次,下一个区块记录的信息是其他节点给出的,那么我如果再次获取记账权的时候,我只能顺应其他节点给出的区块之后继续生成链。 所以基本不可能会由假帐,因为所有节点中连续拥有记账权是不太可能的。
        记账的获取方式与工作量:
            当前的交易信息生成一个区块==》此时机器生成一个nonce值,初始值为1,区块信息与1进行哈希,获取到一个哈希值(例如是300)==》比特币系统生成一个哈希值(例如200)==》此时会将比特币系统生成的哈希值与节点的哈希值进行对比(等于或者大于小于这个比特币系统哈希值)==》如果不符合,那么数据返回,将区块再次与nonce+1进行哈希(每次哈希不符合,重新哈希的之后,Nonnce值都加一)==》直到哈希值符合,那么就获取到记账权        Nonce就是工作量    
        比特币的分叉:
            分叉一般原因是使用了不同版本的比特币系统进行挖矿,导致链条分叉,这是矿工在比特币系统协议层上产生了分歧;  分叉类型为:硬分叉与软分叉
            硬分叉: 比特币是分布式节点,但是节点的版本如果有部分更新最新版本,部分没有,那么没更新的不认可更新的机器发出的新东西。        一般一个区块是1Mb大小, 每个交易占用的大小约为250Byte ,每个区块的交易笔数大概是4194笔,需要10分钟左右的时间来完成,换算后就是全球是每秒7笔交易,这效益很低,所以需要扩容区块的大小。例如新版本每个区块数据为8Mb, 那么如果有节点就是不更新,那么链就出现问题,更新的节点后续的区块都是8Mb的,不更新的后续数据还是1Mb的,那么这两个不同的链就是硬分叉,而且无法合并。  新版本更新的区块被称为比特币现金,而未更新的链被称为比特币。
            软分叉: 软分叉可以合并,篡改数据后形成的分叉。
        比特币总结:
            比特币不是一种货币,是一个分布式的财务系统。 账本由各个节点同步和对账,账本记录,由节点广播到网络,保持其余节点数据一致,去中心,并非没有中心,而是中心一直变化,去中心的弊端比特币都进行了解决:账本隐私(hash加密),快速对账,账本正确性(使用工作量Nonce作为账本正确性,伪造的账本想成为主链,必须和其他节点比拼算力,长时间的保持 算力优先,才有伪造的可能,但想要长时间算力优先,难度巨大,维护成本大于伪造的利润),

        比特币的诟病:
                1.交易速度慢,出块时间10分钟,换算每秒的交易次数不够全球使用
                2.使用pow算法,耗电
                3.比特币仅仅完成了货币的去中心化,只是将货币做到了由大家认可的一定程度的管理。
        比特币优点:
                1.何时何地都可以支付,无银行假日,无国界,完全允许用户控制自己的资金
                2.手续费用极低,
                3.降低商家风险,交易更安全,不可撤销,顾客信息隐秘,避免了由欺诈性退单等
                4.用户完全控制自己的交易,商家无法强制收取额外的不该有的一些费用

区块链技术形成:(以比特币为例)  比特币就是典型的区块链技术,这个模式被称为区块链1.0
        主要技术名称(统称区块链):
            1.分布式数据存储:在每个参与的电脑上备份,账本实时同步与对账,
            2. 点对点传输:节点分布在全球,所以没有设置中心节点,直接互相通信
            3.共识机制:比特币主链容易出现分叉,但是最终会合并到主链上,使用pow算法保障账本一致性
            4.加密算法:隐私信息都进行了加密处理,保障信息安全性
   

以太坊(区块链2.0):

        比特币的出现,让经济贸易变得简单,而比特币系统的不足,也同样被人诟病,于是出现了致力解决比特币不足的“以太坊” 以太坊的改进了出块速度,为了减少能源消耗,改善了pow算法, 最重要的是以太坊的智能合约。 往常交易后出现纠纷需要合同起诉打官司,才能追回部分资金。比特币之前也是没有考虑这一项。 而以太坊的智能合约就是解决这一方面。  以太坊的这个智能合约是将交易中的合约作为固定的代码写入到这此交易中,如果由违反,那么会执行合约中的定义,扣去账户的东西。  与常规纠纷的区别在于,常规的纠纷后,需要去打官司等, 但是这个智能合约,完成了合同的去中心化, 这个智能合约完成后, 不用像常规打官司等怕一些黑幕等事件,不受人为因素的影响了,违反规则,直接扣除保障金等,看合约执行代码了

以太坊的定义:

posted @ 2022-04-26 16:47  k大吉大利  阅读(171)  评论(0)    收藏  举报