请选择 进入手机版 | 继续访问电脑版

厦门部落

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 170|回复: 0
打印 上一主题 下一主题

聊一聊科普_9

[复制链接]

969

主题

969

帖子

2万

积分

论坛元老

Rank: 8Rank: 8

积分
24749
跳转到指定楼层
楼主
发表于 2022-2-21 18:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式



★ 厦门人自己的微信平台、厦门微帮...点击查看>>>




?M2 介绍因此我们可以初步得出结论,imtoken下载有助于行业市场需要,有助于社会发展需要。


M2 是一种多重签方案,是 MS 签方案的一个新变体。MS 允许多个签者从他们各自的私钥中创建一个聚合公钥,然后共同为该公钥创建一个有效签,通过这个方式创建的聚合公钥与其他公钥是法区分的。最初的 MS 需要轮签,但是新的 MS2 方案现了一个简单的只需要两轮的签协议,而且不需要零知识证明。

MS2 是一种简单且高度用的两轮多重签方案,具有优势:

) 在并发签会话下是安全的,

) 支持密钥聚合,

) 输出普通 S 签,

) 只需要两轮通信,

) 具有与普通 S 签相似的签者复杂性。

同时,T 升级兼容 M2 多签方案。在我们 CX 跨链新方案中,将采用 M2 签方案来完成聚合签的过程。

原文 | D



01M2 原理

上图来源于原始论文,描述了 M2 签的基本过程。M2 签首先需要参与方各自通过 KG() 生成公私钥并通过 S() 生成临时公私钥(即)。然后进行第一轮通信,将临时公钥(即上图中的 _)传递给其他人。拿到其他各方的临时公钥后可以通过 SA() 和 S() 两个函数生成签碎片 _。最后进行第二轮通信,将签碎片 _ 传递给其他人,拿到其他各方的签碎片后,就可以通过 SA() 和 S() 生成最终的签 σ。图中 KA() 表示公钥聚合函数,V 表示 M2 验签函数。M2 聚合签最终形式和 S 普通签的形式一致,可以表示为(R, )。下文展示了  版本 M2 的部分现。



02? 签

1 生成密钥: 各方生成随机私钥并计算相应公钥2 生成:各方生成临时公私钥在函数 ____() 中,M2 为了两轮通信完成聚合签,会产生 N 对临时公私钥。() 函数的返回值  包含了所有的临时公钥,可以通过 P2P 络传递给其他人。

下图代码中通过 1____1 和 2____1 模拟了该过程。

生成签碎片:完成两个函数功能下面代码中通过 _() 函数完成了论文中 SA() 和 S() 两个函数的功能。参数中  表示待签的消息, 表示各个参与方所有公钥的有序列表,_ 代表当前参与方的公钥在  中的索引。_() 函数主要是利用私钥  和临时公钥 _ 聚合成的 , R, _ 来生成签碎片 _。这里的  表示  进行  生成的消息摘要,R 是 M2 聚合签最终结果的第一项,_ 是生成签碎片的系数。通过 P2P 络将签碎片 _ 传递给其他人。

下图代码中通过 1____2 和 2____2 模拟了该过程。

4 聚合签碎片:生成M2聚合签的第二项收集到其他各方的签碎片后,通过 __() 生成 M2 聚合签的第二项。该函数主要是对签碎片进行累加操作。__1 和 __2 表示参与各方各自生成的聚合签碎片,正常情况下,两者是一致的。



0?验签

上图通过 () 函数展示了 M2 的验签过程。参数中 _,  对应 M2 聚合签的(R,),X_ 代表聚合公钥, 和前文一致,表示  进行  生成的消息摘要。



04?总结

总的来看,M2 只需通过两轮通信即可完成聚合签的过程。相比于 M,主要差别在于  的生成过程。其中 M2 每一个参与方生成了多对临时公私钥,而 M 仅仅生成一对临时公私钥。这也是 M2 仅仅需要两轮通信的根本原因。同时,M2 是利用 S 签基本原理形成的多签方案,可以很好的兼容 T 升级并应用于我们的 CX 跨链升级新方案中。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|厦门兼职网 ( 闽ICP备14019374号-1

GMT+8, 2024-5-4 18:40 , Processed in 0.062500 second(s), 22 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表