一种基于cpk的双向认证及数据交互安全保护方法

文档序号:8925194阅读:767来源:国知局
一种基于cpk的双向认证及数据交互安全保护方法
【技术领域】
[0001]本发明涉及互联网的通信数据交互安全保护领域,具体涉及一种基于CPK的双向认证及数据交互安全保护方法。
【背景技术】
[0002]随着互联网快速的发展,基于互联网的各类用户服务层出不穷,网络已经深入到用户生活的各个方面,用户经常通过网络使用与生活、工作及娱乐息息相关的各类服务。互联网用户所有数据交互如何使其更为可信安全就显得尤为重要。数据加密是保证数据安全传递的唯一使用有效的方法。根据密钥类型的不同可以分为两类:对称加密算法和非对称加密算法。对称加密算法使用相同的密钥(对称密钥)进行数据的加密和解密,加解密数据速度快,主要缺点是由于是单一密钥,长期使用时系统安全性较差,不便于在开放式网络环境下使用。非对称加密算法(公钥加密)使用一对不同的密钥(即非对称密钥,包括一个公钥,可以公开;另一个是私钥,由用户本人秘密保管),由于是双钥密码,破译非常困难,系统安全性很高,因此特别适合于在开放式网络环境下使用,其主要缺点是算法复杂,加解密数据的速度和效率都比较低。
[0003]现有的很多用户服务器都是采用单一的加密方式进行数据的交互,并且对用户或用户设备都只进行单向认证。现有的单向认证方式通过假设认证双方中有一方是可信的,即用户服务器侧被认为是可信的,仅验证用户设备身份,并不验证服务器身份。而在现今的互联网上,病毒、钓鱼网站、木马、黑客等严重威胁着用户数据交互的安全,用户的数据资料等泄漏的事情时常发生。常用的这种单向安全认证和单一的加密方式的安全性受到了威胁,其系统的安全性较差。

【发明内容】

[0004]本发明为解决现有的技术问题,提出一种基于CPK的双向认证及数据交互安全保护方法,利用CPK标识认证技术并整合非对称加密算法和对称加密算法的优点对互联网的用户服务器与用户设备进行双向认证及数据交互保护。
[0005]CPK技术作为一种新型的非对称的密码技术,是一种先进的标识认证体制,具有很好的安全性和易用性,可以方便地实现点对点的离线认证,无须CA认证中心,可实现点对点的静态密钥交换。CPK同时可以兼容在线验证,用户识别后,可以根据需要进行在线的后继处理,系统部署简洁方便,升级灵活。
[0006]为达到上述目的,本发明的实施例采用的如下技术方案:
[0007]—种基于CPK的双向认证及数据交互安全保护方法,适用于互联网的用户服务器与用户设备之间的双向认证及所有数据的交互保护,其特征在于包括:
[0008]用户服务器(SI)接收用户设备(Dl)发来的基于用户标识的用户登录请求,产生随机数a并用CPK标识认证技术生成随机数a的CPK标识公私钥对,将用用户的CPK标识公钥加密的随机数a的CPK标识公私钥对和用用户的CPK标识公钥加密的SI的签名信息下传到D1。用户设备(Dl)将收到的加密数据用用户的CPK标识私钥解密得到随机数a的CPK标识公私钥对和SI的签名信息。用户设备(Dl)用SI的CPK标识公钥验证SI的CPK标识私钥的签名是否合法来完成对用户服务器(Si)的认证。
[0009]若用户服务器(SI)认证合法,用户设备(Dl)通过接受用户输入的SI的用户登录口令并将其转换成用户登录口令的hash值,并用随机数a的CPK标识公钥对用户登录口令的hash值进行加密,将加密后的数据发给SI。用户服务器(SI)用存在系统中的随机数a的CPK标识私钥对其解密得到用户登录口令的hash值并与存在SI系统的用户登录口令的hash值进行对比验证来完成对用户设备(Dl)的认证。若验证通过,SI再产生一个随机数b,用作对称加密的加密密钥,用用户的CPK标识公钥将随机数b加密后发送给Dl ;若验证失败,则将用用户的CPK标识公钥加密的登录失败数据发送给Dl。
[0010]用户设备(Dl)用已存的用户的CPK标识私钥解密出验证结果。若双向认证通过,即可登录成功;若双向认证失败,则登录失败。用户登录成功后,用户设备(Dl)与用户服务器(SI)之间所有的数据都是用随机数b来做会话密钥,进行双向全密态的服务数据交互。
[0011]所述的用户服务器(SI)中保存有用于认证鉴权的多组数据,每一条所述的多组数据包括用户标识、用户私有标识、基于用户私有标识产生的用户的CPK标识公私钥对中的CPK标识公钥、用户登录口令、用户登录口令的hash值和关联的电话终端号码及附加认证鉴权数据。用户私有标识包括但不限于:身份证号码、电话号码、姓名、终端设备的ID号坐寸ο
[0012]所述的用户设备中存有基于用户私有标识产生的用户的CPK标识公私钥对中的CPK标识私钥。用户的CPK标识私钥用于对用户的CPK标识公钥加密的数据进行解密。用户设备包括但不限于:电脑、智能手机、PDA、智能网关等。
[0013]所述的用户标识对于用户服务器(SI)具有唯一性。用户服务器(SI)接收到用户设备(Dl)发来的基于用户标识的用户登录请求后,SI验证该用户标识是否为系统的有效用户标识。若为有效的用户标识的登录请求,则继续双向认证。若为无效的用户标识的登录请求,则退出双向认证。用户标识包括但不限于:用户名、身份证号码、电话号码、姓名等。
[0014]所述的用户设备(Dl)用SI的私有标识计算出SI的CPK标识公钥,用SI的CPK标识公钥验证SI的CPK标识私钥的签名是否合法。若服务器认证通过,则继续双向认证。若服务器认证失败,则退出双向认证。SI的私有标识包括但不限于:设备的ID号、服务器标识等。
[0015]所述的随机数a和随机数a的CPK标识公私钥对具有随机性和时效性。即用户服务器(SI)在每一次新的用户登录请求时,产生的随机数a和随机数a的CPK标识公私钥对都是仅供这次登录使用。用户在用户设备上接收到用户登录口令请求,需在约定的时间内输入用户登录口令;若用户在约定的时间内输入用户登录口令并验证成功,则双向认证通过;若超过约定的时间或用户登录口令验证失败,则基于此次登录请求产生的随机数a和随机数a的CPK标识公私钥对将被丢弃,作废处理,双向认证失败。用户若要继续登录SI,需重新发起新的用户登录请求。用户服务器(SI)再产生新的随机数a和随机数a的CPK标识公私钥对。
[0016]所述用户服务器(SI)产生随机数b具有定时更换性。即用户设备(Dl)与用户服务器(SI)自行约定更换会话密钥的时间。当Dl与SI双向认证成功后,SI会根据双方约定的时间预先产生新的随机数b并用用户的CPK标识公钥对其加密后安全下传给用户设备(Dl)。
[0017]所述的用户设备(Dl)与用户服务器(SI)之间传递的是用户登录口令产生的用户登录口令的hash值或相应的散列函数计算值。
[0018]所述的用户设备(Dl)与用户服务器(SI)是基于互联网或移动运营商网络连接并交互数据。
【附图说明】
[0019]图1为本发明的用户服务器与用户设备之间双向认证及数据交互安全保护流程图
【具体实施方式】
[0020]为使本发明的目的、技术方案和优点更加清楚明白,下面将结合实施例和附图,对本发明进一步详细说明。
[0021]本发明提供一种互联网的用户服务器(SI)与用户设备(Dl)之间的双向认证及所有数据交互安全保护的方法,利用现有的CPK标识认证技术实现所有数据的全过程全密态的信息交互。
[0022]当用户需要使用该用户服务器(SI)时,用户需要在SI上注册,提交SI所需求的用户标识和认证的用户私有信息。用户私有信息包括用户标识、用户登录口令、身份证号、电话终端号码、邮箱以及其他的识别认证用户私有信息,具体看Si的类型而会有所不同。用户服务器(Si)根据用户私有信息提取出用户私有标识,并将用户私有标识用CPK标识认证技术生成用户的CPK标识公私钥对安全下
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1