[发明专利]一种文件签名方法、装置和文件签名验证方法、装置有效
申请号: | 201911346101.3 | 申请日: | 2019-12-24 |
公开(公告)号: | CN111125781B | 公开(公告)日: | 2020-12-01 |
发明(设计)人: | 陈信雄 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F21/64 | 分类号: | G06F21/64;G06F21/60 |
代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 汪阮磊 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 签名 方法 装置 验证 | ||
1.一种文件签名方法,其特征在于,包括:
对电子文件进行哈希运算,得到第一哈希值;
对所述电子文件中的字节进行逻辑运算,得到字节序列;
对所述字节序列进行哈希运算,得到第二哈希值;
对所述电子文件的公钥进行哈希运算,得到第三哈希值;
将第一哈希值、第二哈希值、第三哈希值和所述电子文件的属性信息进行拼接处理,得到信息序列;
基于所述电子文件的私钥,对所述信息序列进行加密处理,得到所述电子文件的签名信息。
2.根据权利要求1所述的方法,其特征在于,所述对所述电子文件中的字节进行逻辑运算,得到字节序列,包括:
对所述电子文件中所有的偶数字节进行提取,得到偶数字节序列;
对所述电子文件中所有的奇数字节进行提取,得到奇数字节序列;
对所述偶数字节序列和所述奇数字节序列进行逻辑运算,得到字节序列。
3.根据权利要求1所述的方法,其特征在于,所述电子文件的属性信息包括多个子属性信息;所述将第一哈希值、第二哈希值、第三哈希值和所述电子文件的属性信息进行拼接处理,得到信息序列,包括:
计算所述电子文件的各个子属性信息的哈希值;
基于哈希值的大小,对第一哈希值、第二哈希值、第三哈希值和所述电子文件的子属性信息进行排序,得到排序后信息;
对排序后信息进行拼接处理,得到信息序列。
4.根据权利要求1所述的方法,其特征在于,所述基于所述电子文件的私钥,对所述信息序列进行加密处理,得到所述电子文件的签名信息,包括:
对所述信息序列进行哈希运算,得到所述信息序列的哈希值;
基于所述电子文件的私钥,对所述信息序列的哈希值进行加密处理,得到所述电子文件的签名信息。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述基于所述电子文件的私钥,对所述信息序列进行加密处理,得到所述电子文件的签名信息之后,还包括:
将所述电子文件的属性信息、所述签名信息和所述公钥存储至所述电子文件的附属文件中;
或者,
将所述电子文件的属性信息、所述签名信息和所述公钥存储至所述电子文件的隐藏域中。
6.一种文件签名验证方法,其特征在于,包括:
基于电子文件的公钥对所述电子文件的签名信息进行解密运算,得到解密后信息序列;
对所述电子文件进行哈希运算,得到第一验证哈希值;
对所述电子文件中的字节进行逻辑运算,得到验证字节序列;
对所述验证字节序列进行哈希运算,得到第二验证哈希值;
对所述电子文件的公钥进行哈希运算,得到第三验证哈希值;
将第一验证哈希值、第二验证哈希值、第三验证哈希值和所述电子文件的属性信息进行拼接处理,得到验证信息序列;
基于所述验证信息序列和所述解密后信息序列,对所述电子文件的签名信息进行验证。
7.根据权利要求6所述的方法,其特征在于,所述电子文件的属性信息包括多个子属性信息;所述将第一验证哈希值、第二验证哈希值、第三验证哈希值和所述电子文件的属性信息进行拼接处理,得到验证信息序列,包括:
计算所述电子文件的各个子属性信息的哈希值;
基于哈希值的大小,对第一验证哈希值、第二验证哈希值、第三验证哈希值和所述电子文件的子属性信息进行排序,得到排序后验证信息;
对排序后验证信息进行拼接处理,得到拼接后验证信息;
对拼接后验证信息进行哈希运算,得到验证信息序列。
8.根据权利要求6所述的方法,其特征在于,所述基于所述验证信息序列和所述解密后信息序列,对所述电子文件的签名信息进行验证,包括:
将所述验证信息序列与所述解密后信息序列进行对比,得到对比结果;
根据所述对比结果,对所述电子文件的签名信息进行验证。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911346101.3/1.html,转载请声明来源钻瓜专利网。