本发明涉及数据处理,尤其是涉及一种数据传输方法、装置和电子设备。
背景技术:
1、相关技术中,在网络中进行数据传输时,通常采用数据明文传输,该传输方式非常不安全,容易造成传输数据的泄露,进而数据还可通过http协议或者https协议传输,虽然这些方式对数据进行了简单封装或者增加了证书签名认证,但是数据仍然可能被攻击者劫持并解密,从而引发网络安全问题,或者造成用户数据的泄露。
技术实现思路
1、本发明的目的在于提供一种数据传输方法、装置和电子设备,以方式数据被攻击者劫持,避免用户数据的泄露,并提高网络安全。
2、第一方面,本发明提供了一种数据传输方法,该方法应用于用户端,该方法包括:向服务端发送加密设置请求,以使服务端根据加密设置请求返回随机字符串;响应针对于随机字符串的选择指令,从接收的随机字符串中选择至少一个目标字符;根据每个目标字符对应的预设数值,得到加密密钥;并向服务端发送至少一个目标字符,以使服务端根据每个目标字符对应的预设数值得到解密密钥;在进行数据传输时,将通过加密密钥进行加密的传输数据发送至服务端,以使服务端通过解密密钥对加密的传输数据进行解密。
3、在可选的实施方式中,上述加密设置请求中包含有数字;上述服务端根据加密设置请求返回的随机字符串中包含的字符数量与数字相匹配。
4、在可选的实施方式中,上述根据每个目标字符对应的预设数值,得到加密密钥的步骤,包括:将至少一个目标字符中每个目标字符对应的预设数值相加,得到第一加和;基于第一加和,确定加密密钥。
5、在可选的实施方式中,上述基于第一加和,确定加密密钥的步骤,包括:对负的第一加和进行二进制转换,得到二进制数;将二进制数的反码加一,得到加密密钥。
6、在可选的实施方式中,上述随机字符串包括多个汉字;目标字符的预设数值包括目标字符对应的汉字的笔画数。
7、第二方面,本发明提供了一种数据传输方法,该方法应用于服务端,该方法包括:如果接收到用户端发送的加密设置请求,向用户端随机字符串,以使用户端响应针对于随机字符串的选择指令,从接收的随机字符串中选择至少一个目标字符,根据每个目标字符对应的预设数值,得到加密密钥,并返回至少一个目标字符;服务端根据接收的至少一个目标字符中每个目标字符对应的预设数值,得到解密密钥;在进行数据传输时,接收用户端通过加密密钥进行加密的传输数据,并通过解密密钥对加密的传输数据进行解密。
8、在可选的实施方式中,上述根据接收的至少一个目标字符中每个目标字符对应的预设数值,得到解密密钥的步骤,包括:将至少一个目标字符中每个目标字符对应的预设数值相加,得到第一加和;对负的第一加和进行二进制转换,得到二进制数;将二进制数的补码确定为解密密钥。
9、在可选的实施方式中,上述根据接收的至少一个目标字符中每个目标字符对应的预设数值,得到解密密钥的步骤之后,上述方法还包括:将解密密钥与用户端的用户信息进行关联保存。
10、第三方面,本发明提供了一种数据传输装置,该装置设置于用户端,该装置包括:请求发送模块,用于向服务端发送加密设置请求,以使服务端根据加密设置请求返回随机字符串;字符选择模块,用于响应针对于随机字符串的选择指令,从接收的随机字符串中选择至少一个目标字符;加密密钥确定模块,用于根据每个目标字符对应的预设数值,得到加密密钥;并向服务端发送至少一个目标字符,以使服务端根据每个目标字符对应的预设数值得到解密密钥;数据发送模块,用于在进行数据传输时,将通过加密密钥进行加密的传输数据发送至服务端,以使服务端通过解密密钥对加密的传输数据进行解密。
11、第四方面,本发明提供了一种数据传输装置,该装置设置于服务端,该装置包括:请求接收模块,用于如果接收到用户端发送的加密设置请求,向用户端发送随机字符串,以使用户端响应针对于随机字符串的选择指令,从接收的随机字符串中选择至少一个目标字符,根据每个目标字符对应的预设数值,得到加密密钥,并返回至少一个目标字符;解密密钥确定模块,用于根据接收的至少一个目标字符中每个目标字符对应的预设数值,得到解密密钥;数据接收模块,用于在进行数据传输时,接收用户端通过加密密钥进行加密的传输数据,并通过解密密钥对加密的传输数据进行解密。
12、第五方面,本发明提供了一种电子设备,该电子设备包括处理器和存储器,该存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述数据传输方法。
13、第六方面,本发明提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述数据传输方法。
14、本发明实施例带来了以下有益效果:
15、本发明提供的一种数据传输方法、装置和电子设备,首先在设置加密规则时,用户通过用户端向服务端发送加密设置请求,服务端根据接收的加密设置请求返回随机字符串至用户端;用户端接收到随机字符号串后,响应针对于随机字符串的选择指令,从随机字符串中选择至少一个目标字符,进而根据每个目标字符对应的预设数值,得到加密密钥;用户端还向服务端发送至少一个目标字符,以使服务端根据每个目标字符对应的预设数值得到解密密钥;在进行数据传输时,用户端将通过加密密钥进行加密的传输数据发送至服务端,以使服务端通过解密密钥对加密的传输数据进行解密。该方式通过用户自主选择的目标字符串生成用于数据传输的加密密钥和解密密钥,以对该用户在加密完成后的所有传输渠道或介质中,均以加密密钥进行密文传输,从而提高了数据传输的安全性,避免了数据的泄露。
16、本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。
17、为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
1.一种数据传输方法,其特征在于,所述方法应用于用户端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述加密设置请求中包含有数字;所述服务端根据所述加密设置请求返回的随机字符串中包含的字符数量与所述数字相匹配。
3.根据权利要求1所述的方法,其特征在于,所述根据每个所述目标字符对应的预设数值,得到加密密钥的步骤,包括:
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一加和,确定所述加密密钥的步骤,包括:
5.根据权利要求1-4任一项所述的方法,其特征在于,所述随机字符串包括多个汉字;所述目标字符的预设数值包括所述目标字符对应的汉字的笔画数。
6.一种数据传输方法,其特征在于,所述方法应用于服务端,所述方法包括:
7.根据权利要求6所述的方法,其特征在于,所述根据接收的所述至少一个目标字符中每个所述目标字符对应的预设数值,得到解密密钥的步骤,包括:
8.根据权利要求6-7任一项所述的方法,其特征在于,所述根据接收的所述至少一个目标字符中每个所述目标字符对应的预设数值,得到解密密钥的步骤之后,所述方法还包括:
9.一种数据传输装置,其特征在于,所述装置设置于用户端,所述装置包括:
10.一种数据传输装置,其特征在于,所述装置设置于服务端,所述装置包括:
11.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1至8任一项所述的数据传输方法。
12.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使处理器实现权利要求1至8任一项所述的数据传输方法。