利索能及
我要发布
收藏
专利号: 2020100940756
申请人: 南京师范大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-08-18
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于身份的轻量级线性同态网络编码签名方法,其特征在于,包括如下步骤:(1)生成系统公私钥

身份公钥系统由PKG从公钥函数数据库中选取一套参数,包括两个阶为素数q的循环群和 双线性对e: 的生成元g,哈希函数H0: H1:H2: 根据选取的参数,PKG生成系统主公钥mpk和系统主私钥msk,系统主公钥mpk和系统主私钥msk生成步骤如下:(11)PKG从 中随机选取一个随机值s作为系统的系统主私钥msk;

s s

(12)计算并广播系统主公钥mpk=g,g表示g的s次幂;

(13)计算并广播 的生成元e(g,g);

(2)生成用户私钥

用户A将自己的身份IDA发送给PKG,PKG核实用户A的身份后,为用户A生成私钥(3)生成签名用户A首先将待签名的消息M转为 上的向量v1,…,vm,然后将向量扩展为标识符为VID的子空间V中的向量m1,…,mm;用户A计算子空间V的标签τid,并使用自己的私钥计算向量m1,…,mm对应的签名σ1,…,σm;用户A将子空间标签τid,向量m1,…,mm及其对应的签名σ1,…,σm发送给用户B1,B2;用户A生成消息的签名过程如下:(31)用户A将待签名的消息M转为 上向量v1,…,vm,其中,vi=(vi1,…,vin),1≤i≤m;

(32)用户A将这m个n维向量均扩展为标识符为VID的子空间V中n+m维向量m1,…,mm,其中,(33)用户A首先从素域 中随机选取两个随机值x,k,并计算对这两个临时变量的承诺x kU=g和R=e(g,g) ;

(34)用户A计算对身份IDA,子空间标识符VID和承诺U的哈希值w=H1(IDA,VID,U);

(35)用户A计算对(VID,U)的签名 并设置子空间标签τid=(U,R,Z);

(36)用户A计算向量mi的签名,

(37)用户A将子空间标签,扩展向量及对应的签名发送给下一节点;

(4)验证签名

网络中间节点Ci首先根据子空间标签τid,来确认V是否为用户A发送的消息对应的子空间;然后通过签名σi验证向量mi∈V的完整性;签名的验证的执行过程如下:(41)网络中间节点Ci首先根据公开信息计算 和w=H1(IDA,VID,U),然后验证等式

(42)如果以上等式成立,那么节点Ci收到的消息均来自标签为τid的子空间V;然后节点Ci通过等式 验证收到的向量mi;

(5)导出签名

网络中间节点Ci将收到的向量进行合并得到新的向量m,并使用这些向量对应的签名生成新向量m的签名σ,向量签名(m,σ)可以通过步骤(4)中的验证。

2.根据权利要求1所述的基于身份的轻量级线性同态网络编码签名方法,其特征在于,步骤(2)中的用户A的私钥生成步骤如下:(21)PKG计算用户A身份IDA的哈希值(22)根据系统主私钥msk=s计算出用户A的私钥

3.根据权利要求1所述的基于身份的轻量级线性同态网络编码签名方法,其特征在于,步骤(5)中签名导出过程如下:(51)网络中间节点Ci丢弃未通过验证的向量;

(52)网络中间节点Ci将通过验证的向量进行合并得到新的向量m,即为向量相关系数;

(53)网络中间节点Ci导出向量m的签名(54)网络中间节点Ci将向量m及签名σ发送给下一节点;

(55)当用户B1或B2收到足够量的通过验证的向量时,则解码出用户A发送的原始向量。