比特币改进提议(BIP)科普,你知道有哪些BIP落地了吗?

区块链技术巴比特2017-11-25 06:57:24  阅读 -评论 0

最近有一项新的比特币改进提议(BIP)因其具有非常大的争议性而被社区广泛关注,它就是BIP 148 (隔离见证部署强制激活),其涉及到一种新的软分叉方式——UASF(用户激活软分叉)。根据这一提案的描述显示,如果现有的隔离见证部署在2017年8月1日之前无法激活,那么该BIP将在2017年8月1日至2017年11月15日午夜之间的一个时间点激活。但如果现有的隔离见证部署激活,那这个BIP将停止被激活。

对此,社区内就有人将其解读为:CORE已经放弃95%算力投票共识,将在8月1号无条件强制激活隔离验证。

这里就有一个误区,会有人把草案阶段的提案理解成CORE的共识,也就是Final(落地)阶段。

为了避免让大家产生不必要的误会,这里王司徒有必要科普一下BIP从提出到落地需要经历的步骤,以及当前究竟有哪些BIP。

比特币改进提议(BIP)科普,你知道有哪些BIP落地了吗?

1.BIP提交及审核过程是怎样的?

想要提交BIP,首先应该把自己的想法或文件发布到邮件列表。在经过讨论之后,发起者需要通过电子邮件联系Luke Dashjr <luke_bipeditor@dashjr.org>。经过Luke Dashjr的编辑和通过之后,BIP就会在 https://github.com/bitcoin/bips 发布了。

根据规则,任何人都是可以提交BIP的,注意,在https://github.com/bitcoin/bips 页面上发布一个BIP,并不代表它已被正式接受,当其状态变为激活(Active)时才算正式被接受。而想要让一个BIP正式激活,这需要经过开发者社区的协商同意。

而当前BIP的状态一共可分为9种,它们分别是Proposed (提出)、Draft(草案)、Active(激活)、Final(落地)、Replaced(被替代)、Withdrawn(撤掉)、Deferred(推迟)、BIP number allocated (BIP编号被分配)、Rejected(拒绝)。

巴比特论坛版主玛雅则根据他自己的理解将这个过程分为了7步:

第1步:想法,任何一个人都可以通过任何途径渠道,如论坛,推特等等,提出自己改进初步想法,来争取更多人支持认同。
第2步:提案,可以汇总社区讨论的建议,以较规范的格式,详细地描述方案,形成一个BIP提案文件提交。
第3步:正式提案,对较重要或者认可的人较多的BIP提案分配序号。以便方便大家讨论区分这个提案,有序号的提案算是正式提案。
第4步:落实代码,一些开发者会依据BIP正式提案的构思,落实成具体的代码。并且在测试网络上进行严格的测试。以确保代码尽量没有Bug。
第5步:激活设定,代码没有问题后,根据《BIP9升级规范》,设定激活门槛,分配激活标记位,缓冲时间等。
第6步:发布版本,若足够多的人签名同意,那么会吸纳此BIP代码在最新版本中发布包含这个BIP代码的版本,但是处于未激活状态。
第7步:激活,等待达到BIP9设的激活门槛后,方案正式激活生效。实测是否方案成功。若出现问题可能回到上一版本。

而当前极具争议的BIP 148,目前只是处在草案阶段(Draft),并且根据多位开发者的反应,这一草案能够激活的可能性非常低。

目前落地(Final)的 BIP有哪些?

附当前已落地(Final)应用的BIP列表:

BIP 支持软件版本 标题
9 v0.12.1 版本位超时与延迟(Version bits with timeout and delay)
作者:(Pieter Wuille, Peter Todd, Greg Maxwell, Rusty Russell)
11 v0.6.0 M-of-N标准交易(M-of-N Standard Transactions)
作者:(Gavin Andresen)
13 v0.6.0 pay-to-script-hash 地址格式(Address Format for pay-to-script-hash)
作者:(Gavin Andresen)
14 v0.6.0 协议版本及用户代理(Protocol Version and User Agent)
作者:(Amir Taaki, Patrick Strateman)
16 v0.6.0 Pay To Script Hash
作者:(Gavin Andresen)
21 v0.6.0 URI计划(URI Scheme)
作者: (Nils Schneider, Matt Corallo)
22 v0.7.0 getblocktemplate
作者:(Luke Dashjr)
23 v0.10.0 getblocktemplate – Pooled Mining
作者:(Luke Dashjr)
30 v0.6.0 重复交易(Duplicate transactions)
作者:(Pieter Wuille)
31 v0.6.1 PONG消息(Pong message)
作者: (Mike Hearn)
34 v0.7.0 v2版区块,coinbase高度(Block v2, Height in coinbase)
作者: (Gavin Andresen)
35 v0.7.0 内存池消息(mempool message)
作者:(Jeff Garzik)
37 v0.8.0 布鲁姆过滤(Bloom filtering)
作者: (Mike Hearn, Matt Corallo)
42 v0.9.2 比特币有限货币供应(A finite monetary supply for Bitcoin
作者: (Pieter Wuille)
61 v0.9.0 “拒绝”P2P消息(“reject” P2P message)
作者:(Gavin Andresen)
65 v0.10.4 OP_CHECKLOCKTIMEVERIFY
作者:(Peter Todd)
68 v0.12.1 使用共识执行序列号的相对锁定时间(Relative lock-time using consensus-enforced sequence numbers)
作者: (Mark Friedenbach, BtcDrak, Nicolas Dorier, kinoshitajona)
66 v0.10.0 Strict DER签名(Strict DER signatures)
作者: (Pieter Wuille)
70 v0.9.0 支付协议(Payment protocol)
作者: (Gavin Andresen, Mike Hearn)
71 v0.9.0 支付协议MIME类型(Payment protocol MIME types)
作者: (Gavin Andresen)
72 v0.9.0 支付协议的URI扩展(URI extensions for Payment Protocol)
作者: (Gavin Andresen)
111 v0.12.0 节点_布鲁姆服务位(NODE_BLOOM service bit)
作者:(Matt Corallo, Peter Todd)
112 v0.12.1 OP_CHECKSEQUENCEVERIFY
作者:(BtcDrak, Mark Friedenbach, Eric Lombrozo)
113 v0.12.1 过去中位时间(Median Time Past)
作者:(Thomas Kerin, Mark Friedenbach)
125 v0.12.0 Opt-in Full 费用替代Opt-in Full Replace-by-Fee Signaling
作者:(David A. Harding, Peter Todd)
130 v0.12.0 Sendheaders消息(Sendheaders message)
作者: (Suhas Daftuar)
141 v0.13.0 隔离见证 (共识层)
作者: (Eric Lombrozo, Johnson Lau, Pieter Wuille)
143 v0.13.0 用于Version 0见证程序的交易签名验证(Transaction Signature Verification for Version 0 Witness Program)
作者: (Johnson Lau, Pieter Wuille)
144 v0.13.0 隔离见证(对等服务—— Peer Services)
作者:(Eric Lombrozo, Pieter Wuille)
145 v0.13.0 用于隔离见证的getblocktemplate更新 (getblocktemplate Updates for Segregated Witness)
作者: (Luke Dashjr)
147 v0.13.1 处理虚拟栈元素的可塑性 (Dealing with dummy stack element malleability)
作者:(Johnson Lau)

按开发者参与的BIP进入Final阶段次数从高到低进行排序,那么Top 5依次分别是 Gavin Andresen (8次)、Pieter Wuille(7次)、Peter Todd(4次)、Luke Dashjr(3次)以及Johnson Lau(3次)。

当前有哪些BIP?

附当前所有BIP的列表:

BIP编号 Layer 标题 作者 类型 状态 1 BIP Purpose and Guidelines Amir Taaki Process Replaced 2 BIP process, revised Luke Dashjr Process Active 9 Version bits with timeout and delay Pieter Wuille, Peter Todd, Greg Maxwell, Rusty Russell Informational Final 10 Applications Multi-Sig Transaction Distribution Alan Reiner Informational Withdrawn 11 Applications M-of-N Standard Transactions Gavin Andresen Standard Final 12 Consensus (soft fork) OP_EVAL Gavin Andresen Standard Withdrawn 13 Applications Address Format for pay-to-script-hash Gavin Andresen Standard Final 14 Peer Services Protocol Version and User Agent Amir Taaki, Patrick Strateman Standard Final 15 Applications Aliases Amir Taaki Standard Deferred 16 Consensus (soft fork) Pay to Script Hash Gavin Andresen Standard Final 17 Consensus (soft fork) OP_CHECKHASHVERIFY (CHV) Luke Dashjr Standard Withdrawn 18 Consensus (soft fork) hashScriptCheck Luke Dashjr Standard Proposed 19 Applications M-of-N Standard Transactions (Low SigOp) Luke Dashjr Standard Draft 20 Applications URI Scheme Luke Dashjr Standard Replaced 21 Applications URI Scheme Nils Schneider, Matt Corallo Standard Final 22 API/RPC getblocktemplate – Fundamentals Luke Dashjr Standard Final 23 API/RPC getblocktemplate – Pooled Mining Luke Dashjr Standard Final 30 Consensus (soft fork) Duplicate transactions Pieter Wuille Standard Final 31 Peer Services Pong message Mike Hearn Standard Final 32 Applications Hierarchical Deterministic Wallets Pieter Wuille Informational Final 33 Peer Services Stratized Nodes Amir Taaki Standard Draft 34 Consensus (soft fork) Block v2, Height in Coinbase Gavin Andresen Standard Final 35 Peer Services mempool message Jeff Garzik Standard Final 36 Peer Services Custom Services Stefan Thomas Standard Draft 37 Peer Services Connection Bloom filtering Mike Hearn, Matt Corallo Standard Final 38 Applications Passphrase-protected private key Mike Caldwell, Aaron Voisine Standard Draft 39 Applications Mnemonic code for generating deterministic keys Marek Palatinus, Pavol Rusnak, Aaron Voisine, Sean Bowe Standard Proposed 40 API/RPC Stratum wire protocol Marek Palatinus Standard BIP number allocated 41 API/RPC Stratum mining protocol Marek Palatinus Standard BIP number allocated 42 Consensus (soft fork) A finite monetary supply for Bitcoin Pieter Wuille Standard Draft 43 Applications Purpose Field for Deterministic Wallets Marek Palatinus, Pavol Rusnak Informational Draft 44 Applications Multi-Account Hierarchy for Deterministic Wallets Marek Palatinus, Pavol Rusnak Standard Proposed 45 Applications Structure for Deterministic P2SH Multisignature Wallets Manuel Araoz, Ryan X. Charles, Matias Alejo Garcia Standard Proposed 47 Applications Reusable Payment Codes for Hierarchical Deterministic Wallets Justus Ranvier Informational Draft 49 Applications Derivation scheme for P2WPKH-nested-in-P2SH based accounts Daniel Weigl Informational Draft 50 March 2013 Chain Fork Post-Mortem Gavin Andresen Informational Final 60 Peer Services Fixed Length “version” Message (Relay-Transactions Field) Amir Taaki Standard Draft 61 Peer Services Reject P2P message Gavin Andresen Standard Final 62 Consensus (soft fork) Dealing with malleability Pieter Wuille Standard Withdrawn 63 Applications Stealth Addresses Peter Todd Standard BIP number allocated 64 Peer Services getutxo message Mike Hearn Standard Draft 65 Consensus (soft fork) OP_CHECKLOCKTIMEVERIFY Peter Todd Standard Final 66 Consensus (soft fork) Strict DER signatures Pieter Wuille Standard Final 67 Applications Deterministic Pay-to-script-hash multi-signature addresses through public key sorting Thomas Kerin, Jean-Pierre Rupp, Ruben de Vries Standard Proposed 68 Consensus (soft fork) Relative lock-time using consensus-enforced sequence numbers Mark Friedenbach, BtcDrak, Nicolas Dorier, kinoshitajona Standard Final 69 Applications Lexicographical Indexing of Transaction Inputs and Outputs Kristov Atlas Informational Proposed 70 Applications Payment Protocol Gavin Andresen, Mike Hearn Standard Final 71 Applications Payment Protocol MIME types Gavin Andresen Standard Final 72 Applications bitcoin: uri extensions for Payment Protocol Gavin Andresen Standard Final 73 Applications Use “Accept” header for response type negotiation with Payment Request URLs Stephen Pair Standard Final 74 Applications Allow zero value OP_RETURN in Payment Protocol Toby Padilla Standard Draft 75 Applications Out of Band Address Exchange using Payment Protocol Encryption Justin Newton, Matt David, Aaron Voisine, James MacWhyte Standard Draft 80 Hierarchy for Non-Colored Voting Pool Deterministic Multisig Wallets Justus Ranvier, Jimmy Song Informational Deferred 81 Hierarchy for Colored Voting Pool Deterministic Multisig Wallets Justus Ranvier, Jimmy Song Informational Deferred 83 Applications Dynamic Hierarchical Deterministic Key Trees Eric Lombrozo Standard Draft 90 Consensus (hard fork) Buried Deployments Suhas Daftuar Informational Draft 99 Motivation and deployment of consensus rule changes ([soft/hard]forks) Jorge Timón Informational Draft 101 Consensus (hard fork) Increase maximum block size Gavin Andresen Standard Withdrawn 102 Consensus (hard fork) Block size increase to 2MB Jeff Garzik Standard Draft 103 Consensus (hard fork) Block size following technological growth Pieter Wuille Standard Draft 104 Consensus (hard fork) ‘Block75′ – Max block size like difficulty t.khan Standard Draft 105 Consensus (hard fork) Consensus based block size retargeting algorithm BtcDrak Standard Draft 106 Consensus (hard fork) Dynamically Controlled Bitcoin Block Size Max Cap Upal Chakraborty Standard Draft 107 Consensus (hard fork) Dynamic limit on the block size Washington Y. Sanchez Standard Draft 109 Consensus (hard fork) Two million byte size limit with sigop and sighash limits Gavin Andresen Standard Rejected 111 Peer Services NODE_BLOOM service bit Matt Corallo, Peter Todd Standard Proposed 112 Consensus (soft fork) CHECKSEQUENCEVERIFY BtcDrak, Mark Friedenbach, Eric Lombrozo Standard Final 113 Consensus (soft fork) Median time-past as endpoint for lock-time calculations Thomas Kerin, Mark Friedenbach Standard Final 114 Consensus (soft fork) Merkelized Abstract Syntax Tree Johnson Lau Standard Draft 120 Applications Proof of Payment Kalle Rosenbaum Standard Draft 121 Applications Proof of Payment URI scheme Kalle Rosenbaum Standard Draft 122 Applications URI scheme for Blockchain references / exploration Marco Pontello Standard Draft 123 BIP Classification Eric Lombrozo Process Active 124 Applications Hierarchical Deterministic Script Templates Eric Lombrozo, William Swanson Informational Draft 125 Applications Opt-in Full Replace-by-Fee Signaling David A. Harding, Peter Todd Standard Proposed 126 Best Practices for Heterogeneous Input Script Transactions Kristov Atlas Informational Draft 130 Peer Services sendheaders message Suhas Daftuar Standard Proposed 131 Consensus (hard fork) “Coalescing Transaction” Specification (wildcard inputs) Chris Priest Standard Draft 132 Committee-based BIP Acceptance Process Andy Chase Process Withdrawn 133 Peer Services feefilter message Alex Morcos Standard Draft 134 Consensus (hard fork) Flexible Transactions Tom Zander Standard Draft 140 Consensus (soft fork) Normalized TXID Christian Decker Standard Draft 141 Consensus (soft fork) Segregated Witness (Consensus layer) Eric Lombrozo, Johnson Lau, Pieter Wuille Standard Draft 142 Applications Address Format for Segregated Witness Johnson Lau Standard Deferred 143 Consensus (soft fork) Transaction Signature Verification for Version 0 Witness Program Johnson Lau, Pieter Wuille Standard Draft 144 Peer Services Segregated Witness (Peer Services) Eric Lombrozo, Pieter Wuille Standard Draft 145 API/RPC getblocktemplate Updates for Segregated Witness Luke Dashjr Standard Draft 146 Consensus (soft fork) Dealing with signature encoding malleability Johnson Lau, Pieter Wuille Standard Draft 147 Consensus (soft fork) Dealing with dummy stack element malleability Johnson Lau Standard Draft 148 Consensus (soft fork) Mandatory activation of segwit deployment Shaolin Fry Standard Draft 150 Peer Services Peer Authentication Jonas Schnelli Standard Draft 151 Peer Services Peer-to-Peer Communication Encryption Jonas Schnelli Standard Draft 152 Peer Services Compact Block Relay Matt Corallo Standard Draft 171 Applications Currency/exchange rate information API Luke Dashjr Standard Draft 180 Peer Services Block size/weight fraud proof Luke Dashjr Standard Draft 199 Applications Hashed Time-Locked Contract transactions Sean Bowe, Daira Hopwood Standard Draft

有意思的是,在所有的BIP当中,唯一一个处于Rejected(拒绝)状态的BIP,就是Gavin Andresen提出的BIP109。

讲到这里,读者对BIP也应该有所了解了,关于BIP我们应该要理性对待,只有在进入Active(激活)状态时,我们才认为它是被Core接受的。(本文纯科普,不代表个人立场)

声明:链世界登载此文仅出于分享区块链知识,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。此文如侵犯到您的合法权益,请联系我们100@7234.cn

    参与讨论 (0 人参与讨论)

    相关推荐

    区块链投资趋势报告:巨头入场布局行业趋于成熟

    区块链投资趋势报告:巨头入场布局行业趋于成熟

    来自:https://mp.weixin.qq.com/s?__biz=MzI4NzIxOTY1NA==&amp;mid=2650632639&amp;idx=1&amp;sn=e6d1c29731d992a80410aaee82ec3ea6&amp;chksm=f3d8db16c4af520097e4a64a71b1d4743ac326b9f027

    重新发明货币

    重新发明货币

    一、货币的演化过程 先简单回顾一下人类货币的演化过程,大概有以下阶段: a. 1.0版本:自然货币(贝壳、牲口、金银……) 这个阶段,货币基于一般等价物的稀有性或者实用性,货币不可能出现人为操纵的超发。 b. 2.0版本:早期纸币、银票到本位纸币 当贸易量越来越大,实物货币太不方便了,而且大家发现其实并不在意货币本身有什么价值,在意的只是这么多的货币能不能交换到足够的物品,于是纸币这种信用货

    从比特币交易看欧洲央行虚拟货币分类

    从比特币交易看欧洲央行虚拟货币分类

      互联网对传统社会的颠覆从未停止,在其完成对信息流、商流、物流、资金流的初步改造之后,或将以虚拟货币的形式打破现有货币体系   4月18日,在中国极客张沈鹏创办的比特币交易平台(42BTC.com)上,比特币对人民币的平均交易价为576元。当天,该平台完成了100个比特币的交易量。仅仅过去一周,4月25日上午,比特币对人民币的平均交易价已达到906元。据42BTC网站统计:在过去的32个月

    欧洲央行-比特币报告

    3.1 比特币 3.1.1 基本特征          比特币可能是最成功的,也可能是最有争议的虚拟货币方案,由日本程序员中本聪(译者注:事实上,中本聪是不是日本人,甚至是不是单个人无从考证)在2009年设计并实现。该计划基于一个类似于BitTorrent的P2P网络。BitTorrent是互联网上著名的共享文件协议,应用在电影,游戏和音乐领域。比特币在全球层面上运作,可用于各类货币交易(虚

    彻底玩转比特币地址和私匙

    彻底玩转比特币地址和私匙

    比特币地址和私匙是所有比特币初学者面对的一大难题,再加上那一串超长的字符串,让人更是摸不到头脑。 现在编者以问答的形式,带你一步步的揭开比特币地址和私匙的面纱。 还不知道什么是比特币地址和私匙的同学请点这里 问题一、比特币钱包由什么组成? 答 我们知道,比特币地址和私匙组成了比特币钱包,而私匙则决定了比特币地址上比特币的归属。 地址和私匙 问题二、如果只记得私匙我们还能还原比特币地址么? 答

    用GO语言实现比特币算法

    用GO语言实现比特币算法

    本节的这个例子展示一点点高精度数学包math/big、一点点散列包hash、一点点加密包crypto,还有一点点测试包testing的知识。这里不介绍bitcoin协议和算法——尽管它们很有趣,而是试图指出,Go对多种操作系统的支持,是实现这种跨平台应用的理想语言。 位钱(bitcoin)是一种使用加密手段制作的分布式电子货币。它最初于1998年由Wei Dai提出,并由中本聪(Satoshi

    详解比特币的找零机制

    详解比特币的找零机制

    比特币的找零机制一直让人有些迷惑,明明只向一个地址发送了比特币为什么 blockchain 上面的显示的有时是1个地址对多个地址,有时是多个地址对1个地址,有时又显示多个地址对多个地址? 为什么比特币资深用户要提醒大家当比特币钱包交易100次以上时再次交易后要重新备份钱包,恢复以前的钱包备份有可能会遭遇损失? 是的,这一切都是因为比特币的找零(Change)机制。本文参考 Bitcoin的维

    玩转比特币客户端之一:C盘转移和加速下载

    玩转比特币客户端之一:C盘转移和加速下载

    C盘空间不足?交易数据下载速度太慢?别着急,乐享比特币教你轻松玩转比特币官方客户端。 所有新人开始接触比特币时做的第一件事情大多数是安装比特币的官方客户端。 安全起见大家最好直接访问官方发布渠道sourceforge的地址进行下载:http://sourceforge.net/projects/bitcoin/files/Bitcoin/ 该网页列出了各版本的官方比特币客户端,目前

    麦妖榜
    更新日期 2019-06-19
    排名用户贡献值
    1BitettFan24007
    2等待的宿命23809
    3六叶树20309
    4区块大康18727
    5牛市来了16781
    6天下无双16192
    7linjm122716073
    8lizhen00215114
    9让时间淡忘14475
    10冷风大q11188
    返回顶部 ↑