热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

关于Bitcoin的分叉之路

今年对与bitcoin来讲是不平凡的一年,它经历了价格的暴涨、腰斩和再次暴涨,对于这些现象背后的利益博弈网上分析的文章很多,我就不再赘述了。我们从技术的角度上分析一下bitcoin的发展历程,同时预测

今年对与bitcoin来讲是不平凡的一年,它经历了价格的暴涨、腰斩和再次暴涨,对于这些现象背后的利益博弈网上分析的文章很多,我就不再赘述了。我们从技术的角度上分析一下bitcoin的发展历程,同时预测一下未来的前景。

Bitcoin要硬分叉的消息就像狼来了一样,不过最后还是来了,最终会分化成以下几个链:

Btc:支持隔离见证,打死都不扩容,说1M就是1M,中坚力量是所谓的core党。

Btc Cash(BCC):不支持隔离见证,8M大区块才叫爽,低手续费,高交易速度,你值得拥有,中间力量是BU党。

Btc Golden(BTC GPU):支持隔离见证,更换了挖矿算法,从sha256切换到了Equihash(Zcash用的挖矿算法),最大的影响就是以后要用GPU挖矿,ASIC矿机用不了了。

Btc2:纽约共识达成的Segwit2x计划,隔离见证+2M区块,预计11月会分叉,背后是很多大矿主和交易平台。

如下图所示(图片来自巴比特网站):

Bitcoin今年最大的特征就是分裂,大路朝天各走一边。我们可以看出上面分叉的地方和即将分叉的地方有两个关键性点:区块扩容隔离见证

扩容比较好理解,就是上调区块大小的阈值,那么隔离见证又是怎么一回事?

没有隔离见证前一个交易数据如下:

“inputs”: [  //输入

{
"addresses": [
"1FgnZaSAjRb4AXZdWJBURNWEMiBVTRnc9w" //老刘地址,指明了打赏币的来源是来自老刘的地址锁定的币      ],
“value”: “4.84540000″,
“value_int”: 484540000,
“txid”: “384c16f1a0f434775f640e55a35e79847b1a8ac5d184bef87cca054581a569d7″,//收入来源交易单的散列值

“vout”: 1,
“script_sig”: {  //老刘的私钥签名

“asm”: “30450221009b5f141a1de247313bf4c1d51dda7e12d05afcbb2fe2352492f9aca104be3f95022020504ed638b837e5db087e488d212f20e4ed0f4a7d4172a51d455d377da7417701 031d96241bd479299b73f4335da47350f64985aa37558a526877e48a255c62bbe3″,

“hex”: “4830450221009b5f141a1de247313bf4c1d51dda7e12d05afcbb2fe2352492f9aca104be3f95022020504ed638b837e5db087e488d212f20e4ed0f4a7d4172a51d455d377da741770121031d96241bd479299b73f4335da47350f64985aa37558a526877e48a255c62bbe3″

},

“sequence”: 4294967295

}

],

“output_count”: 2,

“outputs”: [//输出

{

"addresses": [

"14mhzjkJ71oMAMkKu3dy98dnUpkyQBHL1r"//我的地址,打赏的币被我的地址锁定

],

“value”: “0.00330000″,//老刘打赏给我的金额

“value_int”: 330000,

“n”: 0,

“script_pub_key”: {//我的公钥脚本

“asm”: “OP_DUP OP_HASH160 295ce6a5684ebdbd526765231e25d36c34fc0e50 OP_EQUALVERIFY OP_CHECKSIG”,

“hex”: “76a914295ce6a5684ebdbd526765231e25d36c34fc0e5088ac”

},

“req_sigs”: 1,

“type”: “pubkeyhash”,

“spend_txid”: “b1fdf100105a0f3894d5aade320a2beb420195546ddea440c334b6280cbd6310″

},

{

“addresses”: [

"1FgnZaSAjRb4AXZdWJBURNWEMiBVTRnc9w"//这是找零地址,找回老刘自己的地址里。

],

“value”: “4.84200000″,

“value_int”: 484200000,

“n”: 1,

“script_pub_key”: {

“asm”: “OP_DUP OP_HASH160 a1180435a4616f2094837e3eeac46bb0b81b50e6 OP_EQUALVERIFY OP_CHECKSIG”,

“hex”: “76a914a1180435a4616f2094837e3eeac46bb0b81b50e688ac”

},

“req_sigs”: 1,

“type”: “pubkeyhash”,

“spend_txid”: “c13e66805b283df162b5c9ed95c2c1f35ca9c93d2293cd3641509e7a2321c9db”

}

],

“tx_index”: 99579908,

“block_index”: 833

}

在隔离见证之后私钥签名就包含在交易的数据结构体里面了,而是替换为一个指针地址指向发起方签名,这些隔离认证的交易签名也会以默克尔树的形式存储,但是只存储在矿工节点和记账节点。

  这样每条交易的数据变小了,区块可以打包的交易数量自然就变多。隔离见证这个技术一直比较有争议,将签名数据和交易数据分开是否会降低交易真实性的保障?这还有待商榷。而扩容也会导致区块在p2p网络传播速度变慢,增加区块同步的延时更容易造成分叉,同时会提高对节点的网络通信质量的要求,增大硬件开销。其实无论是隔离见证还是扩容都是为了提高比特币网络的交易吞吐量,基本的思路都是增加每个区块内包含的交易数量,但为什么会产生这么大的争议?归根结底还是代表的利益团体不同罢了,Bitcoin core认为扩容会导致普通用户的影响力被削弱,因为矿池和矿池之间通过专用的高速网络进行区块同步,所以扩容对矿池不会造成影响,但对于普通用户而言会产生很大的影响(如区块同步延迟变高,永远在后面吃灰),最终导致中心化。但实际上比特币的中心化已成定局,高算力和高内存的开销导致普通用户对挖矿望而却步(根本就是赔本买卖),甚至充当记账节点的意愿都很低,现在不加入矿池基本已经挖不到矿了。

  作者认为无论是扩容还是隔离见证都是扬汤止沸,不能从根本上解决交易拥堵问题。闪电网络倒是一个不错的出路,现在Ethereum也面临着同样的问题,他们也推出了一个类似闪电网络的解决方案,通过这种 链下支付 + 统一结算 的方式来减缓主链的压力。举个例子,Alice和Bob两个人经常有交易往来,但是老走链上太慢了,于是两个人建立一个点对点的快速支付通道,双方共同维护一个账本,记录两个人的交易往来,等买卖结束了咱再算一下总帐看看到底要支付对方多少Btc? 然后提交到主链上面去进行实际转账。

  目前,由于矿池的崛起和交易平台的兴盛导致中心化日益加重,现在有很多人对于Bitcoin 去中心化的货币的概念表示有所怀疑,或者说认为中本聪的电子货币实验已经失败了。但作者认为这种中心化是不可避免的,虽然中本聪赋予了每一个节点平等的权利(都可以去记账、去挖矿),但是每个节点的能力是有差异的,有些节点没有能力或者是需求去行驶自己的权利(对于一般用户和投资者钱包节点已经足够了)。同时权利和义务是绑定,放弃了权利也就避免了义务(记账和维护账本安全),而那些履行义务的节点必定要获得一定奖励才能有履行义务的动力,就像人类社会一样永远不可能人人平等,但我们不能因为节点不具备相应的能力就彻底剥夺它的权利。而且时至今日,也没有哪个组织和国家可以彻底控制比特币,很多主权国家对它畏惧如虎,所以作者认为比特币不仅没有失败而且非常成功

  综上所述,作者对比特币的前景是看好的,预期bitcoin block除了闪电网络这一技术路线外,类似usdt使用 the Omni Layer Protocol基于bitcoin block来发行代币也是不错的发展路线。


推荐阅读
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
  • 本文介绍了如何在Mac上使用Pillow库加载不同于默认字体和大小的字体,并提供了一个简单的示例代码。通过该示例,读者可以了解如何在Python中使用Pillow库来写入不同字体的文本。同时,本文也解决了在Mac上使用Pillow库加载字体时可能遇到的问题。读者可以根据本文提供的示例代码,轻松实现在Mac上使用Pillow库加载不同字体的功能。 ... [详细]
  • Java 11相对于Java 8,OptaPlanner性能提升有多大?
    本文通过基准测试比较了Java 11和Java 8对OptaPlanner的性能提升。测试结果表明,在相同的硬件环境下,Java 11相对于Java 8在垃圾回收方面表现更好,从而提升了OptaPlanner的性能。 ... [详细]
  • 本文介绍了一种求解最小权匹配问题的方法,使用了拆点和KM算法。通过将机器拆成多个点,表示加工的顺序,然后使用KM算法求解最小权匹配,得到最优解。文章给出了具体的代码实现,并提供了一篇题解作为参考。 ... [详细]
  • 本文介绍了如何使用MATLAB调用摄像头进行人脸检测和识别。首先需要安装扩展工具,并下载安装OS Generic Video Interface。然后使用MATLAB的机器视觉工具箱中的VJ算法进行人脸检测,可以直接调用CascadeObjectDetector函数进行检测。同时还介绍了如何调用摄像头进行人脸识别,并对每一帧图像进行识别。最后,给出了一些相关的参考资料和实例。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了源码分析--ConcurrentHashMap与HashTable(JDK1.8)相关的知识,希望对你有一定的参考价值。  Concu ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了VoLTE端到端业务详解|VoLTE用户注册流程相关的知识,希望对你有一定的参考价值。书籍来源:艾怀丽 ... [详细]
  • 区块链为什么是不可篡改的
    不可篡改是区块链最为重要的特性和应用之一。其是由区块链本身的结构、共识机制、网络拓扑和加 ... [详细]
  • 一面自我介绍对象相等的判断,equals方法实现。可以简单描述挫折,并说明自己如何克服,最终有哪些收获。职业规划表明自己决心,首先自己不准备继续求学了,必须招工作了。希望去哪 ... [详细]
author-avatar
彤彤柯安_839
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有