用于数据传输的数据加密方法和系统与流程

文档序号:13666656阅读:136来源:国知局
用于数据传输的数据加密方法和系统与流程

本发明涉及数据安全传输领域,尤其涉及一种用于数据传输的数据加密方法和系统。



背景技术:

计算机硬盘的数据安全问题一直是社会关注的焦点,计算机硬盘数据安全问题主要是硬盘使用期间的数据安全,以及计算机硬盘的数据在计算机内部传输过程的数据安全,为了保障传输过程中数据的安全,需要对传输的数据进行加密。而不同的业务所要加密的级别不同,所需要的加密手段也不一样。通常用的加密方式有对称算法加密和非对称算法加密,对称算法加密的加密能力不够强,密钥容易被外界破解,影响着数据安全,而非对称算法加密的密钥复杂度高,对服务器的性能和资源消耗更多,影响用户的体验。



技术实现要素:

本发明所要解决的技术问题是,提供一种用于数据传输的数据加密方法和系统,实现对计算机内部数据传输过程中的数据进行加密以及对加密数据的密钥进行加密,,提高了计算机内部数据传输的安全性。

第一方面,本发明提供一种视数据传输的数据加密方法,包括:

当第一终端与第二终端建立会话连接时,所述第一终端将所述会话连接的标识信息输入非对称加密的密钥生成算法,生成所述非对称加密的公钥和私钥,并将所述公钥发送给所述第二终端;

所述第二终端响应接收到的所述公钥,根据对称加密的密钥生成算法,生成数据传输密钥;其中,所述数据传输密钥与所述会话连接关联;

所述第二终端根据所述非对称加密的加密算法和所述公钥对所述数据传输密钥进行加密,获得密钥加密数据,并将所述密钥加密数据发送给所述第一终端;

所述第一终端根据所述非对称加密的解密算法和所述私钥对所述密钥加密数据进行解密,获得数据传输密钥。

在第一方面的第一种可能的实施方式中,在所述第一终端获得所述数据传输密钥之后,还包括:

当所述第一终端通过所述会话连接向所述第二终端发送通信数据之前,根据所述对称加密的加密算法和所述数据传输密钥对所述通信数据进行加密,生成加密通信数据,并将所述加密通信数据发送给所述第二终端;

所述第二终端根据所述对称加密的解密算法和所述数据传输密钥,对通过所述会话连接从所述第一终端中接收到的所述加密通信数据进行解密,获得所述通信数据。

在第一方面的第二种可能的实施方式中,在所述第一终端获得所述数据传输密钥之后,还包括:

当所述第二终端通过所述会话连接向所述第一终端发送通信数据之前,根据所述对称加密的加密算法和所述数据传输密钥对所述通信数据进行加密,生成加密通信数据,并将所述加密通信数据发送给所述第一终端;

所述第一终端根据所述对称加密的解密算法和所述数据传输密钥,对通过所述会话连接从所述第二终端中接收到的所述加密通信数据进行解密,获得所述通信数据。

在第一方面的第三种可能的实施方式中,所述会话连接的标识信息包括所述第一终端和所述第二终端的网卡地址;则所述第二终端根据对称加密的密钥生成算法,生成数据传输密钥,具体为:

所述第二终端将所述第一终端和所述第二终端的网卡地址、当前的时间点以及随机数输入所述对称加密的密钥生成算法,生成数据传输密钥。

在第一方面的第四种可能的实施方式中,所述第二终端根据对称加密的密钥生成算法,生成数据传输密钥,具体为:

所述第二终端执行n次随机选取字符操作,获得n个字符;其中,所述随机选取字符操作是从字符母本中随机选取一个字符;所述字符母本包括数字和字母;

所述第二终端根据所述n个字符进行随机排序,生成n位的字符串;其中,所述n位的字符串为数据传输密钥。

第二方面,本发明实施例还提供一种用于数据传输的数据加密系统,包括第一终端和第二终端,所述第一终端包括公钥生成模块和密钥解密模块,所述第二终端包括密钥生成模块和密钥加密模块;其中,

公钥生成模块,用于当第一终端与第二终端建立会话连接时,将所述会话连接的标识信息输入非对称加密的密钥生成算法,生成所述非对称加密的公钥和私钥,并将所述公钥发送给所述第二终端;

密钥生成模块,用于响应接收到的所述公钥,根据对称加密的密钥生成算法,生成数据传输密钥;其中,所述数据传输密钥与所述会话连接关联;

密钥加密模块,用于根据所述非对称加密的加密算法和所述公钥对所述数据传输密钥进行加密,获得密钥加密数据,并将所述密钥加密数据发送给所述第一终端;

密钥解密模块,用于根据所述非对称加密的解密算法和所述私钥对所述密钥加密数据进行解密,获得数据传输密钥。

在第二方面的第一种可能的实施方式中,所述第一终端包括第一数据加密模块,所述第二终端包括第一数据解密模块,具体地:

所述第一数据加密模块,用于在所述解密模块获得所述数据传输密钥之后,且在所述第一终端通过所述会话连接向所述第二终端发送通信数据之前,根据所述对称加密的加密算法和所述数据传输密钥对所述通信数据进行加密,生成加密通信数据,并将所述加密通信数据发送给所述第二终端;

所述第一数据解密模块,用于根据所述对称加密的密钥解密算法和所述数据传输密钥,对通过所述会话连接从所述第一终端中接收到的所述加密通信数据进行解密,获得所述通信数据。

在第二方面的第二种可能的实施方式中,所述第一终端包括第二数据解密模块,所述第二终端包括第二数据加密模块,具体地:

所述第二数据加密模块,用于在所述密钥解密模块获得所述数据传输密钥之后,且在所述第二终端通过所述会话连接向所述第一终端发送通信数据之前,根据所述对称加密的加密算法和所述数据传输密钥对所述通信数据进行加密,生成加密通信数据,并将所述加密通信数据发送给所述第一终端;

所述第二数据解密模块,用于根据所述对称加密的解密算法和所述数据传输密钥,对通过所述会话连接从所述第二终端中接收到的所述加密通信数据进行解密,获得所述通信数据。

在第二方面的第三种可能的实施方式中,所述会话连接的标识信息包括所述第一终端和所述第二终端的网卡地址;所述公钥生成模块还用于将所述第一终端和所述第二终端的网卡地址、当前的时间点以及随机数输入所述对称加密的密钥生成算法,生成数据传输密钥。

在第二方面的第四种可能的实施方式中,所述公钥生成模块具体包括:

字符获取单元,用于执行n次随机选取字符操作,获得n个字符;其中,所述随机选取字符操作是从字符母本中随机选取一个字符;所述字符母本包括数字和字母;

字符串生成单元,用于根据所述n个字符进行随机排序,生成n位的字符串;其中,所述n位的字符串为数据传输密钥。

附图说明

图1是本发明提供的用于数据传输的数据加密方法的第一个实施例的流程示意图;

图2是本发明提供的用于数据传输的数据加密方法的第二个实施例的流程示意图;

图3是本发明提供的用于数据传输的数据加密方法的第三个实施例的流程示意图;

图4是本发明提供的用于数据传输的数据加密系统的一个实施例的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参见图1,是本发明提供的基于智能笔操作的书写启动方法的一个实施例的流程示意图;

如图1所示,第一方面,本发明实施例提供一种用于数据传输的数据加密方法,包括步骤s1至步骤s4,具体如下:

s1,当第一终端与第二终端建立会话连接时,所述第一终端将所述会话连接的标识信息输入非对称加密的密钥生成算法,生成所述非对称加密的公钥和私钥,并将所述公钥发送给所述第二终端;

优选地,第一终端为客户端client,第二终端为服务器server,非对称加密的算法为rsa加密算法,所述rsa加密算法的密钥生成算法对数据进行加密之前会生成一对密钥,分别是公钥publickey和私钥privatekey,会话连接为会话连接session;则当所述客户端client与所述服务器server建立所述session时,所述客户端client为所述会话连接session生成rsa的公钥publickey和私钥privatekey,所述客户端client将公钥发送给所述服务器server,并将私钥保密保存,由于私钥是保密的,外界仅仅通过公开的公钥无法破解rsa加密算法加密的数据,因此能提高所述客户端client与所述服务器server之间的所述会话连接session连接的数据传输的安全。

s2,所述第二终端响应接收到的所述公钥,根据对称加密的密钥生成算法,生成数据传输密钥;其中,所述数据传输密钥与所述会话连接关联;

优选地,对称加密的算法为aes加密算法;则,当服务器server接收到客户端client发送的公钥时,响应接收到的公钥,并立即为本次与所述客户端client的会话连接session生成aes算法加密的密钥,该密钥是后续数据加解密的钥匙,且每次所述服务器server与所述客户端client连接的会话连接session都绑定不同的密钥;需要说明的是,会话连接session本身可以提供set的绑定行为函数,因此可以绑定密钥来对所述会话连接session的标志信息进行加密。

s3,所述第二终端根据所述非对称加密的加密算法和所述公钥对所述数据传输密钥进行加密,获得密钥加密数据,并将所述密钥加密数据发送给所述第一终端;

优选地,服务器server接收到客户端client发送的所述公钥后,对数据传输的密钥进行rsa算法加密,所述rsa算法加密对密钥加密后生成新的密钥加密数据,所述服务器server将加密后获得的密钥加密数据打包发送给所述客户端client,其中密钥加密数据包括所述密钥,通过所述rsa算法加密对所述密钥在数据传输过程的加密,可以防止所述密钥被截获后,外界通过破解密钥获知密钥加密的明文数据,而所述rsa算法加密是已知安全性最高的加密算法,即使获得所述rsa算法加密的公钥,没有私钥也几乎破解不了加密数据,因此保障所述密钥的安全性,进而保证用密钥加密的传输数据的安全性。

s4,所述第一终端根据所述非对称加密的解密算法和所述私钥对所述密钥加密数据进行解密,获得数据传输密钥。

优选地,客户端client接收到服务器server打包发送过来的加密数据后,根据保存的rsa算法加密的私钥对接收到的密钥加密数据进行解密,获得aes算法加密的密钥。

本发明实施例提供的用于数据传输的数据加密方法和系统,当第一终端与第二终端建立会话连接时,所述第一终端将所述会话连接的标识信息输入非对称加密的密钥生成算法,生成所述非对称加密的公钥和私钥,并将所述公钥发送给所述第二终端;所述第二终端响应接收到的所述公钥,根据对称加密的密钥生成算法,生成数据传输密钥;其中,所述数据传输密钥与所述会话连接关联;所述第二终端根据所述非对称加密的加密算法和所述公钥对所述数据传输密钥进行加密,获得密钥加密数据,并将所述密钥加密数据发送给所述第一终端;所述第一终端根据所述非对称加密的解密算法和所述私钥对所述密钥加密数据进行解密,获得数据传输密钥。由于所述第一终端与第二终端建立的所有会话连接的常规数据使用占用终端内存较小的对称加密,然后对数据传输过程中的密钥使用安全度更高的非对称加密来进行非对称加密,这样可以避免密钥被破解,从而避免使用密钥加密的数据被破解,本发明实施例提供的数据传输的数据加密方法可以在保证占用终端内存空间不多的前提下加强数据传输过程的安全性,由于占用内存不多,因此能保证用户有较好的游戏体验。

参见图2,是本发明实施例提供用于数据传输的数据加密方法的第二个实施例的流程示意图,基于上述实施例提供的方法的前提下,所述数据传输的数据加密方法还包括步骤s51和s52,以下将进行详细的描述:

s51,当所述第一终端通过所述会话连接向所述第二终端发送通信数据之前,根据所述对称加密的加密算法和所述数据传输密钥对所述通信数据进行加密,生成加密通信数据,并将所述加密通信数据发送给所述第二终端;

需要说明的是,每一次客户端client通过会话连接session向服务器server发送通信数据之前,都会使用aes算法加密对所述通信数据和密钥进行加密,生成加密通信数据,再将所述加密通信数据和数据传输密钥发送给所述服务器server。

s52,所述第二终端根据所述对称加密的解密算法和所述数据传输密钥,对通过所述会话连接从所述第一终端中接收到的所述加密通信数据进行解密,获得所述通信数据。

需要说明的是,会话连接session接收到客户端client发送的通信加密数据后以及数据传输密钥后,对接收到的通信加密数据使用所述数据传输密钥解密,获得所述客户端client发送过来的通信数据

参见图3,是本发明实施例提供的用于数据传输的数据加密方法的第三个实施例的流程示意图,基于上述实施例提供的方法的前提下,所述游戏进程断线重连的方法还包括步骤s61和s62,以下将进行详细的描述:

s61,当所述第二终端通过所述会话连接向所述第一终端发送通信数据之前,根据所述对称加密的加密算法和所述数据传输密钥对所述通信数据进行加密,生成加密通信数据,并将所述加密通信数据发送给所述第一终端;

需要说明的是,每一次服务器server通过会话连接session向客户端client发送通信数据之前,所述服务器server需要对所述通信数据使用aes算法加密进行加密,加密后生成加密通信数据与密钥,并将加密通信数据与密钥发送给所述客户端client。

s62,所述第一终端根据所述对称加密的解密算法和所述数据传输密钥,对通过所述会话连接从所述第二终端中接收到的所述加密通信数据进行解密,获得所述通信数据。

需要说明的是,客户端client接收到服务器server通过会话连接session发送过来的通信加密数据与密钥后,使用密钥对所述通信加密数据进行解密,获得所述服务器server发送过来的通信数据。

参见图4,是本发明实施例提供的用于数据传输的数据加密系统的一个实施例的结构示意图。

本发明实施例提供的用于数据传输的数据加密系统,包括第一终端和第二终端,所述第一终端包括公钥生成模块10和密钥解密模块40,所述第二终端包括密钥生成模块20和密钥加密模块30;其中,

公钥生成模块10,用于当第一终端与第二终端建立会话连接时,将所述会话连接的标识信息输入非对称加密的密钥生成算法,生成所述非对称加密的公钥和私钥,并将所述公钥发送给所述第二终端;

密钥生成模块20,用于响应接收到的所述公钥,根据对称加密的密钥生成算法,生成数据传输密钥;其中,所述数据传输密钥与所述会话连接关联;

密钥加密模块30,用于根据所述非对称加密的加密算法和所述公钥对所述数据传输密钥进行加密,获得密钥加密数据,并将所述密钥加密数据发送给所述第一终端;

密钥解密模块40,用于根据所述非对称加密的解密算法和所述私钥对所述密钥加密数据进行解密,获得数据传输密钥。

进一步地,所述第一终端还包括第一数据加密模块51,所述第二终端还包括第一数据解密模块,具体地:

所述第一数据加密模块51,用于在所述解密模块获得所述数据传输密钥之后,且在所述第一终端通过所述会话连接向所述第二终端发送通信数据之前,根据所述对称加密的加密算法和所述数据传输密钥对所述通信数据进行加密,生成加密通信数据,并将所述加密通信数据发送给所述第二终端;

所述第一数据解密模块52,用于根据所述对称加密的密钥解密算法和所述数据传输密钥,对通过所述会话连接从所述第一终端中接收到的所述加密通信数据进行解密,获得所述通信数据。

再进一步地,所述第一终端还包括第二数据解密模块61,所述第二终端还包括第二数据加密模块,具体地:

所述第二数据加密模块61,用于在所述密钥解密模块获得所述数据传输密钥之后,且在所述第二终端通过所述会话连接向所述第一终端发送通信数据之前,根据所述对称加密的加密算法和所述数据传输密钥对所述通信数据进行加密,生成加密通信数据,并将所述加密通信数据发送给所述第一终端;

所述第二数据解密模块62,用于根据所述对称加密的解密算法和所述数据传输密钥,对通过所述会话连接从所述第二终端中接收到的所述加密通信数据进行解密,获得所述通信数据。

实施本发明实施例,具有如下有益效果:

本发明实施例提供的数据传输的数据加密系统,包括第一终端和第二终端,当所述第一终端与所述第二终端建立会话连接时,在所述第一终端与所述第二终端进行通信数据传输之前,都会对所述通信数据进行对称加密生成加密通信数据和密钥,生成的加密通信数据和密钥可用于数据交互传输与解密;当所述第一终端与所述第二终端建立会话连接时,所述第一终端将所述会话连接的标识信息输入非对称加密的密钥生成算法,生成所述非对称加密的公钥和私钥,并将所述公钥发送给所述第二终端;所述第二终端接收到所述公钥后,对所述公钥进行对称加密生成密钥,且所述第一终端与第二终端的每个会话连接都对应生成不同的密钥,所述第二终端对所述公钥和密钥进行非对称加密后获得密钥加密数据,并将所述密钥加密数据发送给所述第一终端;所述第一终端接收到所述密钥加密数据后使用私钥解密,获得密钥;由于对所述第一终端与第二终端的每个会话连接都使用对称加密进行加密获得密钥,并将数据传输过程中的密钥进行非对称加密获得公钥与私钥,由于非对称加密的保密性能很好,只有私钥破解加密密文,因此能够有效防止外界通过破解密钥获取数据交互的数据,而两个终端间的常规数据都使用对称加密,生成的密钥占用内存小,而对数据传输过程中的密钥进行非对称加密,又能增加数据交互的安全性,本发明实施例保障在不影响用户体验的情况下提高数据传输的安全性。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1