(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210121269.X
(22)申请日 2022.02.09
(71)申请人 南京隐私遁区块链科技有限公司
地址 210000 江苏省南京市 建邺所街1 16号
711-60室
(72)发明人 刘琥
(74)专利代理 机构 北京盛凡佳华专利代理事务
所(普通合伙) 11947
专利代理师 赵浩淼
(51)Int.Cl.
H04L 9/32(2006.01)
(54)发明名称
一种用于非完整数据验证的数字 签名方法
(57)摘要
本发明公开了一种用于非完整数据验证的
数字签名方法, 非完整性数字签名和验证方法如
下所示: 数据签署方得到一组原始数据; 数据签
署方对每一项原始数据进行哈希计算, 生成哈希
摘要组数; 数据签署方对哈希摘要数组进行哈希
计算, 得到哈希摘要; 数据签署方使用私钥对哈
希摘要进行签名, 得到哈希摘要数字签名; 数据
签署方将在步骤2生成的哈希摘要数组、 哈希摘
要数字签名以及原始数据发送至数据验证方; 数
据验证方对哈希摘要数组进行哈希计算, 得到哈
希摘要; 数据验证方利用数据签署方的公钥对签
名进行验证; 本发明实现了在数据传输通道不可
信导致数据不完整的情况下, 数据验证方仍可根
据签名来确认数据是否来源于数据签署方, 以验
证数据的真实性。
权利要求书2页 说明书4页
CN 114567441 A
2022.05.31
CN 114567441 A
1.一种用于非完整数据验证的数字签名方法, 包括数据签署方和数据验证方, 其特征
在于: 所述用于非完整性数字签名和验证方法如下 所示:
步骤1、 数据签署方得到一组原始数据, 原始数据分别为: data1、 data2、 ...、 datan‑1、
datan;
步骤2、 数据签署方对每一项原始数据datan进行哈希计算, 生成哈希摘要组数: e1、
e2、 ...、 en‑1、 en, en=Hv(datan);
步骤3、 数据签署方对哈希摘要数组e1、 e2、 ...、 en‑1、 en进行哈希计算, 得到哈希摘要e, e
=Hv(e1+e2+...+en‑1+en);
步骤4、 数据签署方使用私钥dA对哈希摘要e进行签名, 得到哈希摘要数字签名se, se=
sign(dA,e);
步骤5、 数据 签署方将在步骤2生成的哈希摘要数组e1、 e2、 ...、 en‑1、 en、 哈希摘要数字签
名se以及原始数据data1、 data2、 ...、 datan‑1、 datan发送至数据验证方;
步骤6、 数据传输过程中存在出现中间人主观、 客观隐匿、 丢失、 篡改部分数据的情况;
步骤7、 数据验证方对哈希摘要数组e ’1、 e’2、 ...、 e’n‑1、 e’n进行哈希计算, 得到哈希摘
要e’, e’=Hv(e’1+e’2+...+e’n‑1+e’n);
步骤8、 数据验证 方利用数据签署方的公钥PA对签名s’e进行验证, verify(PA,e’,s’e)结
果为真, 若签名验证结果 一致, 则进入步骤9; 若结果 不一致, 则所有数据验证失败;
步骤9、 数据验证方对得到的每一项原始数据data ’1、 data’2、 ...、 data ’n‑1、 data’n进行
哈希计算, 生成哈希摘要数组e ″1、 e″2、 ...、 e″n‑1、 e″n, e″n=Hv(data’n);
步骤10、 数据验证方需查询步骤9计算所得的每一个 哈希是否存在于哈希数组, exist
(e″n,e’1、 e’2、 ...、 e’n‑1、 e’n)结果为真, 若存在于哈希数组, 则证明此项数据验证成功; 若
不存在于哈希数组, 则此项数据验证失败。
2.根据权利要求1所述的一种用于非完整数据验证的数字签名方法, 其特征在于: 步骤
2、 步骤3、 步骤7、 步骤9所述的哈希计算包括但不限于MD2、 MD4、 MD5、 MD6、 RIPEMD ‑128、
RIPEMD‑160、 SHA‑1、 SHA‑3、 SHA‑256、 SHA‑512、 BLAKE ‑256、 BLAKE‑512。
3.根据权利要求2所述的一种用于非完整数据验证的数字签名方法, 其特征在于: 哈希
计算技术具有确定性、 单向性、 雪崩效应以及抗冲突 性的特点。
4.根据权利要求1所述的一种用于非完整数据验证的数字签名方法, 其特征在于: 步骤
4、 步骤8所述的非对称签名、 验签算法包括但不限于国密2、 RSA、 D SA、 ECDSA。
5.根据权利要求1所述的一种用于非完整数据验证的数字签名方法, 其特征在于: 步骤
1‑步骤10所述的datan为一组原始数据中的第n个数据信息; en为哈希算法用于datan的输出
值; e为哈希算法用于e1+e2+...+en‑1+en的输出值; dA为数据签署方私钥; PA为数据签署方公
钥; se为数据签署方对哈希摘要e签名后得到的哈希摘要数字签名; data ’n为数据验证方得
到一组数据中的第n个数据信息; e ’n为数据验证方得到一组哈希摘要中的第n个哈希摘要
信息; e″n为哈希算法用于data ’n的输出值; s ’e为数据验证方接收到的哈希摘要数字签名;
e’为哈希算法用于e ’1+e’2+...+e’n‑1+e’n的输出值; Hv(data)为输入消息data, 输出消息摘
要长度为v比特的哈希算法; sign(d,e)为输入消息e和私钥d进行签名, 输出签名结果的非
对称签名算法; v erify(P,e,s)为输入签名s、 消息e和公钥P进行验签, 输出验签结果的非对
称验签算法; exist(e,e1、 e2、 ...、 en‑1、 en)为输入信息 e和一组数据e1、 e2、 ...、 en‑1、 en, 输出e权 利 要 求 书 1/2 页
2
CN 114567441 A
2是否存在于e1、 e2、 ...、 en‑1、 en中的结果。权 利 要 求 书 2/2 页
3
CN 114567441 A
3
专利 一种用于非完整数据验证的数字签名方法
文档预览
中文文档
7 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共7页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-02-07 12:41:07上传分享