首页 > 其他分享 >跨联盟链的门限签名

跨联盟链的门限签名

时间:2023-02-25 19:01:15浏览次数:41  
标签:联盟 验证 门限 签名 子群 对数 节点

将群分割为m个子群

共有三层签名验证方案,第一层是对子群内单个节点签名验证(离散对数);第二层是每个子群计算验证成功的节点数,如果大于子群阈值则进行下一步计算;第三层是利用shamir秘密分割进行验证。

群密钥生成

生成元\(\alpha\) (用于离散对数)

大质数 \(u, v\) 满足 $ v|(u-1)$

多项式函数\(f(x), g_A(x), g_B(x), g_C(x)\) (有多少个子群就选取多少个g(x)函数,下面都是以两个子群A,B为例) 最高次幂分别为\(t-1, t_A-1, t_B-1\)

群私钥为\(SK_C=(12)\)

群公钥为\(PK_C=(13)\)

将\(f(x_i), g_A(y_{A_j} ), g_B(y_{B_k})\)秘密分发给每一个节点,同时计算\(\lambda_i , \mu_i\),一并作为节点的私钥

shamir秘密分割的拉格朗日插值法:

\(\lambda_i , \mu_i\)分别对应\(f(x), g(x)\)的拉格朗日系数系数, 满足下式:

节点\(i\)的公钥\(PK_{C_i}=(14)\)

单个节点的签名验证(离散对数)

\(t_X\) 是X子群的门限

子群X的公钥\(r_{X_i}=(15) ,r_X=(16)\)

子群X下的节点\(i\)的签名\(S_{X_i}=(17)\)

签名验证(18)

(18)式中\(r_i\) 与(15)的$r_{X_i} $相同

正确性证明:

可靠性基于离散对数

子群门限验证

对于每一个子群X,如果步骤二中验证成功的节点数\(t'_X \ge t_X\), 进行下一步。

群门限签名

聚合后的签名 \(S_C\)为所有参与验证的节点签名相加

(20)中\(S_C\)定义与后面证明有出入,应该是默认在\(t_A'\)个参与验证的节点中,只选取\(t_A\)(门限值)个节点计算。

论文这个地方可能存在错误:

验证:

证明如下:

标签:联盟,验证,门限,签名,子群,对数,节点
From: https://www.cnblogs.com/avengekiller/p/17155063.html

相关文章

  • 因外部依赖包内方法签名修改而导致线上NoSuchMethodError异常
    NoSuchMethodError异常问题描述修复大数据组件包包中的漏洞,将hive-common3.1.2版本升级到3.1.3,导致在连接hive表,查询schema时出现NosuchMethodError异常。报错堆栈信息......
  • 前端实现电子签名(web、移动端)通用组件
    前言在现在的时代发展中,从以前的手写签名,逐渐衍生出了电子签名。电子签名和纸质手写签名一样具有法律效应。电子签名目前主要还是在需要个人确认的产品环节和司法类相关的......
  • 前端实现电子签名(web、移动端)通用组件
     <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"cont......
  • vue3使用canvas实现手写签名
    <div><canvas@mousemove="canvasMove"@mouseup="canvasUp"ref="canvas"width="1000"height="500"@mousedown="mousedown"@mouseleave="canvasLeave"></canvas>......
  • 手把手教你为基于Netty的IM生成自签名SSL/TLS证书
    1、引言对于IM聊天应用来说,为了提升安全性,对聊天消息加密是常规操作。众所周之,Netty是高性能的JavaNIO网络通信框架,因而用Netty来写IM是再正常不过了。网上关于为Netty......
  • web3 的身份验证之以太坊签名消息
    https://zhuanlan.zhihu.com/p/535573066python实现#coding=utf-8fromweb3importWeb3frometh_account.messagesimportencode_defunctif__name__=='__main_......
  • 安卓app的签名打包
       今天学习了什么是Android程序的签名打包。   AndroidAPP都需要我们用一个证书对应用进行数字签名,不然的话是无法安装到Android手机上的,平时我们调试运行时......
  • APK签名
    APK签名APK签名使用jdk自带工具keytool,位置一般位于jdk1.8\bin生成签名一般分为两步:第一步:生成Keystorekeytool-genkey-aliasabc.keystore-keyalgRSA-validity......
  • https 自签名证书
    创建rootCA证书cd~&&mkdirmycertcdmycertopensslgenrsa-des3-outrootCA.key2048opensslreq-x509-new-nodes-keyrootCA.key-sha256-days1024-outr......
  • (原创)【B4A】一步一步入门04:编译模式、打包为APK、私钥签名
    一、前言上篇(原创)【B4A】一步一步入门03:APP名称、图标等信息修改中我们将APP做成了标准的样子。本篇文章会讲解如何将程序打包成APK文件以分发,同时讲解如何制作私钥并......