2019年5月15日,BCH在区块高度582679完成网络升级。此次网络升级属于提高性能的一次升级,升级后的BCH增加两个新的协议功能:Segwit复原和备受期待的Schnorr签名。

为什么会引进Schnorr签名?

BCH和比特币之前一直使用的都是椭圆曲线数字签名算法(ECDSA),该曲线定义了用于计算的数学组,它规定了密钥格式和密码术操作的一组值。ECDSA的优点是由于椭圆曲线加密的效率,可以用更小的密钥大小实现与RSA相同的安全性。这使得ECDSA成为比特币的明智选择,因为较小的密钥总体上占用的空间更小,导致数据更少,操作更快。但是,ECDSA-随机数重用会导致私钥泄露,而且ECDSA还有延展性问题。

Schnorr签名可以适用于任何满足离散对数问题的数学组,具有安全性证明。而且Schnorr签名没有延展性问题;支持对不同消息的签名的批量验证;签名的线性特性Schnorr签名原生支持聚合签名。

Schnorr签名比ECDSA签名有更多优点:

1、数据更小。大多数ECDSA签名是71或72字节。所有Schnorr签名都是64字节。

2、验证效率高。相比于ECDSA签名,Schnorr签名在验证交易时花费的时间更短,相同的时间内所验证的交易数量也更多。

3、聚合签名。通过Schnorr签名,不仅可以将一个多sig输入的签名压缩为一个签名,还可以将多个输入的签名联合为一个签名。当大量签名产生一个聚合签名时,Schnorr方案可以将区块链存储和带宽减少至少25%。

4、增强隐私性。原本一些用户就会故意使用多个签名来发送交易来提高隐私,这通常称为MultiSig。而Schnorr签名会使你的签名看起来和任何其他签名一样,从而提高交易的隐私性。

5、为更为复杂的智能合约架构打开了大门。因为现在不管多重签名交易类型是 2/3、3/15,或者 100/100,所有类型需要的签名数据量相同,与单签名交易类型所需量一致。

6、Schnorr签名可以将支付通道隐藏为普通支付的原子级互换。如果需要的话,还可以实现闪电网络形式的支付通道网络以及涉及多方的未经确认的交易的安全链(layer 2)。

7、除了可扩展性和隐私性,Schnorr还为使用该协议的钱包平台提供了一个特性:重放保护。

BCH首次Schnorr Multisig交易

在比特币现金升级完成之后,BCH开发者们就迫不及待的进行了Schnorr Multisig交易测试。

2019年5月18日深夜,独立开发者Mark B. Lundeberg,BCH全节点BCHD的开发者Chris Pacia以及一个名为checksum0的独立矿工合作成功创造了第一个使用Schnorr多重签名(multisig)在BCH网络上进行的交易。这笔交易是向倡导自由交易的丝绸之路的创始人Ross Ulbricht的捐赠。

这笔交易携带的OP_RETURN信息解码之后,我们可以看到内容是:“BCH的宗旨是给人们自由,让他们做出自己的选择,追求自己的幸福,不管他们个人觉得合适与否。”事实上,multisig就像它所暗示的那样:转移资金需要多个签名(私钥)。对于加密货币交易来说,这是一种特别重要的方式,具有另一层安全性。

举个简单的例子,使用multisig签名的一个夫妻储蓄账户,在转移资金的时候,除非两者都同意,否则不能从他们的账户中转移资金。这一功能不仅满足了一些用户对于隐私的需求,也满足了多个用户控制一笔交易的需求。

完成交易后,三人发布了他们的私钥作为证据:

3c33570f986612912464cc61259ceeeba18c2c494e9de505a78c4222277d1b56

a145c109b44521329421227a7d29b4bcbb4e75a37743435d2978c02cbb45842f

8426999585720f236608b8a7112759f93269acf1124b0f82edbfa862cc8a6d0d

他们还在推特上宣布了这件事情。@checksum0表示 ,“@ MarkLundeberg @ChrisPacia和我在历史上创造了第一个Schnorr多重签名。该交易是对@Free_Ross的捐赠。证据将很快公布。“

随后,Lundeberg和checksum0分别在GitHub Gist上发布了历史交易的成绩单。

虽然这笔交易是首例Schnorr Multisig交易,不过Lundeberg也警告,这是一个实验,此次交易是一个示范,并不一定安全。“小心,资金很容易丢失!”。

这笔交易之所以会选择向Ross Ulbricht的捐赠,不仅具有历史意义,而且具有象征意义。因为保护相对匿名和点对点交易的现金特性通常会让人想起Ross Ulbricht的困境。他被指控后来被定为丝绸之路背后的策划者,而该网站是证明比特币可以在现实世界中用作数字现金的早期证据。

Schnorr签名的引入对于BCH是有非常深刻的意义的。它不仅能够提升BCH的效率,还能够改进BCH的隐私性。外部观察者无法知道此交易是什么。它可能只是一项常规交易,也有可能是涉及100人的多重签名的交易,更或者是尚未开发的其他用例。Schnorr还允许实现在比特币不可能实现的东西,比如前面提到的100人多重签名—所有这些都会产生一个非常小的交易(小于普通的p2pkh交易,无论OP_RETURN是什么)。

这笔交易还只是Schnorr签名在BCH网络上的首次表现,以此证明了Schnorr签名在BCH网络中的可行性。未来在Schnorr签名的帮助下BCH网络将会有哪些突破,就让我们拭目以待吧!​​​​

里程碑:BCH网络出现首例Schnorr Multisig交易相关推荐

  1. 专家解释即将到来的BCH网络升级

    随着5月15日比特币现金网络升级越来越近,关于BCH升级的内容也越来越多.我们都知道在此次升级中有一重大改变是Schnorr签名. @MarkLundeberg作为一名比特币现金网络升级的Schnor ...

  2. 将dll制作成控件_全国首例将“影视作品”制作成“网络图片集”方式侵权案宣判...

    最早知道"图解电影"是在百度贴吧,以前贴吧会有很多以截取电影主要剧情截图,介绍电影故事梗概的推荐电影形式,目前也有很多短视频平台和视频平台,推出电影主要内容的剪辑片段,那么,以这样 ...

  3. 将dll制作成控件_案例丨首例将影视作品制作成网络图片集被判侵权案 二审维持原判...

    来源丨北京青年报 据北京知识产权法院消息,近日,北京知识产权法院审结一起关于<三生三世十里桃花><大军师司马懿之军师联盟>的"图解电影"信息网络传播权案件. ...

  4. 首例利用智能路由网关犯罪嫌疑人被捕:罪名流量劫持

    首例利用智能路由网关犯罪嫌疑人被捕:罪名流量劫持 https://tech.sina.cn/digi/nb/2018-05-15/detail-ihapkuvm0295695.d.html 上海市徐汇 ...

  5. 不仅仅是手机,MWC现全球首例 5G NR 商用部署

    近日,MWC大会在在巴塞罗那举行,5G折叠手机和5G部署进度成为这届大会的重点.除了华为与三星发布的折叠手机外,本届大会另一个值得关注的要点是三星和赛灵思宣布推进5G NR 商用部署在韩国落地,这应该 ...

  6. BCH网络升级顺利完成,将创新和开发推向新高度

    在UTC时间2019年11月15日,区块高度609135处BCH网络按计划进行了升级.该区块由AntPool矿池打包,包含306笔交易,总大小90.90 kb.升级新共识之后的BCH,从第一个区块60 ...

  7. 北京协和医院骨科完成中国首例机器人全膝人工关节置换手术

    1月6日,北京协和医院骨科成功完成中国首例机器人全膝人工关节置换(TKA)手术,该手术由关节外科教授林进.医师王炜团队实施.在医院和科室的支持下,在麻醉科.手术室.放射科等相关科室和职能处室的精诚合作 ...

  8. 反转!美光、英特尔等多家美企恢复对华为供货;首例云服务器存储侵权案改判,阿里云不担责;英国政府拟严格审查Libra……...

    戳蓝字"CSDN云计算"关注我们哦! 嗨,大家好,重磅君带来的[云重磅]特别栏目,如期而至,每周五第一时间为大家带来重磅新闻.把握技术风向标,了解行业应用与实践,就交给我重磅君吧! ...

  9. 互联网晚报 | 1月16日 星期日 | 微信新增语音播放暂停功能;小米MIUI“纯净模式”上线;全国首例“刷单案”宣判...

    ‍ 今日看点 ✦ 全国首例"刷单"涉不正当竞争案一审宣判:我爱网赔偿百度205万元 ✦ 微信iOS版本更新至8.0.17,新增功能支持语音暂停后继续播放 ✦ 微博网页版上线无障碍模 ...

最新文章

  1. 在java读字符串入文件_如何在java中将文件读入字符串?
  2. GreenDao自带异步操作类简析
  3. 【2D动画】《想你》。。。。难以想象
  4. 前端需要了解的nginx(2)
  5. 中誉集团:出售3218万股恒大汽车股份 套现1.25亿港元
  6. oracle 10g安装企业版,企业版Oracle10g的安装-过程
  7. spring定时任务配置,以及不执行的解决办法
  8. ORA-03113: 通信通道的文件结尾
  9. linux系统网桥管理工具brctl 安装及使用
  10. android防止程序休眠,android 设置 永不休眠
  11. h5支付不能打开支付宝 ios_iOS 手机网站支付转Native支付(H5支付页面调起支付宝客户端(app))...
  12. 计算机win7如何加快开机速度,win7快速开机到八秒,怎么加快win7开机速度
  13. 白金域名你了解多少?
  14. 一文详解:为什么隐私智能合约是Web3的未来
  15. js中for(const i in/of arr/obj)和vue中v-for指令的区别
  16. 计算机采用什么交换技术,计算机 交换技术是什么?
  17. NSCD--DNS缓存服务
  18. 四级计算机网络考试大纲,2018年全国计算机等级考试四级计算机网络考试大纲...
  19. 双向链表(java语言实现)
  20. mysql 过滤微信昵称表情_微信昵称emoji表情的过滤

热门文章

  1. CRM与SCM整合 让企业供应链无缝连接
  2. 编程之美初赛第一场--焦距
  3. http://www.huihoo.com/ 灰狐网站 Linux 专业网站
  4. 现在有T1、T2、T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行?...
  5. Nginx 的 default_server 指令
  6. 一家大型公司的nginx配置
  7. request 和response
  8. Canvas入门-利用Canvas绘制好玩的电子时钟
  9. 多个ViewPager引发的Fragment未初始化
  10. 浅谈压缩感知(三十一):压缩感知重构算法之定点连续法FPC