欢迎各位的到来,匿名科技专业开发区块链项目,为您定制专业的区块链解决方案!
当前位置: > 认识区块链 > 正文

隔离见证是什么?

2019-01-12 10:56:33 认识区块链

隔离见证即Segregated Witness   ,简写为SegWit,是对比特币系统Bitcoin Core(Bitcoin Core是当前最受欢迎的比特币标准客户端,由业内大多数企业使用。)的拟议更新。隔离见证是由Pieter Wuille(比特币核心开发人员、Blockstream联合创始人)在2015年12月首次提出。

见证(Witness),即在比特币系统进行交易合法性的验证。比如在交易时通常有3个信息产生,第一元数据,即交易信息格式的版本号,交易锁定时间等。第二付款人,即包含了用于付款的比特币来源,一般来源于某历史区块上的某笔交易输出(详情请见UTXO);能够证明用户拥有这笔交易输出的,就是见证数据。第三收款人,收款地址和金额。

所以由此可以看出见证数据是出现在付款人信息里的。隔离,就是把见证数据拿出来,单独存放。

为啥需要隔离?

见证隔离有什么好处?为啥要把它隔离出来?这就涉及到另一个问题,比特币系统的储存性能问题。比特币系统每10分钟左右会挖出一个新区快,新区快的大小小于1MB,每笔交易平均250字节,即每一个区块最多可放入4000笔交易,这样算下来,比特币每秒处理的交易数量不能超过7个。对比其它交易平台,PayPal每秒数百笔、Visa每秒数千笔、支付宝能达到每秒数万笔,可见比特币是一个非常低效的交易系统。如果使用人数增多,则会造成比特币系统拥堵。那么如何解决拥堵问题呢?验证隔离就是解决拥堵的方式之一。

那么它是怎么解决的呢?我们一起来了研究一下。

先来对比特币区块的数据结构有个大概的了解。

每笔交易平均250字节,见证部分的数据约为150字节,其余部分100字节。如果将见证数据隔离出来,原来1MB空间的区块可以放下10000笔交易(原来为4000笔),交易速度约提升2.5倍。隔离出来的见证数据放到了区块末尾,大小为1.5到2MB,所以隔离见证的整个区块大小为2.5到3MB左右。由此可见隔离见证也是变相的增加了区块的大小。那么这跟直接增加区块的大小有什么不同呢?它的优势有哪些?

隔离见证主要意义

1.解决交易延展性(Transaction Malleability)问题;

2.为闪电网络(一种新的设计思路,将大量交易放到比特币区块链之外进行)铺路

3.其他优化

交易延展性:发起一笔交易之后,交易数据中的见证部分可以被篡改,而且篡改后的交易仍然有效。交易见证的实现是依靠一种签名算法,比如比如椭圆曲线数字签名算法(ECDSA),这种算法下签名(r,s)和签名(r,-s(mod n))都是有效的。每笔交易都有交易ID,交易ID是对整个交易数据的哈希值,是该笔交易的唯一标识。通过对见证数据的篡改,可以改变哈希值,从而改变这笔交易的标识。

隔离见证通过把见证数据隔离移出,生成交易ID时Hash的数据不包括见证数据,因此也就无法改变交易ID值。

闪电网络

从比特币储存数据性能来讲,增加区块的大小是无法从根本上解决比特币交易缓慢问题的。闪电网络,就是从这种改变交易速率的设计思路上产生的。将大量交易放到比特币区块链之外进行,是它的主要设计思路。闪电网络通过在比特币基础上,构建第二层网络,将交易转移到链下的方式,来减轻公链负担,以实现扩容的效果。就目前看来,在公链基础上构建协议层网络,是解决公链拥堵问题最合适也是最有前景的方案,有关技术细节在此就不做详细说明了。

那么为啥说隔离见证为闪电网络铺路了呢?

有以下原因:

1.在在通道的生命周期上,隔离见证让闪电网络的通道永久开启更方便实现;

2.虽然从理论上系统是安全的,但用户还是要查看区块链中的交易是否广播撤回,防止 交易方的欺诈行为,隔离见证使得这项活动可以外包出去,只要给服务器传送少量信息, 就能代替你完成这一过程。

除此之外,隔离见证还为比特币带来了一些细节变化,比如增加了脚本版本(Script Version),使得脚本语言可以以一种向后兼容的方式来发展;签名算法复杂度有了较大优化等等。

以上就是本文的所有内容,希望大家对隔离见证友链更进一步的了解。

网站简介匿名科技
本网站有各类区块链行业资讯分享、技术产品介绍以及产品白皮书。

标签