CN105049208A - 基于双重困难的数据加密方法 - Google Patents

基于双重困难的数据加密方法 Download PDF

Info

Publication number
CN105049208A
CN105049208A CN201510331229.8A CN201510331229A CN105049208A CN 105049208 A CN105049208 A CN 105049208A CN 201510331229 A CN201510331229 A CN 201510331229A CN 105049208 A CN105049208 A CN 105049208A
Authority
CN
China
Prior art keywords
parameter
modn
make
encryption
follows
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.)
Granted
Application number
CN201510331229.8A
Other languages
English (en)
Other versions
CN105049208B (zh
Inventor
赵毅
潘红涛
刘东升
郭飞鹏
王蓓
周怡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Gongshang University
Original Assignee
ZHEJIANG KINSTAR S&T CO Ltd
Zhejiang Gongshang University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZHEJIANG KINSTAR S&T CO Ltd, Zhejiang Gongshang University filed Critical ZHEJIANG KINSTAR S&T CO Ltd
Priority to CN201510331229.8A priority Critical patent/CN105049208B/zh
Publication of CN105049208A publication Critical patent/CN105049208A/zh
Application granted granted Critical
Publication of CN105049208B publication Critical patent/CN105049208B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

可验证的公开密钥加密方法,包括初始化、加密、解密的步骤。在安全上,它同时具有双重困难度的数学假设,分别为分解因数与Diffie-Hellman问题,换句话说,如果要破解这种加密方法,攻击者必需同时解决这两种计算上的数学难题。这加密方法利用部分暗门单向函数的概念所设计出来的,它具有语意安全能抵抗选择明文攻击与选择密文攻击,具有良好的实用价值。

Description

基于双重困难的数据加密方法
技术领域
本发明涉及数据加密保护技术领域,具体涉及一种基于双重困难的可验证加密方法。特别是适用移动支付交易过程中数据的实时加密。
技术背景
移动支付的安全问题是移动电子商务面临的一个致命问题,移动支付过程中包含了移动用户发送给商家的信息和移动用户发送给银行的密码之类的敏感数据,这些数据关系到用户的切身利益,要求较高的保密性。但移动网络存在着许多不安全因素,例如有人会利用假造信息或者监听个人信息,所以需建立一个安全机制来保护我们的秘密信息,而这机制称为密码学技术,它主要是让数据在网络上传送时,能确保数据的安全性、隐秘性与完整性。密码学技术是将数据做加密动作,将数据经加密变成无意义的数据串,所以在网络传送时,其他人是无法辨识真正的数据内容,只有合法的接受者才可以从这加密的数据中获取真正的内容。
加密技术大致可分为两种:第一种是对称式密钥加密技术,这种类型的加密技术在加密与解密算法中利用同一把密钥,优点是利用同一把密钥可以加快加解密速度,但问题是如何确保密钥的传送与管理;第二种是非对称式密钥加密技术,这种类型的系统在加解密会使用两把不同的密钥,一把为公开密钥,在公开网络上当有人要传送数据时,必须先找寻接收者的公开密钥,将数据进行加密发送给接受者,接受者收到密文后利用自己保留的另一把私钥进行解密,得到明文。这种技术的优点是比对称式加密技术安全,缺点是加解密速度较慢。
1976年Diffie与Hellman两位学者首先提出公开密钥的概念,其后有很多学者陆续提出许多公开密钥加密算法,而这些算法设计大多都建立在某种计算时间上的困难度假设,例如解离散对数的问题、分解因数或迷袋问题等等,这些系统都是多项式时间上的安全,随着科技进步,计算速度越来越快,基于计算时间上安全的密码系统,将遭受到威胁,所以有学者们提出一个密码系统同时基于两种困难度的数学假设,即分解因数与Diffie-Hellman问题,也就是说如果要破解这类型的密码系统需要同时具备破解两个困难的假设,本发明就是基于两种困难度的公开密钥加密方法。
发明内容
本发明要克服现有技术的上述缺点,提出一个可验证的公开密钥加密方法,在安全上,它同时具有双重困难度的数学假设,分别为分解因数与Diffie-Hellman问题,换句话说,如果要破解这加密方法,攻击者必需同时解决这两种计算上的数学难题。
本发明所述的基于双重困难的数据加密方法,包括如下步骤:
步骤1,初始化;首先选择一个安全参数L,将L位元的参数输入生成函数F(·)生成函数F(1L)产生Enc和Dec两个算法,分别为加密算法与解密算法,所使用的参数生成方式如下:
Step11令n为一个Williams整数,n=p×q,其中p=3mod8,q=7mod8,且p=2p′+1,q=2q′+1,长度为其中p、q、p′和q′均为大质数,以|n|=k表示n的位元长度;
Step12令G=<g>是乘法群最大的循环子群,g为循环子群的生成元,G的秩λ(n)=lcm(p-1,q-1)=2p′q′为Carmichael’s函数,的定义如下;
Step13选择一个整数 x &Element; R Z n * = { 0 < x < n | gcd ( x , n ) = 1 } 当密钥,并计算对应的公钥y=gxmodn,0<x<n;
Step14设置公开参数r1、r2、r3、r4,令r1=1∈Z(1,1)、r2=-1∈Z(-1,-1)、r3=2∈Z(-1,1)和r4=-2∈Z(1,-1),Z(1,1)、Z(-1,-1)、Z(-1,1)、Z(1,-1)分成的四个等价类集,定义如下:
Z ( 1 , 1 ) = { x &Element; Z n * | x p = 1 , x q = 1 }
Z ( - 1 , - 1 ) = { x &Element; Z n * | x p = - 1 , x q = - 1 }
Z ( - 1 , 1 ) = { x &Element; Z n * | x p = - 1 , x q = 1 }
Z ( 1 , - 1 ) = { x &Element; Z n * | x p = 1 , x q = - 1 }
Step15公开参数(n,r1,r2,r3,r4)与公钥y,保留密钥x与参数(p,q);
设加密算法里有一个Hash函数H1和一个生成函数H2,定义如下:
H 1 : { 0 , 1 } k + k 0 &RightArrow; { 0 , 1 } k
H 2 : { 0 , 1 } k &RightArrow; { 0 , 1 } k + k 0
这里k0<k为一安全参数,接下来利用这些参数与两个函数进行明文的加解密运算;
步骤2,加密;
Step21利用Jacobi符号来检验明文m的信息,分成四种情况讨论并计算参数R的值:
Case1如果 J ( m n ) = 1 a n d 0 &le; m < n 2 , 令R=r1m2modn
Case2如果 J ( m n ) = 1 a n d n 2 &le; m < n , 令R=r2m2modn
Case3如果 J ( m n ) = - 1 a n d 0 &le; m < n 2 , 令R=r3m2modn
Case4如果 J ( m n ) = - 1 a n d n 2 &le; m < n , 令R=r4m2modn
r1、r2、r3、r4为上述四个公开参数;
Step22随机选取两个数v与s,|v|字串长度为k,|s|字串长度为k0(k0<k),两个数皆为安全参数;
Step23计算参数d=H1(R||s);
Step24计算a=gdmodn、b=yd·vmodn和 得到密文(a,b,c);
步骤3,解密;
Step31利用密钥x,计算随机参数v=a-xbmodn;
Step32计算检验参数 M = R | | s = c &CirclePlus; H 2 ( v ) ;
Step33验证是否成立;如果成立,取M的前k位元得到R值;否则,密文(a,b,c)不合法;
Step34解二次剩余方程式Z2=r-1Rmodn,参数r={r1,r2,r3,r4},得到四根z1,z2,z3,z4
Step35由参数r值来确定四根中的明文m。
本发明方法给出一个公开密钥加密方法,利用模组二次剩余的特性与部分单向暗门函数所建构成的,这种加密方法同时基于两种的困难度,分解因数与Diffie-Hellman问题,若要从密文中取出明文,需在多项式时间内解决这两种困难的数学假设,此外这种加密方法具有抵抗选择明文攻击与选择密文攻击,具有良好的安全性。
本发明的有益效果在于:
能够在确保数据传输的正确性与完整性的同时,基于双重困难的加密方法,具有良好的安全性和实际应用价值。
附图说明
图1是本发明方法的流程图。
图2是本发明的解密流程图。
具体实施方式
下面参照附图,进一步说明本发明。
本发明所述的基于双重困难的数据加密方法,包括如下步骤:
步骤1,初始化;首先选择一个安全参数L,将L位元的参数输入生成函数F(·)生成函数F(1L)产生Enc和Dec两个算法,分别为加密算法与解密算法,所使用的参数生成方式如下:
Step11令n为一个Williams整数,n=p×q,其中p=3mod8,q=7mod8,且p=2p′+1,q=2q′+1,长度为其中p、q、p′和q′均为大质数,以|n|=k表示n的位元长度;
Step12令G=<g>是乘法群最大的循环子群,g为循环子群的生成元,G的秩λ(n)=lcm(p-1,q-1)=2p′q′为Carmichael’s函数,的定义如下;
Step13选择一个整数 x &Element; R Z n * = { 0 < x < n | g c d ( x , R ) = 1 } 当密钥,并计算对应的公钥y=gxmodn,0<x<n;
Step14设置公开参数r1、r2、r3、r4,令r1=1∈Z(1,1)、r2=-1∈Z(-1,-1)、r3=2∈Z(-1,1)和r4=-2∈Z(1,-1),Z(1,1)、Z(-1,-1)、Z(-1,1)、Z(1,-1)分成的四个等价类集,定义如下:
Z ( 1 , 1 ) = { x &Element; Z n * | x p = 1 , x q = 1 }
Z ( - 1 , - 1 ) = { x &Element; Z n * | x p = - 1 , x q = - 1 }
Z ( - 1 , 1 ) = { x &Element; Z n * | x p = - 1 , x q = 1 }
Z ( 1 , - 1 ) = { x &Element; Z n * | x p = 1 , x q = - 1 }
Step15公开参数(n,r1,r2,r3,r4)与公钥y,保留密钥x与参数(p,q);
设加密算法里有一个Hash函数H1和一个生成函数H2,定义如下:
H 1 : { 0 , 1 } k + k 0 &RightArrow; { 0 , 1 } k
H 2 : { 0 , 1 } k &RightArrow; { 0 , 1 } k + k 0
这里k0<k为一安全参数,接下来利用这些参数与两个函数进行明文的加解密运算;
步骤2,加密;
Step21利用Jacobi符号来检验明文m的信息,分成四种情况讨论并计算参数R的值:
Case1如果 J ( m n ) = 1 a n d 0 &le; m < n 2 , 令R=r1m2modn
Case2如果 J ( m n ) = 1 a n d n 2 &le; m < n , 令R=r2m2modn
Case3如果 J ( m n ) = - 1 a n d 0 &le; m < n 2 , 令R=r3m2modn
Case4如果 J ( m n ) = - 1 a n d n 2 &le; m < n , 令R=r4m2modn
r1、r2、r3、r4为上述四个公开参数;
Step22随机选取两个数v与s,|v|字串长度为k,|s|字串长度为k0(k0<k),两个数皆为安全参数;
Step23计算参数d=H1(R||s);
Step24计算a=gdmodn、b=yd·vmodn和 得到密文(a,b,c);
步骤3,解密;
Step31利用密钥x,计算随机参数v=a-xbmodn;
Step32计算检验参数 M = R | | s = c &CirclePlus; H 2 ( v ) ;
Step33验证是否成立;如果成立,取M的前k位元得到R值;否则,密文(a,b,c)不合法;
Step34解二次剩余方程式Z2=r-1Rmodn,参数r={r1,r2,r3,r4},得到四根z1,z2,z3,z4
Step35由参数r值来确定四根中的明文m。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。

Claims (1)

1.基于双重困难的数据加密方法,包括如下步骤:
步骤1,初始化;首先选择一个安全参数L,将L位元的参数输入生成函数F(·)生成函数F(1L)产生Enc和Dec两个算法,分别为加密算法与解密算法,所使用的参数生成方式如下:
Step11令n为一个Williams整数,n=p×q,其中p=3mod8,q=7mod8,且p=2p′+1,q=2q′+1,长度为其中p、q、p′和q′均为大质数,以|n|=k表示n的位元长度;
Step12令G=<g>是乘法群最大的循环子群,g为循环子群的生成元,G的秩λ(n)=lcm(p-1,q-1)=2p′q′为Carmichael′s函数,的定义如下;
Step13选择一个整数 x &Element; R Z n * = { 0 < x < n | g c d ( x , n ) = 1 } 当密钥,并计算对应的公钥y=gxmodn,0<x<n;
Step14设置公开参数r1、r2、r3、r4,令r1=1∈Z(1,1)、r2=-1∈Z(-1,-1)、r3=2∈Z(-1,1)和r4=-2∈Z(1,-1),Z(1,1)、Z(-1,-1)、Z(-1,1)、Z(1,-1)分成的四个等价类集,定义如下:
Z ( 1 , 1 ) = { x &Element; Z n * | x p = 1 , x q = 1 }
Z ( - 1 , - 1 ) = { x &Element; Z n * | x p = - 1 , x q = - 1 }
Z ( - 1 , 1 ) = { x &Element; Z n * | x p = - 1 , x q = - 1 }
Z ( 1 , - 1 ) = { x &Element; Z n * | x p = 1 , x q = - 1 }
Step15公开参数(n,r1,r2,r3,r4)与公钥y,保留密钥x与参数(p,q);
设加密算法里有一个Hash函数H1和一个生成函数H2,定义如下:
H 1 : { 0 , 1 } k + k 0 &RightArrow; { 0 , 1 } k
H 2 : { 0 , 1 } k &RightArrow; { 0 , 1 } k + k 0
这里k0<k为一安全参数,接下来利用这些参数与两个函数进行明文的加解密运算;
步骤2,加密;
Step21利用Jacobi符号来检验明文m的信息,分成四种情况讨论并计算参数R的值:
Case1如果 J ( m n ) = 1 a n d 0 &le; m < n 2 , 令R=r1m2modn
Case2如果 J ( m n ) = 1 a n d n 2 &le; m < n , 令R=r2m2modn
Case3如果 J ( m n ) = - 1 a n d 0 &le; m < n 2 , 令R=r3m2modn
Case4如果 J ( m n ) = - 1 a n d n 2 &le; m < n , 令R=r4m2modn
r1、r2、r3、r4为上述四个公开参数;
Step22随机选取两个数v与s,|v|字串长度为k,|s|字串长度为k0(k0<k),两个数皆为安全参数;
Step23计算参数d=H1(R||s);
Step24计算a=gdmodn、b=yd·vmodn和得到密文(a,b,c);
步骤3,解密;
Step31利用密钥x,计算随机参数v=a-xbmodn;
Step32计算检验参数 M = R | | s = c &CirclePlus; H 2 ( v ) ;
Step33验证是否成立;如果成立,取M的前k位元得到R值;否则,密文(a,b,c)不合法;
Step34解二次剩余方程式Z2=r-1Rmodn,参数r={r1,r2,r3,r4},得到四根z1,z2,z3,z4
Step35由参数r值来确定四根中的明文m。
CN201510331229.8A 2015-06-15 2015-06-15 基于双重困难的数据加密方法 Active CN105049208B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510331229.8A CN105049208B (zh) 2015-06-15 2015-06-15 基于双重困难的数据加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510331229.8A CN105049208B (zh) 2015-06-15 2015-06-15 基于双重困难的数据加密方法

Publications (2)

Publication Number Publication Date
CN105049208A true CN105049208A (zh) 2015-11-11
CN105049208B CN105049208B (zh) 2018-04-20

Family

ID=54455431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510331229.8A Active CN105049208B (zh) 2015-06-15 2015-06-15 基于双重困难的数据加密方法

Country Status (1)

Country Link
CN (1) CN105049208B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457936A (zh) * 2019-07-01 2019-11-15 阿里巴巴集团控股有限公司 数据交互方法、装置和电子设备
CN113965314A (zh) * 2021-12-22 2022-01-21 深圳市洞见智慧科技有限公司 同态加密处理方法及相关设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1909451A (zh) * 2006-07-19 2007-02-07 上海交通大学 二次域密码产生方法和二次域密码签名方法
CN101436932A (zh) * 2008-12-18 2009-05-20 天津大学 一种抵抗简单电耗攻击的模幂计算方法
US20120237022A1 (en) * 1999-09-28 2012-09-20 Tyco Healthcare Group Lp Sensor with signature of data relating to sensor
CN103414569A (zh) * 2013-08-21 2013-11-27 王威鉴 一种建立抗攻击的公钥密码的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120237022A1 (en) * 1999-09-28 2012-09-20 Tyco Healthcare Group Lp Sensor with signature of data relating to sensor
CN1909451A (zh) * 2006-07-19 2007-02-07 上海交通大学 二次域密码产生方法和二次域密码签名方法
CN101436932A (zh) * 2008-12-18 2009-05-20 天津大学 一种抵抗简单电耗攻击的模幂计算方法
CN103414569A (zh) * 2013-08-21 2013-11-27 王威鉴 一种建立抗攻击的公钥密码的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘亮: "基于公钥密码体制的移动支付安全协议研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457936A (zh) * 2019-07-01 2019-11-15 阿里巴巴集团控股有限公司 数据交互方法、装置和电子设备
US10873452B1 (en) 2019-07-01 2020-12-22 Advanced New Technologies Co., Ltd. Secret sharing data exchange for generating a data processing model
CN113965314A (zh) * 2021-12-22 2022-01-21 深圳市洞见智慧科技有限公司 同态加密处理方法及相关设备
CN113965314B (zh) * 2021-12-22 2022-03-11 深圳市洞见智慧科技有限公司 同态加密处理方法及相关设备

Also Published As

Publication number Publication date
CN105049208B (zh) 2018-04-20

Similar Documents

Publication Publication Date Title
Tseng et al. A chaotic maps-based key agreement protocol that preserves user anonymity
CN101977112B (zh) 一种基于神经网络混沌吸引子的公钥密码加密和解密方法
CN1859090B (zh) 一种基于身份的密码方法和系统
US8184808B2 (en) Chaotic asymmetric encryption process for data security
Nagaraj et al. Data encryption and authetication using public key approach
Ayele et al. A modified RSA encryption technique based on multiple public keys
CN101296072B (zh) 一种椭圆曲线上的共享密钥产生方法
EP2945347B1 (en) Methods and devices for securing keys when key-management processes are subverted by an adversary
KR100989185B1 (ko) Rsa기반 패스워드 인증을 통한 세션키 분배방법
CN109756335B (zh) 一种阶为梅森素数的有限域乘法群的公钥加密解密方法
KR100396740B1 (ko) 계산적 디피-헬만 가정에 기반하는 안전성 증명 가능한공개키 암호화 방법
CN105049208A (zh) 基于双重困难的数据加密方法
Kavin et al. A Novel M-Commerce Data Security Mechanism using Elliptic Curve Cryptography
Moldovyan et al. Generating cubic equations as a method for public encryption
Sharma et al. Chua’s Oscillator Based RSA Algorithm With Authenticated Masked Public Key for Secure Communication
Goel Encryption algorithm using dual modulus
KR101793528B1 (ko) 무인증서 공개키 암호 시스템
Andreevich et al. On Using Mersenne Primes in Designing Cryptoschemes
CN107276759A (zh) 一种高效的门限加密方案
Chopra Comparative analysis of key exchange algorithms in cryptography and its implementation
Wu et al. A publicly verifiable PCAE scheme for confidential applications with proxy delegation
Singh et al. A lightweight signcryption scheme based on elliptic curve cryptography
CN104125061A (zh) 使用rsa加密算法的电子部件中的防攻击方法
Rajanbabu et al. Implementing a reliable cryptography based security tool for communication networks
Upadhyay Attack on rsa cryptosystem

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Liu Dongsheng

Inventor after: Guo Feipeng

Inventor before: Zhao Yi

Inventor before: Pan Hongtao

Inventor before: Liu Dongsheng

Inventor before: Guo Feipeng

Inventor before: Wang Bei

Inventor before: Zhou Yi

CB03 Change of inventor or designer information
TA01 Transfer of patent application right

Effective date of registration: 20180205

Address after: Hangzhou City, Zhejiang province 310018 Xiasha Higher Education Park is 18 street.

Applicant after: Zhejiang Gongshang University

Address before: Hangzhou City, Zhejiang province 310003 Xiacheng Jianguo North Road, No. 276 East building 14 floor

Applicant before: Zhejiang Kinstar S&T Co., Ltd.

Applicant before: Zhejiang Gongshang University

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant