[发明专利]一种椭圆曲线公钥文本化传递方法及系统有效
申请号: | 201910067468.5 | 申请日: | 2019-01-24 |
公开(公告)号: | CN109818743B | 公开(公告)日: | 2020-08-28 |
发明(设计)人: | 王斌;陈朝晖;李彦初;荆继武;顾小卓;马原 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | H04L9/30 | 分类号: | H04L9/30;H04L9/08 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 司立彬 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 椭圆 曲线 文本 传递 方法 系统 | ||
本发明公开了一种椭圆曲线公钥文本化传递方法及系统。本方法为:1)对公钥P进行压缩,得到压缩后的公钥P’;2)选取2k个汉字组成数组C,根据公钥P’的长度确定编码公钥P所需汉字个数n;3)设置一保留位OP,然后根据该公钥P’与该保留位OP生成一比特串M;4)将比特串M以每块k位按序拆分为n块,对于每一块中的k位比特串,将其转化为十进制数i,取出数组C中第i个字符C[i]表示该块数据,于是依次将代表n块数据的n个字符拼接后形成新的字符串S;5)将该字符串S与设定的附加信息拼接为字符串L分享给目标接收端。本发明提供了一种对用户友好的、简单易用的密钥传输方法,为使用公钥密码保密通信奠定基础。
技术领域
本发明属于密码技术领域,尤其涉及一种应用于椭圆曲线密码算法中公钥的文本化传递方法及系统。
背景技术
基于公钥密码学的加解密技术应用广泛,成为保证信息安全的重要工具,尤其是在数据加密、数字签名等方面发挥着巨大的作用。公钥密码算法中有一对公私钥,私钥应被保密存储,而公钥应该被公开。在实际的情境中,在使用公钥密码算法时,使用合适的方式来公开自己的公钥是必要的一步。对普通大众来说,使用公钥加密算法可以实现自己与他人之间的数据加密传输,而将自己的公钥便利地分享给他人并有效的管理、使用公钥仍是一个障碍。
椭圆曲线密码算法是一种公钥加密算法,也称非对称加密算法。公钥加密算法含有两个密钥:公钥密码(简称公钥)和私有密钥(简称私钥),用户同时拥有私钥和公钥这一对密钥,其实私钥为自己保存不可公开,公钥可被公开被任何人使用。
公钥加密算法一般用于加密与数字签名等方面。用户A拥有其私钥与公钥,并将公钥公开给用户B:在用于加密时,用户B将要传递的消息使用A的公钥加密后传递给A,被加密后的消息只能由拥有私钥的用户A来解密;在用于数字签名时,用户A将待签名的消息使用自己的私钥计算出数字签名,将消息与数字签名一并发送给用户B,用户B可用A的公钥来鉴别该消息是否真的来自于A。
公钥加密体系中,双方无需使用私密信道来传递任何秘密信息,只需将一方的公钥以任何公开的形式传递给对方,双方即可进行加密通信。
SM2算法是中国的标准商用密码算法,属于椭圆曲线算法,在密码产品中被广泛的支持和使用。SM2圆曲线算法的具体细节参考GM/T 0003-2012《SM2椭圆曲线公钥密码算法》。
SM2算法中的椭圆曲线E是定义在有限域Fq上的椭圆曲线,G是椭圆曲线E上n阶的基点,椭圆曲线方程为y2=x3+ax+b,其中a和b为常数。SM2算法中公钥为椭圆曲线上点P的坐标,共512比特,考虑以文本的形式表示公钥数据,使用常规的十六进制表示法,需要128字符,字符数量较多,用户间传递不便,体验较差。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种椭圆曲线公钥的文本化传递方法及系统,以使得通信双方或多方能以简单的方式向对方分享自身的公钥同时有效地管理他人的公钥,为使用公钥密码算法进行后续的保密通信奠定基础。
本发明的技术方案为:
一种椭圆曲线公钥的文本化传递方法,其步骤包括:
1)使用椭圆曲线上点压缩方法对公钥P进行压缩,得到压缩后的公钥P’;其中公钥P为椭圆曲线上坐标点P的坐标;
2)选取2k个汉字组成数组C,用C[i]表示数组C中的第i个字符;k为一个汉字字符的二进制位数;根据公钥P’的长度确定编码公钥P所需汉字个数n;
3)设置一保留位OP,然后根据该公钥P’与该保留位OP生成一比特串M;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910067468.5/2.html,转载请声明来源钻瓜专利网。