CN106100843B - 多变量公钥生成、加密和解密方法 - Google Patents
多变量公钥生成、加密和解密方法 Download PDFInfo
- Publication number
- CN106100843B CN106100843B CN201610438567.6A CN201610438567A CN106100843B CN 106100843 B CN106100843 B CN 106100843B CN 201610438567 A CN201610438567 A CN 201610438567A CN 106100843 B CN106100843 B CN 106100843B
- Authority
- CN
- China
- Prior art keywords
- public key
- follows
- finite field
- group
- encryption
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/3033—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to pseudo-prime or prime number generation, e.g. primality test
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/3026—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to polynomials generation, e.g. generation of irreducible polynomials
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Complex Calculations (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种多变量公钥生成、加密和解密方法,该方法适用于基站集中控制形式的无线传感器网络中的公钥加密方案,是基于有限域中的运算,该方法在多变量公钥密码框架下,引入了类似RSA变化的方法成功生成公钥多项式,克服了基于扩域变化多变量公钥密码方案易受到线性化方程攻击的问题,且私钥计算效率要远高于RSA算法,可以降低无线传感器网络中普通节点的能量消耗。
Description
技术领域
本发明涉及加密解密方法,尤其涉及一种多变量公钥生成、加密和解密方法。
背景技术
传感器节点通常硬件资源受限、体积受限,导致计算能力和存储能力有限,电源续航能力有限;传感器节点通常数量众多,分布广泛,且通常没有保护措施,所以容易被俘获,易遭受恶意攻击,所以通常要对网络中的节点数据进行加密认证。
认证过程中要用到的公钥密码算法中最常用的就是RSA算法,但是RSA算法涉及大数计算,计算量较大,不适合用于传感器网络中。多变量密码算法计算效率较高,但是大部分易受到线性化方程攻击。
MI方案极大的推动了多变量公钥密码的发展,其思想是通过扩域变换,将小的有限域的元素映射到扩张的大有限域中,在大的有限域中对元素进行变换后再映射回小有限域中。用这种方法来生成多元多次多项式。但是隐含的k线性关系使其易受到线性化方程攻击。
发明内容
发明目的:本发明针对现有技术存在的问题,提供一种结合RSA变化方法的多变量公钥密码方法(Multivariate Public Key Cryptosystem with RSA Method,MPKCRM),包括密码生成、加密和解密方法,该方法有更好的安全性和更快的私钥计算效率。
技术方案:本发明所述的多变量公钥生成方法,包括:
(1)选取两个素数u和v,以及一个阶为q=uv的有限域GF(q);
(2)根据素数u和v选取n组e值和d值,记为{ei|1≤i≤n}和{di|1≤i≤n};其中,ei和di分别表示第i个e值和d值,且eidi=φ(q)=(u-1)(v-1);
(3)采用有限域GF(q)生成两个可逆仿射变换S1、S2,并计算得到对应的逆S1 -1、S2 -1;
(4)利用选取的{ei|1≤i≤n}、S1、S2,结合多变量公钥密码的结构,进行变换,生成公钥为:多元多次多项式组(f1,f2,…,fn)和有限域GF(q);则私钥为:ei(1≤i≤n)、di(1≤i≤n)、S1 -1、S2 -1。
进一步的,步骤(3)具体包括:
(31)采用有限域GF(q)生成可逆仿射变换S1为:S1(x):=A1n×nx+V1n×1、S2为:S2(x):=A2n×nx+V2n×1;其中矩阵A1、A2,向量V1、V2中的数据都取自有限域GF(q),且V2n×1不能为零向量;
(32)根据S1、S2,计算得到对应的逆S1 -1、S2 -1为:S1 -1(x)=A1n×n -1(x-V1n×1)、S2 -1(x)=A2n×n -1(x-V2n×1)。
进一步的,步骤(4)中,多元多次多项式组(f1,f2,…,fn)中fi表达式为:
式中,x1,…,xn为待加密数据,aij为矩阵A1n×n的i行j列元素,kjv为矩阵A2n×n的j行v列元素,bi为向量V1n×1的第i个元素,cj为向量V2n×1的第j个元素。
本发明所述的基于上述公钥生成方法的加密方法包括:将待加密数据拆分为一组数据(x1,x2,…,xn),并采用多元多次多项式组(f1,f2,…,fn)对(x1,x2,…,xn)进行加密得到一组密文(y1,y2,…,yn),其中:
本发明所述的上述加密方法对应的解密方法包括:
(1)利用S1 -1对密文(y1,y2,…,yn)进行处理,得到(x1”,x2”,…,xn”),其中,
(2)对(x1”,x2”,…,xn”)进行F-1运算便得到(x1’,x2’,…,xn’);其中
(3)利用S2 -1对密文(x1’,x2’,…,xn’)进行处理,得到解密数据(x1,x2,…,xn),其中,
有益效果:本发明与现有技术相比,其显著优点是:本发明提供了一种适用于基站集中控制形式的无线传感器网络中的公钥加密方案。该方法是基于有限域中的运算,基于多变量公钥密码基本结构,利用类似RSA的变化方法成功生成公钥多项式。克服了基于扩域变化多变量公钥密码方案易受到线性化方程攻击的问题,且私钥计算效率要远高于RSA算法,用于无线传感器网络中可以降低无线传感器网络中普通节点的能量消耗。
具体实施方式
本实施例中的多变量公钥生成方法,在多变量公钥密码结构基础上,引入了类似RSA的变换方法生成公钥多项式,包括以下步骤:
S1、选取素数u和v,以及一个阶为q=uv的有限域GF(q)。
S2、根据素数u和v选取n组e值和d值,记为{ei|1≤i≤n}和{di|1≤i≤n};其中,ei和di分别表示第i个e值和d值,且eidi=φ(q)=(u-1)(v-1)。
S3、采用有限域GF(q)生成两个可逆仿射变换S1、S2,并计算得到对应的逆S1 -1、S2 -1。
该步骤具体包括:
S31、采用有限域GF(q)生成可逆仿射变换S1为:S1(x):=A1n×nx+V1n×1、S2为:S2(x):=A2n×nx+V2n×1;其中矩阵A1、A2,向量V1、V2都取自有限域GF(q),且V2n×1不能为零向量;
S32、根据S1、S2,并计算得到对应的逆S1 -1、S2 -1为:S1 -1(x)=A1n×n -1(x-V1n×1)、S2 -1(x)=A2n×n -1(x-V2n×1)。
S4、利用选取的{ei|1≤i≤n}、S1、S2,结合多变量公钥密码的结构,进行变换,生成公钥为:多元多次多项式组(f1,f2,…,fn)和有限域GF(q);则私钥为:ei(1≤i≤n)、di(1≤i≤n)、S1 -1、S2 -1。
其中,多元多次多项式组(f1,f2,…,fn)中fi表达式为:式中,式中,x1,…,xn为待加密数据,aij为矩阵A1n×n的i行j列元素,kjv为矩阵A2n×n的j行v列元素,bi为向量V1n×1的第i个元素,cj为向量V2n×1的第j个元素。
多元多次多项式组(f1,f2,…,fn)的计算过程为:假设要对一组数据(x1,x2,…,xn)加密,利用S2对待加密数据进行如下处理得到(x1,,x2,,…,xn,):
假设F(X)是对X中元素进行ei次乘法运算,接下来利用F对(x1’,x2’,…,xn’)进行
映射处理,得到(x1”,x2”,…,xn”):
由于是有限域中的运算,GF(q)中的元素为{0,1,…,q-1}的集合,所以F的作用等价于:
之后用S1对(x1”,x2”,…,xn”)进行如下处理得到(y1,y2,…,yn):
由于合成映射的计算法则为:P=S1°F°S2(τ)=S1(F(S2(τ))),表示多个映射合成后再对自变量进行映射,相当于每个映射依次对变量进行映射。所以上述计算即完成了多变量公钥密码的映射步骤。设密文向量为Yn×1,明文向量为Xn×1,则有:Yn×1=S1°F°S2(Xn×1)。
所以当确定好GF(q)、ei、S1、S2等参数后将就可以得到具体的多变量公钥表达式:
其中:
本实施例中,基于上述公钥生成方法的加密方法,具体包括步骤:将待加密数据拆分为一组数据(x1,x2,…,xn),并采用多元多次多项式组(f1,f2,…,fn)对(x1,x2,…,xn)进行加密得到一组密文(y1,y2,…,yn),其中:
本实施例中,上述加密方法对应的解密方法具体包括步骤:
S1、利用S1 -1对密文(y1,y2,…,yn)进行处理,得到(x1”,x2”,…,xn”),其中,
S2、对(x1”,x2”,…,xn”)进行F-1运算便得到(x1’,x2’,…,xn’);其中
S3、利用S2 -1对密文(x1’,x2’,…,xn’)进行处理,得到解密数据(x1,x2,…,xn),其中,
为便于比较,将加解密实际需要的计算量转化为实际所需乘法次数,与相同安全等级条件下的RSA算法进行比较,如表1所示。从表1可以看出,方案的私钥计算效率很高,用在传感器网络的普通节点中可以减少计算量,从而降低能耗。公钥多项式的形式较为复杂,可用于资源不受限的基站中,所以本发明很适合用于基站集中控制形式的无线传感器网络中对普通节点的认证。
表1私钥计算效率比较
安全等级 | O(280) | O(2128) | O(2192) | O(2256) |
MPKCRM(乘法次数) | 415 | 799 | 1459 | 2295 |
RSA(乘法次数)[40] | 1536 | 41472 | 648000 | 5184000 |
以上所揭露的仅为本发明一种较佳实施例而已,不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (4)
1.一种多变量公钥生成方法,其特征在于该方法包括:
(1)选取两个素数u和v,以及一个阶为q的有限域GF(q),其中,q=uv;
(2)根据素数u和v选取n组e值和d值,记为{ei|1≤i≤n}和{di|1≤i≤n};其中,ei和di分别表示第i个e值和d值,且eidi=φ(q)=(u-1)(v-1);
(3)采用有限域GF(q)生成两个可逆仿射变换S1、S2,并计算得到对应的逆S1 -1、S2 -1;
(4)利用选取的{ei|1≤i≤n}、S1、S2,结合多变量公钥密码的结构,进行变换,生成公钥为:多元多次多项式组(f1,f2,…,fn)和有限域GF(q);私钥为:ei(1≤i≤n)、di(1≤i≤n)、S1 -1、S2 -1;其中,多元多次多项式组(f1,f2,…,fn)中fi表达式为:
式中,x1,…,xn为待加密数据,aij为矩阵A1n×n的i行j列元素,kjv为矩阵A2n×n的j行v列元素,bi为向量V1n×1的第i个元素,cj为向量V2n×1的第j个元素,矩阵A1n×n、A2n×n、向量V1n×1、V2n×1都取自有限域GF(q),且V2n×1不为零向量。
2.根据权利要求1所述的多变量公钥生成方法,其特征在于:步骤(3)具体包括:
(31)采用有限域GF(q)生成可逆仿射变换S1为:S1(x):=A1n×nx+V1n×1、S2为:S2(x):=A2n×nx+V2n×1;
(32)根据S1、S2,计算得到对应的逆S1 -1、S2 -1为:S1 -1(x)=A1n×n -1(x-V1n×1)、S2 -1(x)=A2n×n -1(x-V2n×1)。
3.一种基于权利要求1所述的公钥生成方法的加密方法,其特征在于该方法包括:
将待加密数据拆分为一组数据(x1,x2,…,xn),并采用多元多次多项式组(f1,f2,…,fn)对(x1,x2,…,xn)进行加密得到一组密文(y1,y2,…,yn),其中:
4.一种权利要求3所述的加密方法对应的解密方法,其特征在于该方法包括:
(1)利用S1 -1对密文(y1,y2,…,yn)进行处理,得到(x1”,x2”,…,xn”),其中,
(2)对(x1”,x2”,…,xn”)进行F-1运算便得到(x1’,x2’,…,xn’);其中
(3)利用S2 -1对密文(x1’,x2’,…,xn’)进行处理,得到解密数据(x1,x2,…,xn),其中,
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610438567.6A CN106100843B (zh) | 2016-06-17 | 2016-06-17 | 多变量公钥生成、加密和解密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610438567.6A CN106100843B (zh) | 2016-06-17 | 2016-06-17 | 多变量公钥生成、加密和解密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106100843A CN106100843A (zh) | 2016-11-09 |
CN106100843B true CN106100843B (zh) | 2019-02-05 |
Family
ID=57235850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610438567.6A Active CN106100843B (zh) | 2016-06-17 | 2016-06-17 | 多变量公钥生成、加密和解密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106100843B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107947943B (zh) * | 2017-12-01 | 2020-06-19 | 华南理工大学 | 一种在线离线循环非平衡油醋签名方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101977109A (zh) * | 2010-10-21 | 2011-02-16 | 李晨 | 线性混淆高次方程公钥密码算法 |
CN102006166B (zh) * | 2010-11-11 | 2013-01-02 | 西安理工大学 | 基于多变量多项式对消息匿名环签名的方法 |
CN102006165B (zh) * | 2010-11-11 | 2012-11-07 | 西安理工大学 | 基于多变量公钥密码对消息匿名环签名的方法 |
US20130223629A1 (en) * | 2012-02-24 | 2013-08-29 | Yi-Li Huang | Method of secure key exchange in wireless/wired environments |
CN103501227A (zh) * | 2013-10-23 | 2014-01-08 | 西安电子科技大学 | 一种改进的多变量公钥密码加解密方案 |
-
2016
- 2016-06-17 CN CN201610438567.6A patent/CN106100843B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106100843A (zh) | 2016-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101867474B (zh) | 数字签名方法 | |
CN110138752B (zh) | 一种基于格的公钥加密方法 | |
Hong et al. | Homomorphic encryption scheme based on elliptic curve cryptography for privacy protection of cloud computing | |
CN109981265B (zh) | 一种基于身份的不使用双线性对的密文等值判定方法 | |
CN107864033B (zh) | 一种自举型对称全同态加密方法 | |
WO2017049790A1 (zh) | 一种基于多变量密码技术的在线离线签名系统及方法 | |
CN107425955B (zh) | 一种高效可固定维数陷门派生的格上身份基分级加密方法 | |
CN101977109A (zh) | 线性混淆高次方程公钥密码算法 | |
CN106788963A (zh) | 一种改进的格上基于身份的全同态加密方法 | |
CN105933101B (zh) | 一种基于参数高次偏移的全同态加密公钥压缩方法 | |
Zhang et al. | Practical and efficient attribute-based encryption with constant-size ciphertexts in outsourced verifiable computation | |
Tian et al. | Multidimensional Data Aggregation Scheme For Smart Grid with Differential Privacy. | |
Huang et al. | Block-Level Message-Locked Encryption with Polynomial Commitment for IoT Data. | |
Wang et al. | An ID-based online/offline signature scheme without random oracles for wireless sensor networks | |
CN101860796B (zh) | 一种抗同谋攻击的网络组播信息加密方法 | |
Li et al. | Enabling efficient publicly verifiable outsourcing computation for matrix multiplication | |
US9590805B1 (en) | Ladder-based cryptographic techniques using pre-computed points | |
CN106100843B (zh) | 多变量公钥生成、加密和解密方法 | |
Shen et al. | A multivariate public key encryption scheme with equality test | |
CN107947943B (zh) | 一种在线离线循环非平衡油醋签名方法 | |
CN113343258B (zh) | 一种适用于体测成绩云共享的格基密文策略的属性基代理重加密方法 | |
Mohamed et al. | Towards algebraic cryptanalysis of HFE challenge 2 | |
CN107425972A (zh) | 一种新的格上基于身份的分级加密方法 | |
Yang | Comments on" An Anonymous and Self-Verified Mobile Authentication with Authenticated Key Agreement for Large-Scale Wireless Networks" | |
Miao et al. | Grouped secret sharing schemes based on lagrange interpolation polynomials and chinese remainder theorem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |