一种基于互素序列和杠杆函数的公钥加密方法

文档序号:7984340阅读:180来源:国知局
专利名称:一种基于互素序列和杠杆函数的公钥加密方法
技术领域
公开密钥加密方法(简称公钥加密方法或公钥加密方案)属于密码技术和计算机技术领域,是电子金融安全、电子商务安全、电子政务安全、信息安全、身份认证和可信计算的核心技术之一。
背景技术
密码技术的发展经历了古典密码技术、对称密码技术和公钥密码技术三个阶段。 1976年,美国学者Diffie和Hellman提出公钥密码的思想,标志着公钥密码技术的来临。目前,普遍使用的公钥密码技术有RSA和EKiamal等方案(参见《应用密码学》,美国 Bruce Schneier著,吴世忠、祝世雄等译,机械工业出版社,2000年1月,第334-342页)。 为了缩短参数长度,EKiamal方案常在椭圆曲线上模拟实现,此时,它被称为ECC方案。另外,我国学者陶仁骥教授曾提出了 FAPKC1、FAPKC3方案(参见《计算机学报》,1985 (nil), pp. 401-409)。另外,本发明作者之一苏盛辉博士于2001年提出了 REESSE1公钥加密与数字签名方案(参见《计算机工程与科学》,2003(ri5),pp. 13-16)。RSA和EWamal等方案均是美国人发明的。它们的安全性分别基于大整数分解难题(IFP)和离散对数难题(DLP),即在有限或有效的时间或空间内,对大整数进行因式分解或求离散对数几乎是不可能的。这是一种渐近安全。随着计算机运行速度的提高,它们的安全参数已变得越来越大,极大地增加了加解密系统的运行时间。特别是将来量子计算机的出现,使得大数因式分解和离散对数求解可以在多项式时间内实现,这对RSA、ElGamal和 ECC体制构成了本质威胁。同时,由于种种原因,FAPKC3和REESSE1公钥体制在实践中并没有真正用起来。

发明内容
本发明用于计算机和通信网络中字符、文字、图形、图象和声音等各种数据与文件的加密和解密,以确保数据、文件内容的保密存储与传输,可广泛应用于电子金融、电子商务和电子政务中。本发明希望我们国家在公钥加密领域能够拥有自己的核心技术,以确保国家的信息安全、经济安全和主权安全,同时提高我国防范金融和税务欺诈的技术手段。本节内容略去了对有关性质和结论的证明,如果需要补上,我们将立即呈交。在本文中,乘法运算“χX y”简写成“xy”,“ % ”代表模运算mod,“gcd (X,y) ”代表最大公约数,“ 11X11,,代表M的阶,%,,代表比特的求反,“一,,表示变量的赋值,“E”表示两边对模数求余相等,“V”表示任意选取,“ e,,表示左边变量的值属于某个区间或集合, “x|y”表示χ整除y,“d/’表示χ不能整除y,「x]代表取χ的上整数,Igx表示χ对2求对数,(二乂)代表队,...,AJ中的最大数。3. 1三个基本概念3. 1. 1互素序列的定义与性质
定义1 假设A1,...,An> 1是η个两两不同的整数,且V义、Aj(i乒j)满足gccKAp Aj) = 1 或者 gccKAp Aj) =H^ LMVyt^j e [1,η]有(Λ.///)+▲和⑷/均 I Α,则称这
些整数为一个互素序列,记为{A1; ...,AJ,简记为{AJ。性质1:如果从{A1;...,An}中随机选取me [1,η]个元素,构造一个子序列或子集{ΑΧι,...,Α、},那么,子集积G = UlliAxl -=Axr.. Axm被唯一地确定,即从G到{AXl,... , AxJ的映射是一对一的。证明略。3. 1.2杠杆函数定义2 对于素域Gff (M)上的公钥数字签名体制,密钥变换式中的参数l(i)被称为杠杆函数,如果它具有下列特性①1(.)是一个单射函数,其定义域为[l,n],值域Ω为(1,Μ)的子集,这里η<Μ;②i和1⑴之间的映射被随机确定,且不存在任何显性的从1 (.)到公钥的映射;③当试图从公钥提取私钥时,任何敌手不得不考虑Ω中元素的所有排列;④当解密或数字签名时,私钥拥有者只需考虑Ω中元素的累加和。显然,{l(i)}是在“公开”一端计算量大,在“私有”一端计算量小,它正好起到了 “杠杆”的作用。性质2(1(.)的不确定性)令C{1,…,风、Ci ^ AiWlii) (% Μ) (i = 1,···, n), PJ V ^eO,砀和 Vx、;Λ ζ e [1,/7]附带 ζ 乒 x、y,有①当1 (x) + (y) =1 (ζ)时,有φ') + _ + t(y) + _ * Φ) + (% M);②当1 (χ) +1 (y)兴1 (ζ)时,总存在Cx = A' xff' " (x\ Cy = A ‘ y W' "zff' " (Z)(%M)满足 1' (x)+l' (y) ^ 1' (Z) (%竭且j'jA这里是互素序列中被允许的最大素数。证明略。3. 1.3比特影子串设比特明文分组为!^...Iv定义3 令bp . . bn兴0是一比特串,按以下规则生成的I2l. · · b 被称作比特影子串若bi = 0,则I = ο ;若bi兴0,则I2i等于bi前面连续0的个数加1 ;若bi是最右边的 1,则b等于h前后连续0的个数加1。例如,若bp . . b12 = 100001011100,则仏..= 100005021300。不难理解,有 Σ::ι h = η。性质3 令{A1;...,AJ为一个互素序列,b... I2nSb1... bn#0的比特影子串,则从W . . bn到乂产的映射是一对一的。证明略。3. 2本发明的技术方案注意在本文中,序列{A1;A2,...,AJ有时简写成{AJ,序列{A,C2,...,Cn}有时简写成{CJ,杠杆函数{1(1),1(2),...,1 (η)}有时简写成{1⑴}。本发明是一种基于互素序列和杠杆函数的公钥加密方法,简称REESSE1+加密方法。
根据该方法,可制造密钥生成芯片、加密芯片和解密芯片,或者开发密钥生成软件、加密软件和解密软件等。因此,本发明是一种生产公钥加解密产品所必须遵循的基本原理与技术方案,而不是物理产品本身。本技术方案,由密钥生成、加密和解密等三部分组成。3. 2. 1公钥加密与解密操作本文中,把加密之前的文件或数据叫明文,加密之后的文件或数据叫密文。假设用户V欲通过网络向用户U发送一个文件或数据,且以保密的方式进行。用户V与用户U欲实现这么一个保密通信构想,其过程如下密钥生成首先,用户U去第三方权威机构,即CA证书中心(Certificate Authentication)领取由密钥生成部件输出的一对私钥(Private Key)与公钥(Public Key),私钥必须由用户U自己保管,不得泄密;公钥则允许以公钥证书的形式向外界公开发放,以便于加密时使用。加密操作用户V从CA认证中心获得用户U的公钥证书,在运行加密部件的机器上对欲发送的明文进行加密,得到密文,并通过网络把密文传送给用户U。解密操作用户U接收到用户V发送来的密文后,在运行解密部件的机器上用自己的私钥对密文进行解密,恢复出明文。在公钥加密方法中,为了提高加密的效率,通常采用混合密码技术,即用对称密码体制来加密明文,再用公钥密码体制来加密和传输对称密钥。3. 2. 2密钥生成部分令/1二 {2, ...,P= 1201}、Ω = {5,7, ...,2η+3}。令P1,...,Ρη是自然数中的前η个素数。密钥生成部分供CA认证中心使用,用来产生一对私钥和公钥,其实现方法是(1)随机产生互素序列{、,···,AJ且每个Ai e Λ(2)寻找一个素数M> QLAifmmiiP^ ι双其中k满足m=,。> 21。和Pk彡加+3(3)随机选取 1(1),... , l(n) e Ω 且V/有 1 ⑴乒 1 (j)(4)随机选取 δ κ 菸使得gcd(<5, Μ) = 1 和 |ff| | ^ 2n_2°(5)计算 Ci 一 (AiWiai) s % M 对于 i = 1,· · ·,n,结束最后,以(ICiLM)为公钥,以({AJ.W, δ、Μ)为私钥,{l(i)}可以丢弃。定义4:从Ci= (AiWiai) δ (%M)寻找原始的{Aj、{l(i)}、W、δ被称为多变量排 ^ljXtH (Multivariate Permutation Problem, MPP) 性质4 =MPP在计算难度上至少等价于同一素域中的DLP。证明略。3. 2. 3加密部分加密部分供发送方使用,用来对明文进行加密。发送方为获得加密密钥即接收方公钥,须从CA中心取得接收方的公钥证书。假设({CJ、M)是公钥,b” . . bn是η比特的明文分组。则加密部分的实现方法是(1)置l,k 一 0,i 一 1(2)若 h = 0,令 k 一 k+l,bi — 0,否则做仏—k+1, k —GCfi0AM(3)令 i 一 i+1,若 i 彡 n,转至 O)
⑷若bn = 0,做
权利要求
1. 一种基于互素序列和杠杆函数的公钥加密方法,由密钥生成、加密和解密三个部分组成,密钥生成部分供第三方权威机构产生接收方用户的一对私钥和公钥,加密部分供发送方使用接收方的公钥把明文转换为密文,解密部分供接收方使用自己的私钥把密文还原成明文,其特征在于 密钥生成部分采用了下列步骤1)随机产生互素序列{A1;...,AJ且每个Ai e A2)寻找一个素数M>使得丨M其中k满足ΠΙ e, > 21Q和Pk ( 2n+33)随机选取1(1),..., 1 (η) e Ω且V/勺.,有1⑴乒1 (j)4)随机选取δ ,ψ < 份使得 gcd(<5, Μ) = 1 和 |ff| I ^ 2n_2。5)计算Ci 一 (AiWiaj) s % M 对于 i = 1,. . .,n,结束最后,以(IClKM)为公钥,以({AJ、W、δ、Μ)为私钥,且私钥不能外泄; 加密部分采用了下列步骤发送方以接收方的公钥({CJ、M)作为加密密钥,针对η比特的明文分组!^…比做(1)置知l,k —0,i — 1(2)若、=0,令k 一 k+1, bj — 0,否则做仏一 k+1, k — 0,G<- GCtb'%M(3)令i—i+1,若i彡n,转至O)(4)若bn = 0,做 hn_k — bn_k+k,G<- GiCn^f % M 最后,得到密文么它将被发送给接收方; 解密部分采用了下列步骤接收方以自己的私钥({AJ、W、δ、Μ)作为解密密钥,并针对密文 做①计算JejP%μ②计算GW2VoM③置b” · · bn — 0,G 1(5,i 一 1,k 一 0④若V+1 I GJiG — G M/+ 1A 一 1,k 一 0 否则,令k —k+1⑤令i— i+1,若i彡η且G乒1,转到④⑥若k乒 且(An_k)k|G,做G —G/(An_k)k⑦若G兴1,转到②,否则,结束最后,接收方恢复出发送方的原始明文b” . . bn。
全文摘要
一种基于互素序列和杠杆函数的公钥加密方法,属于密码技术和计算机技术领域;包括密钥生成、加密和解密三个部分;其接收方用户拥有两个密钥,一个只能私有,叫私钥,一个可以公开,叫公钥,它从Ci≡(AiWl(i))δ(%M)得来,且从它不能推导出私钥({Ai}、W、δ);发送方使用接收方的公钥把明文转换成密文(加密),接收方使用自己的私钥把密文还原成明文(解密);该方法具有模长不大、安全性高、计算速度较快、密钥使用方便、技术可以公开等特点,可用于计算机和通信网络中任何文件、数据的保密存储与传输。
文档编号H04L9/32GK102347840SQ20111030799
公开日2012年2月8日 申请日期2011年10月12日 优先权日2011年10月12日
发明者吕述望, 苏盛辉, 蔡吉人 申请人:吕述望, 苏盛辉, 蔡吉人
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1