一种数据的传输方法及终端和系统与流程

文档序号:11156692阅读:668来源:国知局
一种数据的传输方法及终端和系统与制造工艺

本发明涉及电子技术领域,尤其涉及一种数据的传输方法及终端和系统。



背景技术:

在信息大爆炸的时代,个人隐私越来越得到重视,随着互联网技术的发展,大量的个人信息录入到了终端上,并通过网络传输至服务器,为了防止信息传输时被盗取,现有方式常采用加密传输方式,将个人信息加密传输至服务器,但是现有方式中加密密钥始终不变,一旦加解密算法被破解,将带来较大的安全隐患。



技术实现要素:

本发明实施例提供一种数据的传输方法及终端和系统,可以提高数据传输过程的安全性。

第一方面,本发明实施例提供了一种数据的传输方法,其中方法包括:

根据预存的算法包中的算法以及预存的标识信息获取第一加密密钥;根据第一加密密钥加密待传输的数据;根据生成第一加密密钥的算法来获取相对应的第一算法标识,将使用第一加密密钥加密后的数据以及第一算法标识发送给服务器,以供服务器根据第一算法标识识别生成第一加密密钥的算法是否安全;若接收到服务器反馈的风险状态码,从服务器获取新算法包,新算法包不包括用于生成第一加密密钥的原算法;根据新算法包中的算法以及预存的标识信息生成第二加密密钥;根据第二加密密钥加密待传输的数据;根据生成第二加密密钥的算法来获取相对应的第二算法标识;将使用第二加密密钥加密后的数据以及第二算法标识发送给服务器,以供服务器根据第二算法标识识别出生成第二加密密钥的算法,用于解密被第二加密密钥加密的数据。

另一方面,本发明实施例提供了一种终端,该终端包括:生成单元、加密单元、获取单元、第一收发单元以及收取单元,其中,

生成单元用于根据预存的算法包中的算法以及预存的标识信息获取第一加密密钥;加密单元用于根据第一加密密钥加密待传输的数据;获取单元用于根据生成第一加密密钥的算法来获取相对应的第一算法标识;第一收发单元用于将使用第一加密密钥加密后的数据以及第一算法标识发送给服务器,以供服务器根据第一算法标识识别生成第一加密密钥的算法是否安全;收取单元用于若接收到服务器反馈的风险状态码,从服务器获取新算法包,新算法包不包括用于生成第一加密密钥的原算法;生成单元还用于根据新算法包中的算法以及预存的标识信息生成第二加密密钥;加密单元还用于根据第二加密密钥加密待传输的数据;获取单元还用于根据生成第二加密密钥的算法来获取相对应的第二算法标识;第一收发单元还用于将使用第二加密密钥加密后的数据以及第二算法标识发送给服务器,以供服务器根据第二算法标识识别出生成第二加密密钥的算法,用于解密被第二加密密钥加密的数据。

另一方面,本发明实施例提供了一种数据的传输系统,系统包括终端以及与终端通讯的服务器,终端包括:生成单元、加密单元、获取单元、第一收发单元以及收取单元,服务器包括:鉴别单元、第二收发单元以及解密单元,

生成单元,用于终端根据预存的算法包中的算法以及预存的标识信息获取第一加密密钥;加密单元,用于终端根据第一加密密钥加密待传输的数据;获取单元,用于终端根据生成第一加密密钥的算法来获取相对应的第一算法标识;第一收发单元,用于终端将使用第一加密密钥加密后的数据以及第一算法标识发送给服务器;鉴别单元,用于服务器根据第一算法标识识别生成第一加密密钥的算法是否安全;第二收发单元,用于若识别到生成第一加密密钥的算法不安全,将录入的新算法包以及风险状态码发送给终端;收取单元,用于若接收到服务器反馈的风险状态码,终端从服务器获取新算法包,新算法包不包括用于生成第一加密密钥的原算法;生成单元,还用于终端根据新算法包中的算法以及预存的标识信息生成第二加密密钥;加密单元,还用于终端根据第二加密密钥加密待传输的数据;获取单元,还用于终端根据生成第二加密密钥的算法来获取相对应的第二算法标识;第一收发单元,还用于终端将使用第二加密密钥加密后的数据以及第二算法标识发送给服务器;解密单元,用于服务器根据第二算法标识识别出生成第二加密密钥的算法,用于解密被第二加密密钥加密的数据。

本发明实施例所公开的一种数据的传输方法及终端和系统,通过获取到算法生成第一加密密钥后对待传输的数据进行加密,若终端接收到服务器检测到表示算法不安全的风险状态码后,终端将重新获取新的算法来生成第二加密密钥,再加密待传输的数据以供服务器进行解密,由于终端根据服务器的检测结果重新生成了第二加密密钥,可以提高数据传输的安全性,降低服务器被攻击或者算法已经被破解的情况下服务器解密加密数据的风险。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种数据的传输方法的示意性流程图;

图2是本发明实施例提供的图1的子流程示意性流程图;

图3是本发明实施例提供的一种数据的传输系统的示意性框图;

图4是本发明实施例提供的图2中的一种解密单元示意性框图;

图5是本发明实施例提供的图2中的一种生成单元示意性框图;

图6是本发明实施例提供的图5中的一种选择单元示意性框图;

图7是本发明实施例提供的图5中的另一种选择单元示意性框图;

图8是本发明实施例提供的另一种数据的传输系统的示意性框图。

具体实施方式

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

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或若干个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

本发明实施例提供的一种数据的传输方法应用于传输系统,传输系统包括终端和与终端通讯的服务器,终端包括但是不限制于任何一种可与用户进行人机交互的电子产品,例如智能手机(如Android手机、ios手机、Windows Phone手机等)、平板电能、掌上电能、笔记本电脑、移动互联网设备等。以上电子设备仅是举例,而非穷举,本发明实施例提供的终端包括但是不限制于上述电子设备。

请看图1,是本发明实施例提供的一种数据的传输方法的示意性流程图,如图所示,本发明实施例的一种数据的传输方法包括如下S101~S117:

S101,终端根据预存的算法包中的算法以及预存的标识信息获取第一加密密钥。

具体的,预存的算法包包括若干用于生成加密密钥的算法,应当理解,预存的算法包是服务器发送给终端,并存储在终端的。本实施例中优选第一次进行数据传输时,预存的算法包是临时从服务器获取的,非第一次数据传输时,预存的算法包是前一次数据传输时存储在终端上的算法包。在另一些实施例中,预存的算法包是每次数据传输时,终端从服务器获取的算法包。预存的标识信息是用于识别终端的识别信息,本实施例中优选预存的标识信息是IP地址(Internet Protocol)和用户代理UA(User-Agent),用户代理能使服务器识别终端所使用的操作系统及版本,CUP类型、浏览器及版本、浏览器渲染引擎、浏览器语音、浏览器插件等。

S102,终端根据第一加密密钥加密待传输的数据。

具体的,本实施例中优选采用AES加密方式加密待传输的数据,例如利用第一加密密钥并采用AES加密方法加密待传输的用户数据。

S103,终端根据生成第一加密密钥的算法来获取相对应的第一算法标识。

具体的,第一算法标识是生成第一加密密钥算法的算法标识,每个算法相对应设有算法标识,算法标识是用于识别算法的识别标识,本实施例中优选算法标识是算法中的若干个标志性字段,不同的算法的上述若干个标志性字段不同。

S104,终端将使用第一加密密钥加密后的数据以及第一算法标识发送给服务器。

具体的,本实施例中将第一算法标识的若干个标志性字段添加在加密后的数据之后,其他可行的实施例中可以采用其他方式发送。

S105,服务器根据第一算法标识识别生成第一加密密钥的算法;

S106,服务器检测识别出的算法是否是安全的,若不是安全的,执行S107;若是安全的,执行S116。

具体的,服务器若受到攻击或者服务器检测到算法已经被破解,则将相对应的算法设置为非安全的。例如服务器通过监控与其通讯的终端传输过来的数据来监控算法是否已经被破解。若服务器从A终端接收到数据本应是B、C字段,但是实际接收的为D字段,则表示服务器可能受到了攻击,相应的算法可能已经被破解,应当理解,本发明实施例该方法还包括:

服务器检测到数据异常后,提示用户检测算法是否已被破解;

若服务器接收到用户选择算法已破解,则将该算法设置为非安全;若服务器接收杜鳌用户选择算法未被破解,将该算法设置为安全。

应当理解,修改后的新算法包不包括用于生成第一加密密钥的原算法,即原算法已经被删除或者修改。在一些实施例中,对算法包中的所有算法均进行了修改;在其他可行的实施例中,对算法包中的部分算法进行了修改,且至少修改了用于生成第一加密密钥的原算法;上述修改包括替换以及修订。

S107,服务器提示用户修改算法包;

具体的,提示方式不限定为语音或者文字提示等。

S108,服务器反馈风险状态码给终端以及修改后的新算法包;

S109,终端若接收到服务器反馈的风险状态码,从服务器获取新的算法包来替换原算法包。

S110,终端根据新算法包中的算法以及预存的标识信息生成第二加密密钥。

具体的,终端从新算法包中选取算法,再根据算法以及预存的标识信息生成第二加密密钥。可以是随机选择一个算法,还可以是按照一定规则选择算法。

S111,终端根据第二加密密钥加密待传输的数据。

具体的,类似S102中的加密方法加密待传输的数据。

S112,终端根据生成所述第二加密密钥的算法来获取相对应的第二算法标识。

具体的,类似S103中的方式来获取到第二算法标识,应当理解,第二算法标识是生成第二加密密钥的算法的算法标识。同上述第一算法标识相似,第二算法标识为算法中的若干个标志性字段。

S113,终端将使用第二加密密钥加密后的数据以及所述第二算法标识发送给服务器。

S114,服务器根据第二算法标识识别用于生成第二加密密钥的算法。

S115,服务器根据识别出算法解密被第二加密密钥加密的数据。

具体的,服务器解密被第二加密密钥加密的数据的过程包括:

服务器获取标识信息;

服务器根据获取的标识信息以及识别出的用于生成第二加密密钥的算法计算出解密密钥;

服务器根据解密密钥解密被第二加密密钥加密的数据。

应当理解,本实施例中标识信息是IP地址和用户代理UA,因此服务器接收到终端的请求时可以获取到上述标识信息。其他可行的实施例中,服务器可以向终端请求获取标识信息。

S116,服务器根据第一算法标识识别生成第一加密密钥的算法。

S117,服务器根据识别出的算法解密被第一加密密钥加密的数据。

应当理解,参照S115服务器解密被第一加密密钥加密的数据的过程具体包括:

服务器获取标识信息;

服务器根据获取的标识信息以及识别出的用于生成第一加密密钥的算法计算出解密密钥;

服务器根据解密密钥解密被第一加密密钥加密的数据。

需要说明的是,S101终端根据预存的算法包中的算法以及预存的标识信息获取第一加密密钥,具体包括:

从预存的算法包中选择算法;以及根据选择的算法以及预存的标识信息获取第一加密密钥。

应当理解,获取第一加密密钥理解为生成第一加密密钥或者从现有的加密密钥中获取第一加密密钥。本实施例中优选每一次数据传输时均生成第一加密密钥,在其他可行的实施例中,第一加密密钥是上一次数据传输的第一加密密钥或者第二加密密钥,下文将对此进行具体描述。

在一些实施例中,选择算法是在预存的算法包中随机选择一个算法,由于随机选择带来的不定性,进而提高加密密钥的安全性,进而提高了数据传输的安全等级,优选每次数据传输时选择的算法均不同,进而每次数据传输时的第一加密密钥不同,提高数据传输的安全性。在另一些实施例中,根据安全需求,待传输的数据划分为若干个安全等级,从预存的算法包中选择算法,具体包括:

识别待传输的数据的安全等级;根据识别的安全等级从预存的算法包中获取相匹配的算法。其中,根据算法的复杂程度预存的算法包中的算法被划分为若干层级,不同层级的算法匹配不同安全等级的数据。

应当理解,设定安全等级是为了满足数据的安全需求,安全等级高的数据应当匹配复杂程度高的算法。

请看图2,在另一些实施例中,若不是第一次数据传输,从预存的算法包中选择算法,具体包括:

S201,获取前一次数据传输时生成被服务器解密的加密数据的加密密钥的算法,加密密钥为第一加密密钥或者第二加密密钥;

应当理解,前一次数据传输时被服务器解密的加密数据的加密密钥可能是第一加密密钥,还可能是第二加密密钥,这是基于第一加密密钥的算法不安全时,被服务器解密的加密数据的加密密钥应当为第二加密密钥。

S202,识别获取的算法的预设使用时长,预设使用时长用于表示算法允许被连续用于生成加密密钥的使用时间;

具体的,本实施例中预设使用时长是根据若干个数据样品的数据得到的。被连续用于生成加密密钥的使用时间是表示在连续的数据传输时被连续用于生成加密密钥的时间。如在预设使用时长内连续5次数据传输时使用同一算法生成加密密钥。

S203,检测当前时间是否在获取的预设使用时长内,若在预设使用时长内,执行S204,若不在预设使用时长内,执行S205。

S204,从预存的算法包中选择与获取的算法相同的算法。

S205,从预存的算法包中选择与获取的算法不同的算法。

应当理解,设置算法的预设使用时长是为了使后续每一次的数据传输是基于前一次数据传输的基础上进行。若算法相同,标识信息没变,则S101中获取的第一加密密钥应当是前一次数据传输时的第一加密密钥或者第二加密密钥,省去生成第一加密密钥的步骤,而当前数据传输时直接获取到第一加密密钥用于加密待传输的数据,进而设置算法的预设使用时长可以提高运行效率。若标识信息变化了,则S101中获取的第一加密密钥也会相应变化。另一方面,不在预设使用时长内则更变算法,也可以提高数据传输的安全性。

还需要说明的是,S110终端根据新算法包中的算法以及预存的标识信息生成第二加密密钥,具体包括:

从新算法包中选择算法;根据选择的算法以及预存的标识信息生成第二加密密钥。

应当理解。在一些实施例中,选择算法是在预存的算法包中随机选择一个算法,由于随机选择带来的不定性,进而提高加密密钥的安全性,进而提高了数据传输的安全等级。在另一些实施例中,根据安全需求,待传输的数据划分为若干个安全等级,从新算法包中选择算法,具体包括:

识别待传输的数据的安全等级;根据识别的安全等级从新算法包中获取相匹配的算法。其中,根据算法的复杂程度,新算法包中的算法被划分为若干层级,不同层级的算法匹配不同安全等级的数据。

应当理解,设定安全等级是为了满足数据的安全需求,安全等级高的数据应当匹配复杂程度高的算法。

还应当理解,在其他可行的实施例中,上述一种数据的传输方法中,将使用第二加密密钥加密后的数据以及所述第二算法标识发送给服务器之后,还包括:

服务器根据第二算法标识识别生成第二加密密钥的算法是否安全;若是安全执行S114;若是不安全的,执行S107。

应当理解,该方式循环进行检测,不安全则修改算法包,直至算法是安全时服务器才解密被加密的数据。

综上所述,本发明实施例提供的一种数据的传输方法,通过从预存的算法包中选择算法计算出第一加密密钥,由服务器端识别生成第一加密密钥的算法是否安全,若是不安全在,则下发新的算法包给终端,终端再从新的算法包中获取到算法计算出第二加密密钥,再用第二加密密钥加密带传输的数据,提高数据传输的安全性,防止了服务器解密的加密数据是被破解的算法生成的加密密钥加密的。另一方面,每一次数据传输时均会生成第一加密密钥或者不在算法的预设使用时间内时就变化算法,进而提高了数据传输的安全性。再者,还根据数据的安全等级进行划分,提高数据传输的安全性。

请看图3,是本发明实施例提供的一种数据的传输系统的示意性框图,如图所示,数据的传输系统包括终端30以及与终端30通讯的服务器31。其中终端30包括:生成单元301、加密单元302、获取单元303、第一收发单元304以及收取单元305。服务器31包括:鉴别单元311、提示单元312、第二收发单元313以及解密单元314。

生成单元301,用于终端30根据预存的算法包中的算法以及预存的标识信息获取第一加密密钥。

具体的,预存的算法包包括若干用于生成加密密钥的算法,应当理解,预存的算法包是服务器31发送给终端30,并存储在终端30的。本实施例中优选第一次进行数据传输时,预存的算法包是临时从服务器31获取的,非第一次数据传输时,预存的算法包是前一次数据传输时存储在终端30上的算法包。在另一些实施例中,预存的算法包是每次数据传输时,终端30从服务器31获取的算法包。预存的标识信息是用于识别终端30的识别信息,本实施例中优选预存的标识信息是IP地址(Internet Protocol)和用户代理UA(User-Agent),用户代理能使服务器31识别终端30所使用的操作系统及版本,CUP类型、浏览器及版本、浏览器渲染引擎、浏览器语音、浏览器插件等。

加密单元302,用于终端30根据第一加密密钥加密待传输的数据。

具体的,本实施例中优选采用AES加密方式加密待传输的数据,例如利用第一加密密钥并采用AES加密方法加密待传输的用户数据。

获取单元303,用于终端30根据生成第一加密密钥的算法来获取相对应的第一算法标识。

具体的,第一算法标识是生成第一加密密钥算法的算法标识,每个算法相对应设有算法标识,算法标识是用于识别算法的识别标识,本实施例中优选算法标识是算法中的若干个标志性字段,不同的算法的上述若干个标志性字段不同。

第一收发单元304,用于终端30将使用第一加密密钥加密后的数据以及第一算法标识发送给服务器31。

具体的,本实施例中将第一算法标识的若干个标志性字段添加在加密后的数据之后,其他可行的实施例中可以采用其他方式发送。

鉴别单元311,用于服务器31根据第一算法标识识别生成第一加密密钥的算法。

鉴别单元311,还用于服务器31检测识别出的算法是否是安全的。

具体的,服务器31若受到攻击或者服务器31检测到算法已经被破解,则将相对应的算法设置为非安全的。例如服务器31通过监控与其通讯的终端30传输过来的数据来监控算法是否已经被破解。若服务器31从A终端30接收到数据本应是B、C字段,但是实际接收的为D字段,则表示服务器31可能受到了攻击,相应的算法可能已经被破解,服务器31还包括设置单元315。

其中提示单元312,用于提示用户检测算法是否已被破解;

设置单元315,用于若服务器31接收到用户选择算法已破解,则将该算法设置为非安全;若服务器31接收杜鳌用户选择算法未被破解,将该算法设置为安全。

应当理解,修改后的新算法包不包括用于生成第一加密密钥的原算法,即原算法已经被删除或者修改。在一些实施例中,对算法包中的所有算法均进行了修改;在其他可行的实施例中,对算法包中的部分算法进行了修改,且至少修改了用于生成第一加密密钥的原算法;上述修改包括替换以及修订。

提示单元312,用于若服务器31检测识别出的算法不是安全的,服务器31提示用户修改算法包;具体的,提示方式不限定为语音或者文字提示等。

第二收发单元313,用于服务器31反馈风险状态码给终端30以及修改后的新算法包。

收取单元305,还用于终端30若接收到服务器31反馈的风险状态码,从服务器31获取新的算法包来替换原算法包。

生成单元301,还用于终端30根据新算法包中的算法以及预存的标识信息生成第二加密密钥。

具体的,终端30从新算法包中选取算法,再根据算法以及预存的标识信息生成第二加密密钥。可以是随机选择一个算法,还可以是按照一定规则选择算法。

加密单元302,还用于终端30根据第二加密密钥加密待传输的数据。

获取单元303,还用于户端根据生成所述第二加密密钥的算法来获取相对应的第二算法标识。具体的,第二算法标识是生成第二加密密钥的算法的算法标识。同上述第一算法标识相似,第二算法标识为算法中的若干个标志性字段。

第一收发单元304,还用于终端30将使用第二加密密钥加密后的数据以及所述第二算法标识发送给服务器31。

鉴别单元311,还用于服务器31根据第二算法标识识别用于生成第二加密密钥的算法。

解密单元314,用于服务器31根据识别出算法解密被第二加密密钥加密的数据。

需要说明的是,请看图4,解密单元314包括:侦测单元401、计算单元402以及执行单元403。

其中侦测单元401,用于服务器31获取标识信息;计算单元402,用于服务器31根据获取的标识信息以及识别出的用于生成第二加密密钥的算法计算出解密密钥;执行单元403,用于服务器31根据解密密钥解密被第二加密密钥加密的数据。

应当理解,本实施例中标识信息是IP地址和用户代理UA,因此服务器31接收到终端30的请求时可以获取到上述标识信息。其他可行的实施例中,服务器31可以向终端30请求获取标识信息。

鉴别单元311,还用于服务器31检测识别出的算法是安全的,根据第一算法标识识别生成第一加密密钥的算法。

解密单元314,用于服务器31根据识别出的算法解密被第一加密密钥加密的数据。

其中,侦测单元401,还用于服务器31获取标识信息;计算单元402,还用于服务器31根据获取的标识信息以及识别出的用于生成第一加密密钥的算法计算出解密密钥;执行单元403,还用于服务器31根据解密密钥解密被第一加密密钥加密的数据。

还需要说明的是,本实施例中,请看图5,生成单元301包括选择单元501以及处理单元502。其中,选择单元501,用于从预存的算法包中选择算法。处理单元502,用于根据选择的算法以及预存的标识信息获取第一加密密钥。

应当理解,获取第一加密密钥理解为生成第一加密密钥或者从现有的加密密钥中获取第一加密密钥。本实施例中优选每一次数据传输时均生成第一加密密钥,在其他可行的实施例中,第一加密密钥是上一次数据传输的第一加密密钥或者第二加密密钥,下文将对此进行具体描述。

在一些实施例中,选择单元501选择算法是在预存的算法包中随机选择一个算法,由于随机选择带来的不定性,进而提高加密密钥的安全性,进而提高了数据传输的安全等级,优选每次数据传输时选择单元501选择的算法均不同,进而每次数据传输时的第一加密密钥不同,提高数据传输的安全性。请看图6,在另一些实施例中,根据安全需求,待传输的数据划分为若干个安全等级,选择单元501包括第三识别单元601和匹配单元602。

其中,第三识别单元601,用于识别待传输的数据的安全等级;

匹配单元602,用于根据识别的安全等级从预存的算法包中获取相匹配的算法。其中,根据算法的复杂程度预存的算法包中的算法被划分为若干层级,不同层级的算法匹配不同安全等级的数据。

应当理解,设定安全等级是为了满足数据的安全需求,安全等级高的数据应当匹配复杂程度高的算法。

请看图7,在另一些实施例中,若不是第一次数据传输,选择单元501包括第一识别单元701、第二识别单元702、第一检测单元703以及选取单元704。

其中,第一识别单元701,用于获取前一次数据传输时生成被服务器31解密的加密数据的加密密钥的算法,加密密钥为第一加密密钥或者第二加密密钥;

应当理解,前一次数据传输时被服务器31解密的加密数据的加密密钥可能是第一加密密钥,还可能是第二加密密钥,这是基于第一加密密钥的算法不安全时,被服务器31解密的加密数据的加密密钥应当为第二加密密钥。

第二识别单元702,用于识别获取的算法的预设使用时长,预设使用时长用于表示算法允许被连续用于生成加密密钥的使用时间;

具体的,本实施例中预设使用时长是根据若干个数据样品的数据得到的。被连续用于生成加密密钥的使用时间是表示在连续的数据传输时被连续用于生成加密密钥的时间。如在预设使用时长内连续5次数据传输时使用同一算法生成加密密钥。

第一检测单元703,用于检测当前时间是否在获取的预设使用时长内。

选取单元704,用于若在预设使用时长内,从预存的算法包中选择与获取的算法相同的算法;若不在预设使用时长内,从预存的算法包中选择与获取的算法不同的算法。

应当理解,设置算法的预设使用时长是为了使后续每一次的数据传输是基于前一次数据传输的基础上进行。若算法相同,标识信息没变,则S101中获取的第一加密密钥应当是前一次数据传输时的第一加密密钥或者第二加密密钥,省去生成第一加密密钥的步骤,而当前数据传输时直接获取到第一加密密钥用于加密待传输的数据,进而设置算法的预设使用时长可以提高运行效率。若标识信息变化了,则S101中获取的第一加密密钥也会相应变化。另一方面,不在预设使用时长内则更变算法,也可以提高数据传输的安全性。

还需要说明的是,选择单元501,还用于从新算法包中选择算法。处理单元502,还用于根据选择的算法以及预存的标识信息生成第二加密密钥。

应当理解。在一些实施例中,选择算法是在预存的算法包中随机选择一个算法,由于随机选择带来的不定性,进而提高加密密钥的安全性,进而提高了数据传输的安全等级。在另一些实施例中,根据安全需求,待传输的数据划分为若干个安全等级,选择单元501中的第三识别单元601,用于识别待传输的数据的安全等级;匹配单元602,用于根据识别的安全等级从新算法包中获取相匹配的算法。根据算法的复杂程度,新算法包中的算法被划分为若干层级,不同层级的算法匹配不同安全等级的数据。

还应当理解,在其他可行的实施例中,上述一种数据的传输方法中,将使用第二加密密钥加密后的数据以及所述第二算法标识发送给服务器之后,服务器的鉴别单元还用于,服务器根据第二算法标识识别生成第二加密密钥的算法是否安全。若是安全,鉴别单元还用于根据第二算法标识识别用于生成第二加密密钥的算法;若是不安全的,提示单元还用于服务器提示用户修改算法包。

参见图8,是本发明实施例提供的一种传输系统的示意框图。如图所示的本实施例中传输系统包括终端800和与终端800通讯的服务器801,其中终端800可以包括一个或者若干个第一处理器801、一个或者若干个第一输入装置802、一个或者若干个第一输出装置803以及第一存储器804。上述第一处理器801、第一输入装置802、第一输出装置803以及第一存储器804通过总线连接。其中服务器801可以包括一个或者若干个第二处理器811、一个或者若干个第二输入装置812、一个或者若干个第二输出装置813以及第二存储器814。上述第二处理器811、第二输入装置812、第二输出装置813以及第二存储器814通过总线连接。

第一输入装置802用于接收用户操作输入或者服务器801传输的信息。具体实现中,本发明实施例的第一输入装置802可包括键盘、鼠标、光电输入装置、声音输入装置、触摸式输入装置、扫描仪等。

第一输出装置803用于对外信息给用户或者服务器801。具体实现中,本发明实施例的第一输出装置803可包括显示器、扬声器、打印机等。

第一存储器804用于存储带有各种功能的程序数据,具体实现中,本发明实施例的第一存储器804可以是系统存储器,比如,挥发性的(诸如RAM),非易失性的(诸如ROM,闪存等),或者两者的结合。具体实现中,本发明实施例的第一存储器804还可以是系统之外的外部存储器,比如,磁盘、光盘、磁带等。

第二输入装置812用于接收用户操作输入或者终端800传输的信息。具体实现中,本发明实施例的第二输入装置812可包括键盘、鼠标、光电输入装置、声音输入装置、触摸式输入装置、扫描仪等。

第二输出装置813用于对外信息给用户或者终端800。具体实现中,本发明实施例的第二输出装置813可包括显示器、扬声器、打印机等。

第二存储器804用于存储带有各种功能的程序数据,具体实现中,本发明实施例的第二存储器804可以是系统存储器,比如,挥发性的(诸如RAM),非易失性的(诸如ROM,闪存等),或者两者的结合。具体实现中,本发明实施例的第二存储器804还可以是系统之外的外部存储器,比如,磁盘、光盘、磁带等。

第一处理器801用于调用第一存储器804中存储的程序数据即执行第一存储器804存储的指令,并执行如下操作:

根据预存的算法包中的算法以及预存的标识信息获取第一加密密钥;根据第一加密密钥加密待传输的数据;根据生成第一加密密钥的算法来获取相对应的第一算法标识;将使用第一加密密钥加密后的数据以及第一算法标识发送给服务器,若接收到服务器反馈的风险状态码,从服务器获取新的算法包来替换原算法包,根据新算法包中的算法以及预存的标识信息生成第二加密密钥;根据第二加密密钥加密待传输的数据;根据生成所述第二加密密钥的算法来获取相对应的第二算法标识;将使用第二加密密钥加密后的数据以及所述第二算法标识发送给服务器,以供服务器根据第二算法标识进行解密。

其中,第一处理器801根据预存的算法包中的算法以及预存的标识信息获取第一加密密钥时,具体执行如下操作:从预存的算法包中选择算法;以及根据选择的算法以及预存的标识信息获取第一加密密钥。

在一些实施例中,而第一处理器801从预存的算法包中选择算法是,具体执行如下操作:

识别待传输的数据的安全等级;根据识别的安全等级从预存的算法包中获取相匹配的算法。其中,根据算法的复杂程度预存的算法包中的算法被划分为若干层级,不同层级的算法匹配不同安全等级的数据。

同理,第一处理器801根据新算法包中的算法以及预存的标识信息生成第二加密密钥,具体执行如下操作:从新算法包中选择算法;根据选择的算法以及预存的标识信息生成第二加密密钥。

在一些实施例中,而第一处理器801从新算法包中选择算法是,具体执行如下操作:

识别待传输的数据的安全等级;根据识别的安全等级从新算法包中获取相匹配的算法。其中,根据算法的复杂程度,新算法包中的算法被划分为若干层级,不同层级的算法匹配不同安全等级的数据。

在一些实施例中,而第一处理器801从预存的算法包中选择算法是,具体执行如下操作:

获取前一次数据传输时生成被服务器解密的加密数据的加密密钥的算法,加密密钥为第一加密密钥或者第二加密密钥;识别获取的算法的预设使用时长,预设使用时长用于表示算法允许被连续用于生成加密密钥的使用时间;检测当前时间是否在获取的预设使用时长内,若在预设使用时长内,从预存的算法包中选择与获取的算法相同的算法,若不在预设使用时长内,从预存的算法包中选择与获取的算法不同的算法。

第二处理器811用于调用第二存储器814中存储的程序数据即执行第二存储器814存储的指令,并执行如下操作:

服务器接收终端传送的使用第一加密密钥加密后的数据以及第一算法标识后,服务器根据第一算法标识识别生成第一加密密钥的算法;服务器检测识别出的算法是否是安全的,若不是安全的,服务器提示用户修改算法包并反馈风险状态码给终端以及修改后的新算法包,若接收到终端发送的使用第二加密密钥加密后的数据以及所述第二算法标识,根据第二算法标识识别用于生成第二加密密钥的算法以及服务器根据识别出算法解密被第二加密密钥加密的数据;若是安全的,根据第一算法标识识别生成第一加密密钥的算法,以及服务器根据识别出的算法解密被第一加密密钥加密的数据。

应当理解,在本发明实施例中,所称第一处理器801或第二处理器811可以是中央第一处理单元(Central Processing Unit,CPU),该第一处理器801、第二处理器811还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

需要说明的是,本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。

本发明实施例终端及服务器中的单元可以根据实际需要进行合并、划分和删减。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的终端和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如若干个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

另外,在本发明各个实施例中的各功能单元可以集成在一个第一处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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