一种无需认证中心的自适应数据加密及认证方法

文档序号:7758636阅读:108来源:国知局
专利名称:一种无需认证中心的自适应数据加密及认证方法
技术领域
本发明属于电子商务、电子政务、信息安全等领域中数据保护技术,特别涉及一种 无需认证中心的自适应数据加密及认证方法。
背景技术
在电子商务系统、电子政务系统、信息安全系统、网络通信系统等与信息相关的各 个领域中,数据加密技术与电子签名技术是极其基本的两种数据保护技术。其中,数据加密 技术保护的是数据的机密性,它通过将数据经过加密密钥及数据加密算法,转换成无意义 的密文,避免数据被未经授权者访问。而电子签名技术则对数据的完整性和来源进行认证, 完整地模拟了现实生活中的手写签名的功能,具有身份认证、来源鉴别、抗抵赖、抗伪造等 能力,确保数据电文的真实性、安全性、可靠性和合法性,因而对于保障信息系统的正常运 作具有十分重大的意义。在许多国家,包括我国在内,电子签名都得到了法律上的承认。随着数据加密、电子签名等技术的推广和应用,在实际应用中,人们经常会碰到如 下三种情况的操作(i)仅仅对数据进行加密保护操作;(ii)仅仅对数据进行电子签名操作;(iii)同时对数据进行加密保护和电子签名操作。在现有的应用系统中,为了满足这三种情况的应用需求,通常需要准备加密保护 和电子签名等多个独立的功能部件,这虽然分别满足了上述三种不同需求,但增加了应用 系统所消耗的空间资源,无法满足嵌入式环境、移动通信、无线通信等时间和空间资源受限 环境中的应用需求。另外,在上述三种情况的实际操作过程中,由于采用了电子签名、密钥分配和数据 加密等技术,因此强烈依赖于一个可信第三方机构作为认证中心,在电子签名、密钥分配和 数据加密的认证过程中需要由验证者和认证中心通过实时交互来完成相关认证,因此带来 了较大的计算负担、通信负担和数据膨胀,不仅大大加重了系统的工作负担,降低了系统的 工作效率,无法满足实际应用的需要,严重地限制了相关技术的推广和应用。本发明中所用到的相关术语说明如下根据我国的《电子签名法》的定义,所谓的电子签名,是指数据电文中以电子形式 所含、所附用于识别签名人身份并表明签名人认可其中内容的数据。而数据电文,则是指以 电子、光学、电磁或者类似手段生成、发送、接收或者储存的信息。认证中心指的是根据《电子签名法》第十七条设立的、由当事各方均认可的第三 方可信的、提供相关电子认证服务的电子认证服务机构,它能提供符合《电子签名法》第 二十一条所规定电子签名证书。密钥分发中心指的是用于和用户合作产生用户公钥及其身份证明文书的机构。

发明内容
本发明的目的是提供无需认证中心的自适应数据加密及认证方法,在满足电子签 名、数据加密多种应用需求的前提下,不增加应用系统消耗的空间资源,满足嵌入式环境、 移动通信、无线通信等时间和空间资源受限环境中的应用需求,并且在实现数据加密及认 证过程中,无需依赖于可信第三方机构作为认证中心,无需验证者和认证中心通过实时交 互来完成相关认证,减少计算负担、通信负担和数据膨胀,减轻系统的工作负担,提高系统 的工作效率。为了实现上述目的,本发明提供了一种无需认证中心的自适应数据加密及认证方 法,包括如下步骤(1)确定系统参数选定大整数P,椭圆曲线E(GF(P)) :y2 = x3+ax+b(mod P)是定义在有限域GF(p)上的一条安全椭圆曲线,在椭圆曲线E上随机选取一基点G,设η =#E (GF (ρ))是椭圆曲线E的阶,q是η的一个大素数因子,密钥分发中心的私钥为SKSA,其 中SKsa为小于q-Ι的随机正整数,则密钥分发中心的公钥为PKsa = SKsaXG ;⑵信息收发双 方注册信息收发双方用户分别执行用户注册协议,与密钥分发中心交互,获得各自的私钥 和公钥;(3)发送者对拟发送给接收者的明文消息进行数据加密和认证保护操作,其中所 述步骤(3)具体为(31)发送者随机选取一个小于数q_l的正整数k,根据接收者的公钥、 接收者的身份证明文书、以及密钥分发中心的公钥计算密钥参数;(32)发送者根据正整数 k以及基点G计算签名参数;(33)若仅对明文消息进行数据加密操作,则输出等于零的电子 签名;若仅对明文消息进行电子签名认证保护操作,则直接输出等于明文消息的加密密文; 若不仅对明文消息进行数据加密操作,而且对明文消息进行电子签名认证保护操作,则发 送者采用杂凑摘要算法Hash,计算电子签名,对明文消息进行电子签名认证保护操作,并采 用杂凑摘要算法和数据加密算法,对明文消息和电子签名的组合进行加密操作;(34)发送 者将密文,签名参数和电子签名组合在一起,形成数据报文,将数据报文发送给接收者。在本发明的一个实施例中,所述方法还包括步骤(4)接收者对收到的数据报文进行 解读和验证操作,具体为(41)接收者根据自身的私钥、以及收到的数据报文中的签名参数,计 算密钥参数;(42)若收到的数据报文中的密文等于明文消息,则直接输出等于密文的明文消 息;若收到的数据报文中的电子签名等于零,或者接收者只需进行消息解密操作,则直接输出 明文消息;否则,接收者根据密钥参数,采用杂凑摘要算法和数据解密算法,解密收到的数据报 文中的密文,得到明文消息和原始签名,并从明文消息和电子签名中析出原始签名;(43)若原 始签名与收到的数据报文中的电子签名不同,则说明解密得到的明文无效;否则,接收者检验 收到的数据报文中的签名参数和电子签名与解密数据报文得到的明文消息是否一致,如果一 致,说明收到的数据报文有效,予以接受;否则,说明收到的数据报文无效,直接拒绝。在本发明的另一实施例中,所述步骤(2)中信息发送者获取自身的私钥、公钥的 步骤具体为(21)发送者随机选取一个小于q_l的正整数ka,根据正整数ka以及基点G计 算注册参数,并将注册参数发送给密钥分发中心;(22)密钥分发中心收到发送者本人提交 的注册参数后,随机选取一个小于q_l的正整数k0,根据正整数k0、注册参数以及基点G计 算发送者的公钥;(23)密钥分发中心根据发送者的公钥、发送者的个人身份信息、密钥分 发中心分配的发送者的身份证明文书序列号、以及密钥分发中心的自身标识信息,生成发 送者的身份证明文书;(24)密钥分发中心根据自身的私钥、发送者的身份证明文书、正整 数k、以及大素数因子q,采用杂凑摘要算法,计算验证参数,将验证参数和发送者的身份证明文书组成密钥参数,将密钥参数发送给发送者;(25)发送者收到由密钥分发中心发送的 密钥参数后,检验密钥参数是否由密钥分发中心发送且在传输过程未被篡改;(26)当检验 结果为密钥参数由密钥分发中心发送,但在传输过程被篡改时,发送者要求密钥分发中心 重新发送密钥参数;(27)当检验结果为密钥参数由密钥分发中心发送,且在传输过程未被 篡改时,发送者根据收到的密钥参数,计算自身的私钥,其中,信息接收者通过与上述信息 发送者获取自身的私钥、公钥相同的步骤获取自身的私钥、公钥。与现有技术相比,本发明无需认证中心的自适应数据加密及认证方法基于有限域 上的椭圆曲线离散对数问题的求解困难性,通过将发送者身份和接收者身份有机结合在一 起,无需可信认证中心,仅采用上述步骤S3即可完成对明文消息m的数据加密和内容完整 性认证的功能,且能依据系统的电子签名、数据加密以及同时执行“电子签名+数据加密” 等各种应用需求、自适应地提供不同的功能,这一方面将原有多个独立的功能部件实现不 同的应用需求用一个加密签名部件来实现,不增加应用系统所消耗的空间资源,满足嵌入 式环境、移动通信、无线通信等时间和空间资源受限环境中的应用需求,另一方面无需第三 方可信认证中心的帮助,避免了现有方法采用认证中心带来的计算负担、通信负担和数据 膨胀,本方法减轻了系统的工作负担,提高了系统的工作效率,操作简单、运行高效,能够抵 抗各种已知的各种攻击方案,安全性很高,能确保数据电文的机密性、真实性、安全性、可靠 性和合法性,可以广泛应用于计算机、通信网络、智能卡、手机等各种软硬件环境,以及电子 商务系统、电子政务系统、信息安全系统、网络通信系统等各个领域,具有很好的应用前景。通过以下的描述并结合附图,本发明将变得更加清晰,这些附图用于解释本发明 的实施例。


图1为本发明无需认证中心的自适应数据加密及认证方法的流程图。图2为图1所示无需认证中心的自适应数据加密及认证方法中数据加密和认证保 护操作的流程图。
具体实施例方式现在参考附图描述本发明的实施例,附图中类似的元件标号代表类似的元件。本实施例无需认证中心的自适应数据加密及认证方法包括如下步骤步骤Si,确定系统参数选定大整数P,椭圆曲线E(GF(p)) :y2 = x3+ax+b (modp) 是定义在有限域GF (ρ)上的一条安全椭圆曲线,在椭圆曲线E上随机选取一基点G,设η = #E(GF(p))是椭圆曲线E的阶,q是η的一个大素数因子,密钥分发中心SA的私钥为SKSA, 其中SKsa为小于q-Ι的随机正整数,则密钥分发中心的公钥PKsa = SKsaXG ;步骤S2,信息收发双方,即信息发送者A和信息接受者B,分别执行用户注册协议, 与密钥分发中心SA交互,获得自身的私钥SKa、公钥PKa和私钥SKb、公钥PKb ;步骤S3,发送者A对拟发送给接收者B的明文消息m进行数据加密和认证保护操 作,具体为步骤S31,发送者A随机选取一个小于数q_l的正整数k,根据接收者B的公钥PKB、 接收者B的身份证明文书IDb、以及密钥分发中心SA的公钥PKsa计算密钥参数K,其中密钥参数 K 的计算公式为 K = kX Hash (IDb) XPKSA+kXPKB ;;步骤S32,发送者A根据正整数k以及基点G计算签名参数R,其中签名参数R的 计算公式为R = kXG;步骤S33,若仅对明文消息m进行数据加密操作,则输出电子签名s = 0 ;若仅对明 文消息m进行电子签名认证保护操作,则直接输出加密密文c = m ;若不仅对明文消息m进 行数据加密操作,而且对明文消息m进行电子签名认证保护操作,则发送者A采用系统事先 约定的杂凑摘要算法HashO,对明文消息m进行电子签名认证保护操作,计算电子签名s, 电子签名s的计算公式为s = (Hash(m, R) XRXSKA+k)mod q,并采用系统事先约定的杂凑 摘要算法HashO和数据加密算法EncO,对明文消息m和电子签名s的组合(m,s)进行加 密操作,计算加密密文c,加密密文c的计算公式为c = Enc (Hash (K),(m, s)),如下图; 步骤S34,发送者A将密文c,签名参数R和电子签名s组合在一起,形成数据报文 M= (c,R,s),将数据报文M= (c,R,s)发送给接收者B。由上述技术方案可知,本实施例无需认证中心的自适应数据加密及认证方法基于 有限域上的椭圆曲线离散对数问题的求解困难性,通过将发送者身份和接收者身份有机结 合在一起,无需可信认证中心,仅采用上述步骤S3即可完成对明文消息m的数据加密和内 容完整性认证的功能,且能依据系统的电子签名、数据加密以及同时执行“电子签名+数据 加密”等各种应用需求、自适应地提供不同的功能,这一方面将原有多个独立的功能部件实 现不同的应用需求用一个加密签名部件来实现,不增加应用系统所消耗的空间资源,满足 嵌入式环境、移动通信、无线通信等时间和空间资源受限环境中的应用需求,另一方面无需 第三方可信认证中心的帮助,避免了现有方法采用认证中心带来的计算负担、通信负担和 数据膨胀,本方法减轻了系统的工作负担,提高了系统的工作效率,操作简单、运行高效,能 够抵抗各种已知的各种攻击方案,安全性很高,能确保数据电文的机密性、真实性、安全性、 可靠性和合法性,可以广泛应用于计算机、通信网络、智能卡、手机等各种软硬件环境,以及 电子商务系统、电子政务系统、信息安全系统、网络通信系统等各个领域,具有很好的应用 前景。本方法还包括步骤步骤S4,接收者B收到的数据报文M= (c,R,s)后,对数据报文M= (c,R,s)进 行解读和验证操作,具体为步骤S41,接收者B根据自身的私钥SKB,以及收到的数据报文M= (c, R,s)中的 签名参数R,计算密钥参数K’,其中密钥参数K’的计算公式为K’ =SKbXR5步骤S42,若收到的数据报文M= (c,R,s)中的密文c等于明文消息m,即用户A
7仅进行了电子签名认证保护操作,则直接输出明文消息m= c,结束;若收到的数据报文M =(c,R,s)中的电子签名s等于0,即用户A仅进行了数据加密保护操作,或者接收者B只 需进行消息解密操作,则直接输出明文消息m,结束;否则(即用户同时进行电子签名认证 保护操作和数据加密保护操作),接收者B根据密钥参数K’,采用系统事先约定的杂凑摘要 算法HashO和数据解密算法DecO,解密收到的数据报文M= (c,R,s)中的密文c,得到明 文消息m和原始签名S,,其中密文c的解密公式为(m,s,) = Dec (Hash (K,),c);步骤S43,若原始签名S’和收到的数据报文M= (c, R,s)中的电子签名s不同, 则说明解密得到的明文无效,操作中止,结束;否则,接收者B检验数据报文M= (c,R,s) 中的签名参数R和电子签名s与解密数据报文M = (c,R,s)得到的明文消息m是否一致, 具体检验公式为:sXG = Hash (m, R) XHash (IDa) XRXPKSA+Hash (m, R) XRXPKA+R,如果一 致(即等式成立),说明收到的数据报文M = (c,R,s)有效,予以接受;如果不一致(即等 式不成立),说明收到的数据报文M= (c,R,s)无效,直接拒绝。由上可知,步骤S4配合步骤S3对数据报文进行解读和验证工作,验证时同样能根 据所收到的报文情况,自适应的提供不同的功能解读和验证工作,无需第三方可信认证中 心的帮助。在本实施例中,所述步骤S2中信息发送者A获取自身的私钥SKA、公钥PKa的步骤 具体为步骤S21,发送者A随机选取一个小于q_l的正整数ka,根据正整数ka以及基点G 计算注册参数Ka,并将注册参数&发送给密钥分发中心SA,其中注册参数Ka的计算公式为 KA = kaXG,;步骤S22,密钥分发中心SA收到发送者A本人提交的注册参数Ka后,随机选取一 个小于q_l的正整数k0,根据正整数k0、注册参数Ka以及基点G计算发送者A的公钥PKA, 其中公钥PKa的计算公式为PKA = kXG+KA ;步骤S23,密钥分发中心SA根据发送者A的公钥PKa、发送者A提交的个人身份信 息idA、密钥分发中心SA分配的发送者A的身份证明文书序列号snA、以及密钥分发中心SA 的自身标识信息IDsa(自身标识信息IDsa为依据X. 509标准规定的用于标识密钥分发中心 SA的信息,如密钥分发中心SA的名称、编号、有效期等),生成发送者A的身份证明文书IDa, 即IDa = (PKA, idA,snA, IDsa),其中生成方式为按X. 509标准的规定将公钥PKa、个人身份信 息idA、身份证明文书序列号sn、标识信息IDsa组合拼接在一起;步骤S24,密钥分发中心SA根据自身的私钥SKsa、发送者A的身份证明文书IDA、正 整数k、以及大素数因子q,采用系统事先约定的杂凑摘要算法Hash (),计算验证参数sa,将 验证参数Sa和发送者A的身份证明文书IDa组成密钥参数(IDa,sa),将密钥参数(IDA,sa) 发送给发送者A,其中验证参数Sa的计算公式为sa = (Hash (IDa) Xk+SKSA)mod q ;步骤S25,发送者A收到由密钥分发中心SA发送的密钥参数(IDA,sa)后,检验密钥 参数(IDA,sa)是否由密钥分发中心SA发送且在传输过程未被篡改(即认证密钥参数(IDa, sa)的真实性和完整性),其中检验过程是从密钥参数(IDA,sa)析出自身的公钥PKa和验证 参数sa,并依据密钥分发中心SA的公钥PKsa,验证等式SaXG = Hash(IDa) X (PKa-Ka)+PKsa 是否成立,其中“析出”是将步骤S23的组合拼接方式进行分割实现的;步骤S26,当验证结果为密钥参数(IDA,sa)由密钥分发中心SA发送,但在传输过程被篡改(即等式不成立)时,发送者A要求密钥分发中心SA重新发送密钥参数(IDa,sa);步骤S27,当验证结果为密钥参数(IDA,sa)由密钥分发中心SA发送,且在传输过程 未被篡改(即等式成立)时,发送者A根据收到的密钥参数(IDA,sa),计算自身的私钥SKA, 其中私钥SKa的计算公式为=SKa = sa+Hash (IDa) Xka ;其中,信息接收者B通过与上述信息发送者A获取自身的私钥SKA、公钥PKa相同 的步骤获取自身的私钥SKb、公钥PKB。下面举例说明本实施例的几个参数,验证本实施例无需认证中心的自适应数据加 密及认证方法能实现数据加密及认证功能。在步骤Sl中,随机选定192位大素数P,椭圆曲线E(GF(ρ)) :y2 = x3+ax+b (modp) 是定义在有限域GF(p)上的一条安全椭圆曲线,其上随机选取的基点为G= (x,y),椭圆曲 线E的阶为η = #E (GF (ρ)),q是η的一个大素数因子。其中,ρ =6277101735386680763835789423207666416083908700390324961279a =592616546630905635115220920655548752905575269097021663719b =4804233895280899388319973107961190048453702796229268188014η =165186887773333704311468142720121385129365739211127201127q =165186887773333704311468142720121385129365739211127201127χ =767497456867608967492675205059054232203172713727662547906y =773339505718536040565224929606618157393578012863049959916在步骤S2、S3、S4中,系统约定使用SHA-256算法作为约定的杂凑摘要算法 Hash (),AES-256算法作为数据加密算法Enc ()和Dec ()。以上结合最佳实施例对本发明进行了描述,但本发明并不局限于以上揭示的实施 例,而应当涵盖各种根据本发明的本质进行的修改、等效组合。
权利要求
一种无需认证中心的自适应数据加密及认证方法,包括如下步骤(1)确定系统参数选定大整数p,椭圆曲线E(GF(p))y2=x3+ax+b(modp)是定义在有限域GF(p)上的一条安全椭圆曲线,在椭圆曲线E上随机选取一基点G,设n=#E(GF(p))是椭圆曲线E的阶,q是n的一个大素数因子,密钥分发中心的私钥为SKSA,其中SKSA为小于q 1的随机正整数,则密钥分发中心的公钥为PKSA=SKSA×G;(2)信息收发双方注册信息收发双方用户分别执行用户注册协议,与密钥分发中心交互,获得各自的私钥和公钥;(3)发送者对拟发送给接收者的明文消息进行数据加密和认证保护操作,其中所述步骤(3)具体为(31)发送者随机选取一个小于数q 1的正整数k,根据接收者的公钥、接收者的身份证明文书、以及密钥分发中心的公钥计算密钥参数;(32)发送者根据正整数k以及基点G计算签名参数;(33)若仅对明文消息进行数据加密操作,则输出等于零的电子签名;若仅对明文消息进行电子签名认证保护操作,则直接输出等于明文消息的加密密文;若不仅对明文消息进行数据加密操作,而且对明文消息进行电子签名认证保护操作,则发送者采用杂凑摘要算法Hash,计算电子签名,对明文消息进行电子签名认证保护操作,并采用杂凑摘要算法和数据加密算法,对明文消息和电子签名的组合进行加密操作;(34)发送者将密文,签名参数和电子签名组合在一起,形成数据报文,将数据报文发送给接收者。
2.如权利要求1所述的无需认证中心的自适应数据加密及认证方法,其特征在于,还 包括步骤(4)接收者对收到的数据报文进行解读和验证操作,具体为(41)接收者根据自身的私钥、以及收到的数据报文中的签名参数,计算密钥参数;(42)若收到的数据报文中的密文等于明文消息,则直接输出等于密文的明文消息;若 收到的数据报文中的电子签名等于零,或者接收者只需进行消息解密操作,则直接输出明 文消息;否则,接收者根据密钥参数,采用杂凑摘要算法和数据解密算法,解密收到的数据 报文中的密文,得到明文消息和原始签名,并从明文消息和电子签名中析出原始签名;(43)若原始签名与收到的数据报文中的电子签名不同,则说明解密得到的明文无效; 否则,接收者检验收到的数据报文中的签名参数和电子签名与解密数据报文得到的明文消 息是否一致,如果一致,说明收到的数据报文有效,予以接受;否则,说明收到的数据报文无 效,直接拒绝。
3.如权利要求1所述的无需认证中心的自适应数据加密及认证方法,其特征在于,所 述步骤(2)中信息发送者获取自身的私钥、公钥的步骤具体为(21)发送者随机选取一个小于q_l的正整数ka,根据正整数ka以及基点G计算注册参 数,并将注册参数发送给密钥分发中心;(22)密钥分发中心收到发送者本人提交的注册参数后,随机选取一个小于q_l的正整 数k0,根据正整数k0、注册参数以及基点G计算发送者的公钥;(23)密钥分发中心根据发送者的公钥、发送者的个人身份信息、密钥分发中心分配的 发送者的身份证明文书序列号、以及密钥分发中心的自身标识信息,生成发送者的身份证明文书;(24)密钥分发中心根据自身的私钥、发送者的身份证明文书、正整数k、以及大素数因 子q,采用杂凑摘要算法,计算验证参数,将验证参数和发送者的身份证明文书组成密钥参 数,将密钥参数发送给发送者;(25)发送者收到由密钥分发中心发送的密钥参数后,检验密钥参数是否由密钥分发中 心发送且在传输过程未被篡改;(26)当检验结果为密钥参数由密钥分发中心发送,但在传输过程被篡改时,发送者要 求密钥分发中心重新发送密钥参数;(27)当检验结果为密钥参数由密钥分发中心发送,且在传输过程未被篡改时,发送者 根据收到的密钥参数,计算自身的私钥,其中,信息接收者通过与上述信息发送者获取自身的私钥、公钥相同的步骤获取自身 的私钥、公钥。
全文摘要
本发明公开了一种无需认证中心的自适应数据加密及认证方法,包括步骤(1)确定系统参数;(2)信息收发双方注册;(3)发送者对拟发送给接收者的明文消息进行数据加密和认证保护操作;(4)接收者对收到的数据报文进行解读和验证操作。步骤(3)通过计算密钥参数、计算签名参数、对明文消息仅进行数据加密时输出等于零的电子签名,仅进行电子签名时输出等于明文消息的加密密文,两者同时进行时计算电子签名,对明文消息和电子签名的组合进行加密操作、将密文,签名参数和电子签名组合在一起,形成并发送数据报文来实现。本方法可自适应地对明文消息进行数据加密和内容完整性认证,能避免现有方法采用认证中心以及多个功能部件带来的问题。
文档编号H04L9/32GK101931535SQ201010268510
公开日2010年12月29日 申请日期2010年8月31日 优先权日2010年8月31日
发明者刘泉, 周祖德, 肖攸安 申请人:武汉理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1