区块链除了借钱 区块链学习笔记

入门知识 4个月前 (02-22) 30次浏览 0个评论

最近在Geek Time上学会了左耳听风专栏。有一个关于区块链的小章节,是根据我自己的经验和理解记录下来的。

学习专栏章节描述

左耳鼠标,我看了很久以前鼠标大叔写的《跟我一起写》。这是最早的接触。接触了微博,酷货上关于加班的讨论,还有现在的专栏,在我的印象中,越来越高,散发着不少干货。

区块链 侧链_区块链除了借钱_区块链方法如何识别区块

鉴于是付费栏目(但绝对物超所值,推荐)区块链除了借钱,我只简单记录一下我的一些学习记录和理解。

学习笔记参考:区块链技术精髓 支持和不支持区块链的观点 去中心化比特币交易处理流程比特币、分布式账本系统:区块链工作证明共识机制(POW,Proof-of-Work) 参考:区块链技术详情:哈希算法 上一个数据块的地址 比特币的哈希算法

区块链协议格式图

区块链 侧链_区块链方法如何识别区块_区块链除了借钱

其中,Version、Block Hash、Merkle Root、Target、Nonce六个数据字段是区块链的区块数据协议头。以下数据为交易数据,分别是:该区块的交易数量H和交易列表(最大不能超过1MB,中本聪没有解释..)

(以太坊有三种不同的 Merkle Root 树,需要更多的 Merkle Root,因为以太坊要玩智能合约。),出块时间。Target,Bits表示当前哈希生成的难度,4字节。Nonce,一个随机值,用于查找满足某个条件的哈希值。4字节。

对这六个字段进行哈希计算,就可以得到这个区块的哈希值,也就是它的ID或者地址。两次哈希块头:

区块链 侧链_区块链方法如何识别区块_区块链除了借钱

SHA-256(SHA-256(块头))

在比特币中,一笔交易可以有多个输出,也就是说我可以给多个人发一笔钱,但是一个输出只能对应一个来源的输入,并且有一个条件是输出的总数并且输入必须匹配。

比特币没有余额的概念。计算多笔交易后剩余的金额在比特币中称为 UTXO(未花费输出)。

区块链 侧链_区块链除了借钱_区块链方法如何识别区块

因为UTXO没有账户和余额的概念,所以可以并行进行多笔交易。如果你有多个 UTXO,你可以在没有并行锁的情况下进行多个事务。然后它还具有匿名性的特点,你可以隐藏你的交易目的地(通过设置多个输出),没有余额意味着没有状态。

要知道你有多少比特币,你只需要统计UTXO交易记录。(以太坊使用平衡法)

参考:区块链技术细节:加密和挖矿证书 在比特币的世界里,每笔交易的 From 和 To 都是每个用户的公钥。即使用用户的公钥进行交易的账户。而且比特币不需要证书,公钥确实是Mike的,不用认证,也不怕中间人攻击。挖矿哈希值本身是一个相对随机的字符串。但是要让这个随机字符串有规律是非常困难的,除了使用蛮力之外别无他法。在计算机世界中,我们称之为“哈希碰撞”(hash),碰撞的前几位都是0哈希值。所以一般的挖矿流程如下。一旦矿工成功打包一个区块,他就会告诉其他矿工。收到消息的矿工将停止工作并开始验证。验证通过后,会广播给其他矿工。因此区块链除了借钱,满足条件的难度系数成为挖矿的关键。设置这个难度系数是为了让整个网络平均在10分钟内生成区域名称。参考:区块链技术细节:去中心化共识机制

拜占庭问题的难点在于系统中随时可能有多个提案(因为提案的成本很低),并且很难完成最终的共识确认过程,很容易受到干扰。但一经确认,即为最终确认。

如果比特币系统在某个时刻有两个同时合法的区块,那么两者都承认它。结果,两个合法的分叉(术语“分叉”)出现在区块链上。此时,矿工可以选择任意一个分支继续,当一个分支的长度超过另一个分支时,短分支将立即失效。对于比特币/以太坊,前提(加入其网络/集群的节点)是不可信的,它们只信任超过一半的节点同意的内容。

可以纠正系统中的临时不一致

无论你是从事区块链还是分布式,都需要了解拜占庭容错系统研究中的三个重要理论:CAP、FLP和DLS。工作量证明(简称 PoW)PoW 有两种协议。另一个叫-协议,用于身份验证。就是这样的约定。通过挖矿-PoW等协议大大增加了修改的成本,以至于恶意的人需要花费大量金钱来修改一个地方。这几乎是不可能的。工作量证明实现:增加数据篡改成本,增加网络中不同声音的成本,解决差异(这使得整个去中心化系统的一致性,不再基于大量的数据认可人,但以计算能力较高的人认可的数据为准。)还有严重的问题:记账越来越中心化(算力问题,普通人几乎不可能参与),越来越无法运行(链越来越长,导致需要验证数据是否正确的成本越来越高)。以太坊中的权益证明协议(PoS:Proof of Stake)是根据所拥有的以太币总量来确定成为问题的概率:一个攻击者可以发起Nothin-At-Stake攻击,两个分支开发也可以发起双重支付,甚至发起“贿赂攻击”DPoS 机制参考:区块链技术细节:智能合约以太坊智能合约另外,我们必须小心智能合约。有程序就有bug,现实生活中就有bug,并且合同中会有错误。当出现bug时,大家可以互相协商修补合同(增加条款,或者重新签订合同)。然而,代码合约不同,漏洞也被无情地执行,一旦执行,就很难补救。参考:区块链技术——传统金融与虚拟货币

挖矿网Ethos中文站简单易用的挖矿系统,为挖矿产业提供教程软件以及矿机测评交易信息等,挖矿网各种数字货币挖矿收益对比计算,挖矿网介绍挖矿的工具,以及矿场的最新消息等。http://www.ethospool.com/

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址