CN101150400B - 密钥产生方法 - Google Patents
密钥产生方法 Download PDFInfo
- Publication number
- CN101150400B CN101150400B CN 200710202172 CN200710202172A CN101150400B CN 101150400 B CN101150400 B CN 101150400B CN 200710202172 CN200710202172 CN 200710202172 CN 200710202172 A CN200710202172 A CN 200710202172A CN 101150400 B CN101150400 B CN 101150400B
- Authority
- CN
- China
- Prior art keywords
- key
- matrix
- public
- equipment
- pki
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及密码学、信息安全技术,提供了一种运算简单且可靠的密钥产生方法,应用于设备间的身份认证或设备间的密钥协商,可以对每个对象分配一个公钥/私钥对。本发明所采用的技术方案包括以下步骤:a、产生一个n维对称矩阵M;b、为申请对象分配一个n维向量作为该对象的公钥;c、将n维向量与n维对称矩阵M进行矩阵乘,得到n维向量将n维向量
Description
技术领域
本发明涉及密码学、信息安全技术。
背景技术
在密码学中,认证、密钥交换、密钥协商、密钥共享是非常重要的技术。在所有安全体系中,第一步所进行的工作就是建立一个可信任的环境,它首先进行的就是通信双方的认证,通常利用设备内的公钥与密钥配合认证对方身份。一般的设备内的公钥与密钥都是由密钥分配中心分配的;设备自己产生的情况也有,比如有的IC卡中。
目前,认证使用最多的是基于数字证书的PKI技术,在互联网上,Kerberos认证机制也在广泛使用。在密钥交换方面,目前使用最多的就是DH密钥交换机制。以上的这些机制都有非常明显的缺点:
运算复杂。基于证书的PKI机制,使用了非对称加密算法,如RSA、ECC等。RSA的公钥/私钥对必须是大的素数(一般要求大于1024位),而素数的产生非常复杂,目前还没有一种简单的方法可以直接断定某个数是素数还是合数,只能判定某个数是质数还是合数的可能性大。在进行RSA运算时,必须使用有限域大整数的幂指数运算,其实现非常复杂,对资源耗用非常大。而ECC密码的位数虽然可以少些,但是,基于椭圆曲线的标量乘实现非常困难(目前,关于ECC算法的大部分专利都集中在这里)。一次认证一般要进行多次这样的运算。而DH密钥交换一般也是基于非对称加密算法如RSA和ECC,实现也存在同样问题。
硬件实现规模大。不管是RSA还是ECC,由于其算法复杂,其实现耗用的硬件资源非常大。相对RSA算法,ECC可能需要的资源稍少,但是其算法复杂度大大增加。
运算速度慢。不管是RSA还是ECC,其运算的速度都非常慢。在目前广泛使用的USB Key中,一次这样的运算大约需要300ms左右,因此,在一些认证执行较频繁的场合,RSA和ECC都存在问题。
发明内容
本发明所要解决的技术问题是,提供一种运算简单且可靠的密钥产生方法,可以对每个对象分配一个公钥/私钥对。
本发明为解决上述技术问题所采用的技术方案是,密钥产生方法,应用于设备间的身份认证或设备间的密钥协商,包括以下步骤:
a、首先产生一个秘密的n维对称矩阵M;
原理如下:
任意的一个n维对称矩阵M,必有MT=M,其中MT表示矩阵M的转置;
令
令
又因为MT=M,所以
为了提高系统安全性,对上述方法做进一步完善:
分配两个不同的公钥中不同的元素的个数最好大于2个以上;
组成n维对称矩阵M的向量之间线性无关;n维对称矩阵M的秩大于n/2;更进一步的,n维对称矩阵M的秩等于n;
n维对称矩阵M中尽量不使用零或者只使用少量的零元素;每个元素的位数必须足够大,比如,每个元素为32位以上;
本发明的有益效果是,公钥/私钥对的产生快速,运算简单。采用本发明方法的芯片,可以降低开发难度、降低芯片规模、提高运算速度,降低芯片成本。
具体实施方式
本方案实现方式如下:
密钥分配中心首先产生一个n×n的对称矩阵M,并将此矩阵作为秘密保护,不得向外泄漏;
密钥分配中心为每一个申请对象分配一个向量 作为该对象的公钥或者ID;
分配后的公钥/私钥对可应用于设备间的身份认证以及密钥协商。
一、应用于设备间的身份认证的具体方法如下:
(4)认证双方将Y1与Y2进行比较,如果两者相等,则认为认证通过,否则认证失败。
在实际应用中,一般乘积相等的判定必须采用间接方式,比如进行HASH运算,用运算结果来判定,其中Y=f(K,R)一般事先约定,并采用密码学领域的单向算法,如HASH算法、加密等。
由于每对公钥/私钥均是配对的,因此系统中同样可以使用黑名单功能,即将某一公钥定义为黑名单的成员,就可以达到数字证书黑名单的功能。通过吊销公钥的方式可以同时吊销私钥,达到维护系统完整性的目的。推而广之,公钥不仅可以采用向量,还可以采用任意的对称矩阵,相应的,私钥也可以不采用向量而使用对称矩阵。为了降低关联性,提高安全性,要求在本系统的公钥中保持一定数量的元素值为0,本实施例的公保持一半以上的元素为0。
基于本发明产生的公钥/私钥,结合简单的乘法、加法运算,就能实现设备间的认证认证。
二、应用于设备间的密钥协商的具体方法如下:
以上两步中,f(K,R)为实现约定的一个函数,可以是hash函数、加密函数或者其它的不可逆函数以及他们的组合。因为KV,U=KU,V,所以带入函数f进行计算,能得到相同的结果K;
(5)设备U再次产生一个随机数RU,并将RU传送给设备V;随后计算CU,V=E(RU,K);
(6)设备V同时也产生一个随机数RV,并将RV传送给设备U;随后计算CV,U=E(RV,K);
(7)设备U使用自己计算出的K作为加密的密码,对RV进行加密CU=E(Rv,K),然后将结果CU传送给设备V;
(8)设备V使用自己计算出的K作为加密的密码,对RU进行加密CV=E(RU,K),然后将结果CV传送给设备U;
(9)设备U接收到设备V传送的CV后,将CV与CU,V进行比较,如果相同则认为对方已经产生了与自己相同的密钥;
(10)设备V接收到设备U传送的CU后,将CU与CV,U进行比较,如果相同则认为对方已经产生了与自己相同的密钥;
以上过程全部通过,则双方采用K作为共享密钥进行后续通信。或者使用K来加密传送后续通信的密钥,密钥协商完成。
上述运算都在有限域中进行。一般要求所有的数均为非负整数;并且公钥、私钥向量成员的个数,一般根据要求选择,私钥的成员整数值要求必须为大整数,整数的位数根据具体要求考虑。比如安全性、存储空间等因素。
本发明密钥产生方法简单,产生速度快;认证过程算法简单,只需要简单的有限域乘法和加法,实现简单;算法硬件资源小;运算速度比采用RSA、ECC等认证方式快多个数量级。
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710202172 CN101150400B (zh) | 2007-10-19 | 2007-10-19 | 密钥产生方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710202172 CN101150400B (zh) | 2007-10-19 | 2007-10-19 | 密钥产生方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101150400A CN101150400A (zh) | 2008-03-26 |
CN101150400B true CN101150400B (zh) | 2013-04-03 |
Family
ID=39250756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710202172 Active CN101150400B (zh) | 2007-10-19 | 2007-10-19 | 密钥产生方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101150400B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103812650B (zh) * | 2012-11-12 | 2017-05-31 | 华为技术有限公司 | 信息处理方法、用户设备和加密设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1698309A (zh) * | 2003-04-21 | 2005-11-16 | 索尼株式会社 | 设备认证系统 |
EP1422612B1 (en) * | 2002-11-21 | 2006-06-28 | IP-First LLC | Random number generator bit string filter |
CN1905436A (zh) * | 2005-07-28 | 2007-01-31 | 北京航空航天大学 | 保证数据交换安全的方法 |
-
2007
- 2007-10-19 CN CN 200710202172 patent/CN101150400B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1422612B1 (en) * | 2002-11-21 | 2006-06-28 | IP-First LLC | Random number generator bit string filter |
CN1698309A (zh) * | 2003-04-21 | 2005-11-16 | 索尼株式会社 | 设备认证系统 |
CN1905436A (zh) * | 2005-07-28 | 2007-01-31 | 北京航空航天大学 | 保证数据交换安全的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101150400A (zh) | 2008-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3862956B1 (en) | Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system | |
CN101374043B (zh) | 密钥协商的方法、加/解密的方法及签名/验证的方法 | |
Tseng et al. | A chaotic maps-based key agreement protocol that preserves user anonymity | |
CN101296075B (zh) | 一种基于椭圆曲线的身份认证系统 | |
US11870891B2 (en) | Certificateless public key encryption using pairings | |
CN107342859A (zh) | 一种匿名认证方法及其应用 | |
CN104168114A (zh) | 一种分布式的基于(k,n)门限证书加密方法及系统 | |
CN104821880A (zh) | 一种无证书广义代理签密方法 | |
CN114157427A (zh) | 基于sm2数字签名的门限签名方法 | |
CN101296072B (zh) | 一种椭圆曲线上的共享密钥产生方法 | |
JP2012521109A (ja) | 身元認証及び共有鍵生成の方法 | |
CN104767612A (zh) | 一种从无证书环境到公钥基础设施环境的签密方法 | |
CN104767611A (zh) | 一种从公钥基础设施环境到无证书环境的签密方法 | |
CN102970144A (zh) | 基于身份的认证方法 | |
CN106713349A (zh) | 一种能抵抗选择密文攻击的群组间代理重加密方法 | |
Ranjani et al. | An Extended Identity Based Authenticated Asymmetric Group Key Agreement Protocol. | |
CN108055134B (zh) | 椭圆曲线点数乘及配对运算的协同计算方法及系统 | |
US20220038267A1 (en) | Methods and devices for secured identity-based encryption systems with two trusted centers | |
CN102246456A (zh) | 用于对抗对基于循环群的加密的侧通道攻击的系统和方法 | |
CN105978895A (zh) | 支持非单调访问结构和细粒度撤销的属性基加密方案 | |
CN101150400B (zh) | 密钥产生方法 | |
CN109981254A (zh) | 一种基于有限李型群分解问题的微型公钥加密方法 | |
Kumar et al. | An ID-based authenticated key exchange protocol | |
WO2023055371A1 (en) | Replicated secret share generation for distributed symmetric cryptography | |
CN107276759A (zh) | 一种高效的门限加密方案 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |