一种对等网络环境下的身份认证方法与加密通信方法

文档序号:9330558阅读:206来源:国知局
一种对等网络环境下的身份认证方法与加密通信方法
【技术领域】
[0001]本发明涉及计算机软件及互联网通信领域,尤其是一种在对等网络(peer topeer,以下简称p2p网络)环境下的身份认证方法与加密通信方法。
【背景技术】
[0002]随着互联网的发展和p2p技术的不断完善,采用p2p模式的应用场景逐年增多,用户在p2p网络环境下的身份验证需求也越来越明显。
[0003]目前网络环境下的身份认证机制主要采用服务器、客户端交互认证模式。由于服务器性能有限以及p2p网络环境下用户数量高速增长,认证服务器往往会造成整个p2p网络认证的系统瓶颈,在用户数量激增情况下,甚至会造成身份认证功能失效。所以在p2p网络环境下,需要一种新型身份认证方法来满足现有需求。

【发明内容】

[0004]本发明的目的在于提供一种在p2p网络环境下的身份认证方法与加密通信方法,基于该方法可以满足在任意数量用户下的任意双方身份认证功能,解决传统认证模式下的依赖于认证服务器而造成系统整体瓶颈的问题。
[0005]本方法包括三个大的步骤:对等端准备阶段,对等端与服务器注册阶段,对等端身份认证与通信阶段。
[0006]在对等端准备阶段,服务器利用RSA非对称加密算法生成一对公钥和私钥,公钥为 Pubkey,私钥为 Prikey。
[0007]开发者把服务器的公钥Pubkey下载到对等端系统内保存。该公钥用来保证对等端和服务器的可靠通信。
[0008]每一对等端利用RSA非对称加密算法生成一对公钥和私钥,这里的公钥称之为A,私钥称之为B。
[0009]在对等端与服务器注册阶段,对等端首先与服务器建立连接。
[0010]连接成功建立后,对等端开发者申请账号等注册信息,然后把开发者的账户、密码、邮箱信息、电话信息等注册信息用服务器的Pubkey加密。
[0011]加密完成后,对等端开发者把加密过的数据提交给服务器,服务器确定接收消息。
[0012]服务器接收到消息后,利用私钥Prikey来解密对等端开发者加密的信息。
[0013]服务器验证开发者注册信息的合法性,待验证成功后,完成对等端开发者账号注
ΠΠ.Wl O
[0014]对等端开发者向服务器提交自己生成的公钥B,服务器接收后回复确认信息。
[0015]服务器端利用私钥Prikey对对等端开发者提交的公钥B进行签名,具体的签名过程是,利用哈希算法对公钥B进行摘要提取,然后将提取过的摘要和账户信息组成验证信息,然后利用服务器端私钥签名验证信息。签过名的公钥为C。
[0016]服务器将公钥C回复给对等端开发者。
[0017]在对等端身份认证与通信阶段,两个对等端PeerA和PeerB分别将自己的公钥上交至服务器签名,签名过的公钥分别为PeerAPub和PeerBPub。
[0018]PeerA向PeerB发起通信,双方取得连接。
[0019]PeerA 将 PeerAPub 发送至 PeerB0
[0020]PeerB 回复确认信息和 PeerBPub 至 PeerA。
[0021]PeerB用服务器公钥Pubkey来验证PeerAPub有效性,通过解密验证信息,对比验证信息中的哈希摘要与PeerAPub哈希摘要是否一致,若验证通过,将PeerAPub与验证信息中的PeerA账户关联,保存至本地。PeerA的账号信息存储在数字签名的数据中,当验证了签名的有效性时,便可解密出PeerA的账号信息。
[0022]PeerA用服务器公钥Pubkey来验证PeerBPub有效性,若验证通过,将PeerBPub与PeerB账户关联,保存至本地。至此完成了双方公钥签名的合法性。
[0023]PeerA生成一个对称加密密钥key,然后利用PeerBPub加密该对称加密密钥key,发送至PeerB0
[0024]PeerB收到PeerA用PeerBPub加密过的key,并用PeerAPub加密并回复确认消息。
[0025]PeerB用本地私钥解密收到的key,并保存。
[0026]至此,已经完成PeerA与PeerB双方的身份验证,并协商了一个对称加密密钥key,以后所有的通信都由该对称加密密钥完成。
[0027]和现有技术相比,本发明具有如下优势:
[0028]本发明对等端利用了数字签名技术,在开发阶段完成了本地公钥的签名可信性,在任意对等双方通信过程中,传统验证模式需要在通信开始时与服务器请求对方公钥的可信性,在本发明提出的验证方法验证过程中,不需要验证服务器的参与即可完成,进而避免了在大量对等端相互认证时服务器的瓶颈问题。在对等端双方认证身份后,双方协商一个对称加密密钥,后续的加密通信都由对称加密完成,这样也会大幅度改进单纯利用非对称加密算法带来的性能低下问题。
【附图说明】
[0029]图1为本发明总体流程图;
[0030]图2为本发明对等端准备阶段流程图;
[0031]图3为本发明对等端与服务器注册阶段流程图;
[0032]图4为本发明对等端认证与数据通信流程图。
【具体实施方式】
[0033]为使本发明实施的目的、技术方案、优点更加清楚,下面对对等网络环境下的用户认证方法技术方案进行清楚、完整的描述。显然,描述的实施实例是本发明的一部分实施实例,而不是全部实施实例,基于本发明的实施实例,本领域的普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施实例,都属于本发明保护的范围。
[0034]为解决传统模式下对等网络环境下的身份认证性能受认证服务器局限问题,提升认证效率与性能,本发明实施实例提供了一种身份认证方法与通信方法,如图1所示,所述方法总体步骤如下:
[0035]步骤101:对等端本地生成一对公钥和私钥,公钥用来提供给其它通信对等端加密数据使用,私钥保存在对等端本地,用来解密其它通信端发送过来的利用公钥加密的数据。
[0036]步骤102:对等端开发者在验证服务器上注册本地的账号,并上传公钥至验证服务器。
[0037]步骤103:验证服务器对上传过来的公钥进行签名,并将签名的公钥回复给对等端保存。
[0038]步骤104:对等端双方交换由验证服务器验证过的公钥。
[0039]步骤105:对等端双方利用验证服务器的公钥来验证对方签名过的公钥的有效性。
[0040]步骤106:验证有效后,双方交换对称加密密钥。
[0041]步骤107:验证完成,双方利用对称加密密钥通信。
[0042]以上总体步骤分为三个阶段,第一个阶段是对等端的数据准备阶段,包括公私钥对的生成与保存等。第二个阶段是对等端请求认证服务器签名本地公钥阶段,包括对等端开发者的账户注册,提交公钥至服务器进行签名等。第三个阶段是对等端认证阶段,包括验证对方签名的有效性、协商与对方的对称公钥等。下面分别对这三个步骤实施方式进行阐述:
[0043]如图2所示,对等端的准备工作包括如下步骤:
[0044]步骤201:对等端开发者生成本地公私钥对,并保存至本地。
[0045]步骤202:对等端开发者去验证服务器端请求服务器公钥。
[0046]步骤203:验证服务器返回验证服务器公钥,对等端保存服务器公钥。
[0047]如图3所示,对等端请求认证服务器签名本地公钥工作包括如下步骤:
[0048]步骤301:对等端开发者判断是否已经有开发者账号。
[0049]步骤302:若开发者有开发账
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1