zoukankan      html  css  js  c++  java
  • p4.BTC-实现

    比特币是基于 transaction-based ledger.(隐私保护性很好,但是在转账中需要说明币的来源,比较麻烦)

    比特币的全节点需要维护一个UTXO的数据结构(unspent transaction output ).

    获得记账权后,为了自己的交易信息还会在区块中打包别人的交易信息,为了鼓励这种维护账本的行为,协议中也规定了相应的transaction fee。不过比较少,一般是千分之几个BTC。

    以太坊是基于 account-based ledger(这样就不用说明币的来源).

    挖矿的概率分析

    比特币的初始来源只有挖矿奖励,根据奖励的规定,比特币的总量是可以计算出来的(2100w BTC)。

     Bitcoin is secured by mining.

    假设某个恶意节点获得记账权:

     Bitcoin是要求扩张最长合法链,对应包含非法交易的区块,如果没有被诚实节点接受,则它不在最长合法链上,不仅无法交易不成功,还会损失区块奖励。

      Bitcoin的不可篡改性是通过多个诚实节点的确认后,篡改性概率上成指数型下降,一般是在一个新生产的区块上后面经过6个确认后,认为前面的交易是不可篡改的。

    分叉回滚交易,实现双花攻击

    正常情况下,也存在合法交易没有被写入区块链的,可能就是当时交易太多了,因为规定每个区块最大不超过1M字节。那只能等到下一个区块发布的时候去记账。

  • 相关阅读:
    CSS快速入门
    Kafka (一) 核心概念
    软件工程模型
    函数式编程
    spark计算操作整理
    HBase 文件合并
    HBase 数据存储结构
    目的论浅谈
    PHP8的注解
    JS的移入移除
  • 原文地址:https://www.cnblogs.com/carlous/p/11068772.html
Copyright © 2011-2022 走看看