数据传输方法和装置制造方法及图纸

技术编号:13251830 阅读:87 留言:0更新日期:2016-05-15 14:40
本发明专利技术公开了一种数据传输方法和装置。其中,该方法包括:第一终端获取第二终端发送的数据传输请求,其中,数据传输请求中至少携带有使用第二终端的私钥对第二终端的第一交换密钥进行加密得到的第一加密数据;第一终端使用第二终端的公钥对第一加密数据进行解密得到第一交换密钥,并根据第一交换密钥获取第一终端与第二终端的共享密钥;第一终端使用共享密钥对待传输的数据进行加密,得到加密传输数据,并将加密传输数据发送给第二终端。本发明专利技术解决了现有的加密算法在数据传输时安全性差的技术问题。

【技术实现步骤摘要】

本专利技术涉及数据处理领域,具体而言,涉及一种数据传输方法和装置
技术介绍
伴随着网络信息的发展,网络影响着人们生活的各个方面,随之而来的安全性的要求也就越来越高,对人们在网络活动上的保密性要求也越来越高,应用数据加密技术,保证了人们在网络活动中对自己的数据和一些相关资料的保密的要求,保证了网络的安全性和保密性。数据加密技术是数据安全的核心技术,尤其是在当今的电子商务、数字货币、网络银行等各种网络业务的快速的兴起时代,使得如何保护数据安全使之不被窃取、不被篡改或破坏等问题越来越受到人们的重视。解决这些问题的关键就是数据加密技术。所谓加密,就是把“明文”的可读数据转换成“密文”的过程;而解密则是把“密文”恢复为“明文”的过程。加密和解密都要使用密码算法来实现。密码算法是指用于隐藏和显露数据的可计算过程,通常算法越复杂,结果密文就越安全。在加密技术中,密钥是必不可少的,密钥是使密码算法按照一种特定方式运行并产生特定密文的值。现有技术中的对称算法又叫做传统密码算法,就是加密密钥能够从解密密钥中推算出来,反过来也成立。在大多数对称算法中,加/解密的密钥是相同的。这些算法也叫秘密密钥或单密钥算法,它要求发送者和接收者在进行安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄露密钥就意味着任何人都能对消息进行加/解密。因此对称算法就是指加密和解密过程均采用同一把密钥,在对称算法中,只要通信需要保密,密钥就必须保密。虽然对称算法的效率高,但是密钥的传输需要另外的信道。非对称算法DH可以解决密钥的传输问题,但是该算法的安全性基于有限域上求解离散对数非常困难,并且由于其本身是一个无认证的密钥交换协议,所以还是存在中间人攻击。具体地,Alice公开发送值a和p给Bob,攻击者Carol截获这些值,随即把自己产生的公开值发给Bob;Bob公开发送值a和p给Alice,又被Carol截获,随即把自己产生的公开值给Alice,在这种情况下,Alice和Bob获取的都是攻击者Carol发送的公开值,Alice和Carol计算出两人之间的共享密钥k1;Bob和Carol计算出两人之间另一个的共享密钥k2。如上所述的,受到中间人Carol攻击后,Alice用密钥k1给Bob发送消息,Carol截获后用k1解密就可读取消息,然后将获得的明文消息用k2加密(加密前对消息可能做某些修改,即主动攻击),然后发给Bob。对Bob发给Alice的消息,Carol用同样的手法读取和修改。针对上述现有的加密算法在数据传输时安全性差的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种数据传输方法和装置,以至少解决现有的加密算法在数据传输时安全性差的技术问题。根据本专利技术实施例的一个方面,提供了一种数据传输方法,该方法包括:第一终端获取第二终端发送的数据传输请求,其中,数据传输请求中至少携带有使用第二终端的私钥对第二终端的第一交换密钥进行加密得到的第一加密数据;第一终端使用第二终端的公钥对第一加密数据进行解密得到第一交换密钥,并根据第一交换密钥获取第一终端与第二终端的共享密钥;第一终端使用共享密钥对待传输的数据进行加密,得到加密传输数据,并将加密传输数据发送给第二终端。根据本专利技术实施例的另一方面,还提供了一种数据传输装置,该装置包括:获取单元,用于获取第二终端发送的数据传输请求,其中,所述数据传输请求中至少携带有使用所述第二终端的私钥对所述第二终端的第一交换密钥进行加密得到的第一加密数据;密钥处理单元,用于使用所述第二终端的公钥对所述第一加密数据进行解密得到所述第一交换密钥,并根据所述第一交换密钥获取第一终端与所述第二终端的共享密钥;加密传输单元,用于使用所述共享密钥对待传输的数据进行加密,得到加密传输数据,并将所述加密传输数据发送给所述第二终端。在本专利技术实施例中,在使用DH算法交换第二终端和第一终端的交换密钥(该交换密钥可以为两个终端的DH算法的公开值)时,第二终端用RSA算法加密交换密钥,即自己的私钥加密自己的交换密钥,第一终端用第二终端的公钥解密该交换密钥,以得到第二终端的交换密钥,并获取第二终端与第一终端的共享密钥。在上述过程中,攻击者需首先破解加密后的交换密钥,然后才能进行中间人攻击,增加了破解难度,通过上述方案提供了数据传输过程的安全性,解决了现有技术中现有的加密算法在数据传输时安全性差的技术问题。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本发明的不当限定。在附图中:图1是根据本专利技术实施例的一种终端的网络环境示意图;图2是根据本专利技术实施例的一种可选的数据传输方法的流程图;图3是根据本专利技术实施例的另一种可选的数据传输方法的流程图;图4是根据本专利技术实施例的再一种可选的数据传输方法的流程图;图5是根据本专利技术实施例的一种可选的数据传输装置的示意图;图6是根据本专利技术实施例的另一种可选的数据传输装置的示意图;图7是根据本专利技术实施例的终端的内部结构示意图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。实施例1根据本专利技术实施例,提供了一种数据传输方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出本文档来自技高网
...

【技术保护点】
一种数据传输方法,其特征在于,包括:第一终端获取第二终端发送的数据传输请求,其中,所述数据传输请求中至少携带有使用所述第二终端的私钥对所述第二终端的第一交换密钥进行加密得到的第一加密数据;所述第一终端使用所述第二终端的公钥对所述第一加密数据进行解密得到所述第一交换密钥,并根据所述第一交换密钥获取所述第一终端与所述第二终端的共享密钥;所述第一终端使用所述共享密钥对待传输的数据进行加密,得到加密传输数据,并将所述加密传输数据发送给所述第二终端。

【技术特征摘要】
1.一种数据传输方法,其特征在于,包括:
第一终端获取第二终端发送的数据传输请求,其中,所述数据传
输请求中至少携带有使用所述第二终端的私钥对所述第二终端的第
一交换密钥进行加密得到的第一加密数据;
所述第一终端使用所述第二终端的公钥对所述第一加密数据进
行解密得到所述第一交换密钥,并根据所述第一交换密钥获取所述第
一终端与所述第二终端的共享密钥;
所述第一终端使用所述共享密钥对待传输的数据进行加密,得到
加密传输数据,并将所述加密传输数据发送给所述第二终端。
2.根据权利要求1所述的方法,其特征在于,
在将所述加密传输数据发送给所述第二终端之前,所述方法还包
括:所述第一终端向所述第二终端发送使用所述第二终端的公钥对所
述第一终端的第二密钥公开值进行加密得到的第二加密数据,其中,
所述第二密钥公开值用于所述第二终端获取所述共享密钥;
在将所述加密传输数据发送给所述第二终端之后,所述方法还包
括:所述第二终端使用所述共享密钥对所述加密传输数据进行解密,
得到所述待传输的数据,其中,所述共享密钥是所述第二终端使用所
述第二终端的私钥对所述第二加密数据进行解密得到所述第二密钥
公开值,并根据所述第二密钥公开值获取到的。
3.根据权利要求1所述的方法,其特征在于,所述数据传输请求还携带
有所述第二终端的验证信息,其中,所述第一终端使用所述第二终端
的公钥对所述第一加密数据进行解密得到所述第一交换密钥包括:
所述第一终端通过所述第二终端的验证信息校验所述数据传输
请求的合法性;
若校验出所述数据传输请求为合法请求,则所述第一终端使用所

\t述第二终端的公钥对所述第一加密数据进行解密得到所述第一交换
密钥。
4.根据权利要求3所述的方法,其特征在于,所述第一终端通过所述第
二终端的验证信息校验所述数据传输请求的合法性包括:
从所述验证信息中,获取使用所述第二终端的私钥对安装在所述
第二终端上应用程序的签名进行加密得到的加密签名,其中,所述应
用程序用于生成所述数据传输请求,所述应用程序的签名用于记录所
述应用程序的作者信息;
使用所述第二终端的公钥对所述加密签名进行解密,得到所述应
用程序的签名;
基于解密得到的所述应用程序的签名判断所述数据传输请求是
否合法。
5.根据权利要求4所述的方法,其特征在于,基于解密得到的所述应用
程序的签名判断所述数据传输请求是否合法包括:
比较解密得到的所述应用程序的签名与所述第一终端上预存的
所述应用程序的签名是否一致;
若比较出解密得到的所述应用程序的签名与所述第一终端上预
存的所述应用程序的签名一致,则确定所述数据传输请求合法;
若比较出解密得到的所述应用程序的签名与所述第一终端上预
存的所述应用程序的签名不一致,则确定所述数据传输请求不合法。
6.根据权利要求4所述的方法,其特征在于,获取使用所述第二终端的
私钥对安装在所述第二终端上应用程序的签名进行加密得到的加密
签名包括:
获取使用所述第二终端的私钥对所述应用程序的签名的信息摘
要进行加密得到的加密签名。
7.根据权利要求3所述的方法,其特征在于,所述第一终端通过所述第
二终端的验证信息校验所述数据传输请求的合法性包括:
从所述验证信息中获取使用所述第二终端的私钥对请求时间戳
加密得到的加密时间戳,其中,所述请求时间戳用于记录所述第二终
端生成所述数据传输请求的时刻;
使用所述第二终端的公钥对所述加密时间戳进行解密,得到所述
请求时间戳;
从所述数据传输请求中获取所述第二终端的终端标识;
获取所述第一终端上记录的具有所述终端标识的记录时间戳;
若解密得到的所述请求时间戳与所述第一终端上记录的所述记
录时间戳相同,则确定所述数据传输请求不合法。
8.根据权利要求1或2所述的方法,其特征在于,所述第一终端为服务
器,所述第二终端为客户端;或所述第二终端为服务器,所述第一终
端为客户端。

【专利技术属性】
技术研发人员:李轶峰袁丽娜王亮郭计伟
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1