• p3.BTC-协议


    数字货币是文件,难伪造,但是容易复制,不像实体货币,花出去就没了,数字货币存在double spending attack,双花攻击。

    去中心化的货币,需要解决两个问题:

    1.货币的发行

    挖矿

    2.交易的有效性

    每个交易都包含两部分,输入和输出。

    输入部分要说明币的来源,输出部分给出收款人公钥的hash。

    这就是一个小型的区块链,这里有两种哈希指针,一个是之前说的连接各个区块之间的,还有一个是指向前面某个交易的指针(可以防范双花攻击)。

    转账的地址是通过公钥算出来的。Bitcoin内部是没有提供查询某个具体的人的公钥的功能,需要通过其他渠道获得,还多比特币地址即公钥在网上二维码的形式贴出来。

    Bitcoin操作过程中的验证过程是通过执行相应的脚本来实现的,Bitcoin Script。

    block header block body
    version transaiton list

    hash of previous

    hash header

     
    target  
    merke root hash  
    nounce  

    分布式哈希表

     分布式的难点:distributed  consensus 一个论断FLP。

    CAP Theorem ,Paxos协议。

     有问题解决方法一:

    1.投票机制

    候选区块发布给所有的节点(全节点),每个节点去验证里面的交易是不是都是合法的。

    问题:a.无法保证每个节点都投票。b.t投票效率无法有效保障,网络延迟。

    最大的问题,所有要确定有投票权的membership ,如:hyperledger fabric 只有大公司才有权利加入。如果恶意节点超过总数的一半,就能控制投票结果了:sybil attach。

    比特币的做法,改进的投票机制。靠算力来投票。利用 hash rate 避免sybil attach

    分叉攻击forking attack

    谁来确定发行货币

    coinbase transaction。

    得到区块记账权获得 block reward  50 BTC  --> 25 BTC 随时已有的比特币越多,每隔21w个区块奖励越少(减半),现在是12.5 BTC。

    这个比特币系统平均每10分钟产生一个新的区块。

  • 相关阅读:
    8 网站用户密码保存
    10 XSRF和XSS
    评分预测
    社会化推荐
    借助上下文信息
    UGC
    冷启动
    Git秘籍:在 Git 中进行版本回退
    Google在三大系统上停止对Chrome Apps的支持
    Windows 的 AD 域寄生于 Linux 机器
  • 原文地址:https://www.cnblogs.com/carlous/p/11042519.html
Copyright © 2020-2023  润新知