比特币算法进化为Schnorr签名算法是进步吗?
历史车轮不断前进,技术进步从未停止过,具有里程碑意义的特币协定开始了技术升级。其协议中的技术升级,Schnor,Signature(施诺尔签名)和Taproot(树itcoin,Core0.21.0版本。
比特币的未来似乎面临着前所未有的光明,现在不仅有其容量,还有机会通过其功能超越其他块链。
比特币ECDSA椭圆曲线签名算法时,多重签名交易验证过程非常麻烦,现在可以将交易中的所有签名和公钥合并成单一签名和公钥,无法追溯,简单快捷怎么样?
事实上,在此之前,中本聪在设计比特币协议时需要考虑签署算法的签署长度、是否开源、是否有专利、是否经过足够长时间的安全验证、性能等各种条件。当时满足上述条件的数字签名算法不仅仅是ECDSA,还有SchnorSignature,从各个方面都不亚于ECDSA。但是,由于到2008年为止处于专利保护状态,中本聪在设计比特币协议时可能没有使用该签名算法,最终选择椭圆曲线数字签名算法(ECDSA),在其他专家的建议下选择了特殊的椭圆曲线secp256k1。
时隔10年,2018年,2018年,7月,比特币开发erWuille,bip-shnorrr提出将bitcoin的签名算法改为schnorrr。Schnorrr和ECDSA是使用secp236k1曲线的椭圆曲线加密算法,但SchnorrSignature在密码学特性上具有优势,几乎可以在同等安全的基础上构建更方便的多签名交易。
Schnorr用于比特币,与ECDSA相比具有更显着的优势
更安全:随机预言模型容易证明Schnorr签名的安全性,但ECDSA没有这样的证明。
没有延展性的烦恼:ECDSA签名是可延展性的,第三者不需要知道私钥,可以直接修改现有签名,保持这个签名对这个交易有效。比特币一直有延展性攻击,直到SegWit激活才修复。前提是使用segwit交易,而不是传统交易。BIP62和BIP66详细说明。
线性:Schnorr签名算法是线性的!基于这一特性,可以构建更高效、更隐私的块链系统。使用Schnorr签名的各方可以生成各自钥匙的签名聚会。例如,n个公钥签字,采用ECDSA,有n个签字,验证也需要n次。使用Schnorr,由于线性特性,可以重叠签名,只保留最终重叠签名。例如,同一笔交易无论输入多少,都可以重叠为签名,一次验证。
CryptoQuant创始人:比特币面临着持续的巨大购买压力:新的比特币指标显示,投资者在1万美元时购买的兴趣远远大于销售的兴趣。
CryptoQuant创始人Ki,YoungJu在推特上发表了追踪比特币投资者感情的最新工具。该工具被称为潜在购买/销售压力,将交易所的BTC总储备除以稳定的货币储备。由此得出的数字大致反映了交易者的喜好,现在偏向于涨价的一面。
Ki写道:BTC还面临着巨大的购买压力。与今年年初相比,交易所持有的稳定货币更多,BTC更少。我认为BTC的上升趋势还有空间。[2020/9/8]
Schnorr签名算法几乎在各个层面都优于比特币现有的签名算法ECDSA:性能、安全、体积、扩展性等方面,Schnorrrsig可以与ECDSA使用相同的椭圆曲线:secp256k1打curve,升级变更非常小。
当然,在比特币协议中,除了签名算法外,还设计了Taproot脚本语言定义如何使用比特币。比特币的多签名类地址不需要暴露自己的多签名身份,也可以支持数量众多的多签名场景(连锁交易只需要集中的公钥和签名),可以降低很多交易打字数,特别是需要高频操作的地址,降低连锁交易费用
以下是一些常见的问答:
q:Schnorr签名可以用MToff多重签名吗?a:当然可以。多重签名只是M,OFN的签名数量的模式。与签名算法无关。
q:Schnorr的集团签名特性可以制作或模拟mof签名吗?a:我做不到。如果小组内有n把公钥,必须对应n个签名。每个人在签的时候,哈希函数中代入的是公共钥匙p。
q:签名机制的安全性如何测量?a:主要取决于1.签名算法本身2.椭圆曲线。目前,Schnorr和ECDSA使用曲线secp256k1,这个水平相同。关于签名算法本身的安全性,Schnorrr目前有安全证明,安全优于ECDSA。
BCH。
2019年5月16日BCH开始进行硬分支升级。升级的主要内容是Schnorr签名算法和隔离目击恢复,Schnorr签名升级中最受期待的功能,隔离目击恢复原则是修复性技术,用于恢复被误送到隔离目击地的BCH。
开发者MarkLundeberg用户可以在不生成新地址的情况下开始使用Schnorr签名。升级给BCH带来的好处如下
提高签名数据的有效性:
由于签名是64字节的数据,与通常的70字节相比,交易可以减少4%的字节,该功能基本上提高了各比特币现金交易所需的签名数据的有效性(通过Schnorrr签名,块链的存储和带宽至少减少25%此外,升级后,Schnorr签名为BCH提供了隐藏普通支付渠道的能力。
动态|Tronix社区:Tron的网络价值和交易比例高于比特币和以太网广场:据Newslogical报道,Tronix社区成员MikeMcCarthy指出,与比特币和以太网广场这两个生态系统最前沿的加密货币项目相比,Tron具有更好的网络价值和交易比率统计。数据跨越2018年10月至2019年9月,在统计期间,Tron平均提供了95.5NVT,比特币和以太网广场分别为11.8NVT和67.9NVT。[2019/10/17]
提高隐私:
升级前,许多用户故意使用多个签名来提高隐私,而Schnorr签名会使所有用户的签名看起来与其他签名相同,这种结构大大提高了交易隐私。Schnorr提供的属性和BCH开发者和基础设施提供者(钱包等)追加的延展程序进一步提高隐私和可扩展性。
对抗垃圾交易攻击:
过去发生过垃圾交易攻击,攻击者希望通过尽可能多的交易空间堵塞比特币。他们的手段之一是频繁地从多个来源发送交易,使个交易包括几十个签名,这些签名占据了很多空间,这是ECDSA签名留下的危险。
Schnorr可以避免这种垃圾交易攻击。每笔交易只有一个签名,块可以容纳更多的交易,垃圾交易制造商为了制造攻击必须发送更多的交易,与更多的人竞争,攻击成本相对较高。签名所占的空间通常是交易最大的部分,攻击者没有优势。
当然,我们不能只看好的一面。一切都不足,极其相反。特别是量子计算机的发展威胁着块链的安全,为了应对量子计算机对一些算法的攻击,2017年NIST开始了量子密码学的标准化进程,其中瑞士ABCMint数学算法基金推进的量子签名方案,后量子加密基金支持的量子算法之一,最短签名长度的签名量子签名方案-彩虹签名Rainbow最受欢迎。
2017年8月,Jinliu和数学家Prof.Jintaiding计划建设ABCMint,注册瑞士苏黎世附近的加密谷。其数字现金ABC基础签名是彩虹签名Rainbow,他们的愿景是全球支持抗量子计算机解读算法的研究和应用,研究包括全球支持数学家在算法方面的发现、解读、完善等,应用包括将适当的算法应用于主流数字加密现金。
他们认为比特币从ECDSA改为Schnorr签名的建议BIP340,采用Schnorr签名,是比特币的重大退步。计算机安全专家提出的算法选择和改进,我们更重视数学家提出的算法选择和改进,Schnorr签名问题很大,应该在Litecoin等长期试运行。
比特大陆拥有比特币网络计算能力达到42.38%:据BTC.com统计图表显示,比特大陆旗下的BTC.com和阿里矿池在过去三天共计获得42.38%的计算能力,其中BTC.com发现了25.26%的比特币块,阿里矿池发现了17.12%。此外,据Trustnodes报道,这两者在BCH中具有更大的计算能力。文章评论说,这可能会影响PoW共识机制的比特币。此时,最好的解决办法是比特大陆以更低的价格出售更多的ASIC矿山机。6月15日,比特大陆的共同创始人吴忌寒说他没有51%的计算能力。[2018/6/23]
BTC必须等待BCH,或者其他链条再用几年的Schnorr签名。Schnorr签名最主要的优点是多签时签名长度最短,但缺点是多签时,最后一个容易上当。
在密码学上,采用Schnorr签名是“大胆粗心”的做法,背离了“长期安全”的第一要义。
从密码学的角度来看,Schnorr签名主要是为了更多的签名,更多的签名合适的场景应该是中心化和极其重要的场景,极其重要的场景与核弹发射的十几个Verifiable的procedure相似。夏延山核武基地等大门。不应该集中化场景,也不应该发送比特币。
简而言之,中心化本身与多签名背离。
让我们简单地普及一些算法
椭圆曲线的数字。
签名算法(ECDSA)
椭圆曲线数字签名算法(ECDSA、EllipticCurveDSA)是使用椭圆曲线密码(ECC)对数字签名算法(DSA)的模拟(椭圆曲线密码(ECC)由NealKoblitz和Victormilller于1985年发明),ECDSA首先是Scott和Vanstone在1992年应对NIST对数字签名标准的要求。
比特币现在使用的是ECDSA椭圆曲线的数字签名算法,需要在消息面上签名。我们必须进行哈希操作,把这个哈希视为z=hash(m)的数字。我们还需要随机或随机找到的数字k。我们不喜欢信任随机数量生成器(故障太多,漏洞太多,与糟糕的RGN有关),所以我们通常使用RFC6979,根据我们的秘密和签名的消息,计算确定性的KT值。
使用私钥pk,我们可以为包括两个数字的消息m生成签名。r(随机点RK的x,坐标=金k×G和s=(zrpk)/k。然后,使用我们的公钥pk=pk×G,每个人都可以通过检查点(z/xxgr(r),xx坐标等于r,验证我们的签名。
学者苑举正:10年后不存在比特币:大学哲学系主任苑举2018私募基金年会谈到比特币时,比特币有价格后,在供求市场变动,发售后出现3个问题。第一,比特币以价格代表的话,和一般交易的商品一样,只是把概念变成期货。第二,成为价格后,可以被偷,傻瓜挖矿,直接偷矿山里的东西。第三,上周四发生了黑客事件。主持人要求苑举正预测10年后比特币还没有时,苑举正说10年后比特币不存在。但是,数字货币一直在创造新的东西,和人的历史潮流一样,它是全面的,而且越来越进步,人的想法不断通过新的技术发展。[2018/3/10]
签名验证包括逆转(1/s)和2点乘法,这些操作的计算量非常大。在比特币中,每个节点都必须验证所有的交易。这意味着你在播放交易时,成千上万的电脑必须验证你的签名。简化验证过程非常有益,签字过程更加困难。
第二,每个节点必须分别验证每个签名。如果是m-of-n多个签名交易节点,可能需要多次验证相同的签名。例如,有7-of-11。多重签名输入的交易包括7个签名,需要对网络中的各节点进行7-11个签名验证。同样,这样的交易占有很多空间,必须支付很多费用。
Schnorr签名。
Schnorr签名算法由德国数学家、密码学家Claus向Schnorr提出。1990年申请专利,U.S.Patent,995,082,该专利与2008年2月无效。目前,这种算法可以自由使用。
Schnorr签名的生成有点不同,我们使用一个点,用一个点,用一个标准代替两个标准(r,s)。类似于ECDSA,R是椭圆曲线(R=K×G)的随机点。签名第二部分的计算有点不同。
s=khash(p,r,m)。这里的kpk是你的私钥,但是pp=pk×G是你的公钥,m。然后可以通过检查,sxgt=hash(p、r、m)xpt验证这个签名。
这个方程是线性的,所以方程可以相互减少,还是有效的,这给我们带来了Schnor签名的好处。
Schnorr签名的批量验证。
要验证比特币块链中的块,必须确保块中的所有签名都有效。
据专家介绍,比特币暴跌的原因是投机者退场,块链研究平台TriveCEO蒙德鲁斯(Davidondrus)是指比特币在短时间内上涨幅度过快,投资者获利后打算退场,网上交易平台发生故障,投资者担心没有机会退场,加快销售。[2017/11/30]
对于ECDSA签名算法,每个签名都必须单独验证。也就是说,如果块中有1000个签名,我们需要计算1000次倒置和2000次下点运算,共计约3000次重量计算任务。
使用Schnorr签名,可以加上所有签名验证方程,节约计算能力。对于有1000个签名的块,需要验证
(s1s2)..s1000)×G=(R1...R1000),(hash(P1,R1,m1)×P1,R2,m2)×P2...hash(P1000,R1,m1,000)×P1,000)
这里有很多加法(我们需要计算每个签名的重量。
Schnorr签名的钥匙集合。
我们希望自己的比特币安全,所以我们可能希望至少使用2把不同的私钥来控制比特币。例如,一个放在笔记本电脑或手机上,另一个放在硬件钱包里。因此,当其中一个受到威胁时,我们仍然可以控制比特币。
目前通过2-of-2多重签名脚本实现,需要在交易中包含两个单独签名。然而,使用schnor签名,我们可以使用一对私钥(pk1,pk2),生成共享公钥P=P1pk2=pk1×Gpk2×G。为了生成这个签名,我们必须在各设备中选择随机数(k1,kk2)生成随机点。Ri=kixg相互计算公共哈克PP,R1R2,m然后从各设备中获得hash(p,r,m)军pki),并从各设备中获得s1和s2。然后我们可以把这些签名加起来,用一对(R,S)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------其他所有人都不能说是不是聚合签名,看起来和普通schnorr签名完全一样。
这种结构有三个问题。第一,从用户界面的角度来看,要进行交易,我们需要进行几次通信,计算公共注册,然后签字。有两把私钥,只需一次访问冷钱包就能完成。我们在网上钱包上准备了未签字的交易,选择k1,记录R1=K1×GT和未签字的交易。然后我们将这些数据发送到冷钱包并签名。我们已经有R1了,可以一次性签到冷钱包交易。从冷钱包中,我们得到了R2和S2,并将其转回了在线钱包。在线钱包使用前选择的是(k1,r1)签名交易,签名播放签名交易。这和我们现在的情况很相似,但是一旦添加了第三把私钥,一切都会变得更加复杂。例如,你有财富,由10把私钥控制,存储在世界各地的安全位置,然后需要交易。目前,你只需要浏览这些位置一次,但是如果你使用密钥聚合,你需要执行两次来组装所有的RI,然后签名。在这种情况下,最好不要聚集的情况下保留单独的签名,然后我们需要三轮通信:
选择随机数量ki、对应的Ri=ki×G,然后只告诉大家哈希ti=hash(Ri),大家学习其他随机数量后就不会改变想法了
总结所有数字,计算共同的r
签名;签名;
第二个问题是已知的恶意钥匙攻击。无论是在论文中还是在这篇文章中,都有很好的描述,所以不想详细讨论。那个想法是,如果你的设备被黑客攻击(例如,你的在线钱包),假装公钥是(p1-p2)的话,可以用公钥pk1控制共享资金。一个简单的解决方案是,在设置设备时,需要使用相应的私钥签字。
还有第三个重要问题。不能使用确定性K,签到。有一种简单的攻击方式,使用确定性k的话,黑客可以得到我们的私钥。攻击似乎是这样的。有人侵入我们的笔记本电脑,完全控制了两把私钥中的一把(例如pk1)。我们可能觉得安全,因为比特币需要来自pk1和pk2的聚合签名。因此,我们试图像往常一样进行交易,准备未签字的交易和R1值,转移到硬件钱包并签字。然后回到(r2,s2)和……我们的在线钱包发生了什么事,不能签字和广播。我们再试一次,被黑的电脑这次又用了一个随机值,R1。我们再次与我们的硬件钱包签订同样的交易,把价值(r2、s2)带回黑色的电脑。然后,发生了坏事,我们的比特币丢失了。
在这次攻击中,黑客在同一笔交易中获得了一对有效的签名:R1、指南1、R2、R2)和(R1、S1、R2、R2、S2),这里的R2是相同的,但R2是相同的,但R2是相同的,关于R2的手册=R1,R1,R2是不同的,这意味着黑客可以计算我们的第二个私钥:s2-S2=(hash(P,R1R2,m)-hash(R2)-hash(R2,m)-hash(RP,R2,R2,m)-hash(RP,R2,R2,R2,mm)p)p)pk2,R2)pk2,man)pk2我发现这是密钥聚合最不方便的特性。我们需要在任何地方使用好的随机数量生成器来使用密钥聚合。
彩虹的签名。
Rainbow是一种多变签名方案,其分层结构基于不平衡石油栗子签名方案。Rainbow层施加的额外结构使该方案面临更多的密码分析技术,但提高了该方案的效率。Rainbow提供了快速的签名和验证,还有非常短的签名,但是有非常大的公钥。
选择Rainbow增加了入围签名方案的多样性,但由于密钥尺寸非常大,Rainbow不适合作为通用签名算法代替当前出现在FIPSbook186-4中的算法。特别是大公钥使证书链非常大。但是,有些应用程序不需要频繁发送钥匙。针对这类应用,Rainbow提供了小而快的签名。
参考文献::
https://panzhibiao.com/2019/02/28/schnorr-sigature/
https://mp.weixin.qq.com/s/wy1jtKzNVdmicd4e9N3Ew。
https://medium.com/cryptoadvance/bls-signatures-than-schnor-5a7fe30ea716htps://medium.com/cryptoadvance/how-schow-schnor-signatures-may-imprin-91655444。
q:Schnorr签名可以用MToff多重签名吗?a:当然可以。多重签名只是M,OFN的签名数量的模式。与签名算法无关。
q:Schnorr的集团签名特性可以制作或模拟mof签名吗?a:我做不到。如果小组内有n把公钥,必须对应n个签名。每个人在签的时候,哈希函数中代入的是公共钥匙p。
q:签名机制的安全性如何测量?a:主要取决于1.签名算法本身2.椭圆曲线。目前,Schnorr和ECDSA使用曲线secp256k1,这个水平相同。关于签名算法本身的安全性,Schnorrr目前有安全证明,安全优于ECDSA。
还有第三个重要问题。不能使用确定性K,签到。有一种简单的攻击方式,使用确定性k的话,黑客可以得到我们的私钥。攻击似乎是这样的。有人侵入我们的笔记本电脑,完全控制了两把私钥中的一把(例如pk1)。我们可能觉得安全,因为比特币需要来自pk1和pk2的聚合签名。因此,我们试图像往常一样进行交易,准备未签字的交易和R1值,转移到硬件钱包并签字。然后回到(r2,s2)和……我们的在线钱包发生了什么事,不能签字和广播。我们再试一次,被黑的电脑这次又用了一台随机值R1\\。我们再次与我们的硬件钱包签订同样的交易,把价值(r2、s2)带回黑色的电脑。然后,发生了坏事,我们的比特币丢失了。
在这次攻击中,黑客在同一笔交易中获得了一对有效的签名:R1、S1、R2、R2、(R1\\、L1\\、R2、R2、S2\\),这里R2是相同的,但R2=R1的关键和关键=R1\\R2不同,这意味着黑客可以计算我们的第二个私钥:S2-S2\\=(hash(P,R1R2,m)-hash(R2,m)-hash(R2,R2,m)我发现这是密钥聚合最不方便的特性。我们需要在任何地方使用好的随机数量生成器来使用密钥聚合。
参考文献::
https://panzhibiao.com/2019/02/28/schnorr-sigature/
https://mp.weixin.qq.com/s/wy1jtKzNVdmicd4e9N3Ew。
https://medium.com/cryptoadvance/bls-signatures-than-schnor-5a7fe30ea716htps://medium.com/cryptoadvance/how-schow-schnor-signatures-may-imprin-91655444。
标签:
捕捉以太网广场黑暗森林中的通用抢劫机器人。 以太网广场的黑暗森林中野兽横行,这不是耸人听闻。这些抢劫机器人通过分析合同的调用可以发现潜在的利益空间,这些调用和合同也是他们前所未有的,一无所知。 鉴于大多数人对抢劫机器人的认识不足,我们将深入分析这种情况,了解抢劫机器人的普遍性。我们成功地捕获了通用的交易机器人,分析了行为。
2/1/2021 7:18:21 PM账户抽象的动机、历史和分析。 账户抽象[AccountAbstraction]是以太网广场需要实现的技术方案,现阶段设计,实现账户抽象后,智能合同账户也可以自主开始交易,不需要依赖元交易的机制。 以太网坊的账户有外部账户和合同账户两种。外部地址是用户的公钥在哈希运算后取的20个字节,形成的。 0x76D8302F7D。
2/1/2021 7:17:32 PM基于Schnoor算法的多签名方案和钱包结构。 硬核警报建议有技术基础的学生使用。 最近,比特币的核心客户发表了新的大版本,这次发表主要带来了Schnor签名Taproot技术。Schnorrr优雅简洁,可以提高交易隐私,节省空间,实现多签名的签名算法。与传统ESDSA签名技术不同,技术和实现方式具有明显特点,目前广泛应用于不同公共链路的不同环节。
2/1/2021 7:16:56 PM比特币算法进化为Schnorr签名算法是进步吗? 历史车轮不断前进,技术进步从未停止过,具有里程碑意义的特币协定开始了技术升级。其协议中的技术升级,Schnor,Signature(施诺尔签名)和Taproot(树itcoin,Core0.21.0版本。 比特币的未来似乎面临着前所未有的光明,现在不仅有其容量,还有机会通过其功能超越其他块链。
2/1/2021 7:16:37 PM比特币RBF假冒风险分析。 前面的话。 加密钱包ZenGo在Ledger、BRD、UDEdge等主流加密货币钱包中发现了漏洞。该漏洞可能将未确认的交易计入用户的总馀额,此时攻击者可在交易确认前取消交易。攻击者利用比特币协议的费用代替了Replace-by-Fee功能。该功能可以通过支付更高的手续费来更换以前的交易。
2/1/2021 7:15:50 PM了解最受欢迎的zkSNARK方案:Groth16方案。 原文标题:了解最受欢迎的zkSNARK方案:零知识证明引论(3) 在之前的文章中,我们介绍了零知识证书的基础概念和构建zkSNARK的基本思想和方法。从本文开始,我们将逐一介绍目前最受欢迎的zkSNARK方案。文章旨在让读者了解这些方案的基本原理。
2/1/2021 7:15:29 PM如何开发易于使用的轻量级客户? 大约5年前,我们开始建立Trinity-以太坊网上的新型轻量级客户端。那时,Geth刚刚发表了第一版LES协议,我们有着远大的梦想。 远大的梦想往往被现实打倒。近年来,我们得到了一些教训 EVM计算基本上是沉重。 LES就像广阔的沙漠一样,客户是沙漠中渴望数据的旅客。 同步维护状态的难度太大。
2/1/2021 7:14:27 PM