掌桥专利:专业的专利平台
掌桥专利
首页

一种数据传输的方法、设备及存储介质

文献发布时间:2023-06-19 18:34:06


一种数据传输的方法、设备及存储介质

技术领域

本申请属于计算机技术领域,特别是涉及一种数据传输的方法、设备及存储介质。

背景技术

随着互联网的发展,互联网在计算用户的风控数据方面得到了重要的应用。由于客户数量不断增长,金融机构需要周期性的获取大量客户的风控数据,以获取各个客户所存在的风险详情。

现有的风控数据传输的方式主要是通过对风控数据进行加密,来提高风控数据在传输过程中的安全性。然而,对风控数据进行加密后再进行数据传输的方式,仍然存在数据被拦截及篡改等安全性问题。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

有鉴于此,本申请提供一种数据传输的方法、设备及存储介质,以解决相关技术对风控数据传输的过程中存在数据被拦截及篡改的技术问题。

本申请提供一种数据传输的方法,应用于客户端,所述方法包括:

向服务端发送对于目标文件的获取请求;

接收所述服务端根据所述获取请求发送的密文数据和解密参数密文,所述解密参数密文是通过所述服务端对解密参数基于公钥进行加密得到的,所述公钥是所述客户端提供给所述服务端的;

利用所述公钥相对应的私钥对所述解密参数密文进行解密,得到所述解密参数中的密文密钥;

利用所述密文密钥对所述密文数据进行解密,得到所述目标文件。

本申请提供一种数据传输的方法,应用于服务端,所述方法包括:

利用密文密钥对目标文件进行加密,得到密文数据,所述目标文件是基于客户端上传的待处理文件生成的;

接收所述客户端发送的公钥,利用所述公钥对携带有所述密文密钥的解密参数进行加密,得到解密参数密文;

在接收到所述客户端发送的获取请求时,将所述解密参数密文和所述密文数据发送给所述客户端,以使得所述客户端通过上述权利要求1~5所述的数据传输方法对所述密文数据进行解密。

本申请提供一种客户端,包括:

发送模块:用于向服务端发送对于目标文件的获取请求;

接收模块:用于接收所述服务端根据所述获取请求发送的密文数据和解密参数密文,所述解密参数密文是通过所述服务端对解密参数基于公钥进行加密得到的,所述公钥是所述客户端提供给所述服务端的;

第一解密模块:用于利用所述公钥相对应的私钥对所述解密参数密文进行解密,得到所述解密参数中的密文密钥;

第二解密模块:用于利用所述密文密钥对所述密文数据进行解密,得到所述目标文件。

本申请提供一种服务端,包括:

第一加密模块:用于利用密文密钥对目标文件进行加密,得到密文数据,所述目标文件是基于客户端上传的待处理文件生成的;

第二加密模块:用于接收所述客户端发送的公钥,利用所述公钥对携带有所述密文密钥的解密参数进行加密,得到解密参数密文;

传输模块:用于在接收到所述客户端发送的获取请求时,将所述解密参数密文和所述密文数据发送给所述客户端,以使得所述客户端通过上述的数据传输方法对所述密文数据进行解密。

本申请提供一种设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一方面所述的数据传输的方法。

本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述任一方面所述的数据传输的方法。

针对相关技术,本申请具备如下优点:

本申请提供的一种数据传输的方法、设备及存储介质,通过向服务端发送对于目标文件的获取请求,并且接收所述服务端根据所述获取请求发送的密文数据和解密参数密文,所述解密参数密文是通过所述服务端对解密参数基于公钥进行加密得到的,所述公钥是所述客户端提供给所述服务端的。再利用所述公钥相对应的私钥对所述解密参数密文进行解密,得到所述解密参数中的密文密钥,最后利用所述密文密钥对所述密文数据进行解密,得到所述目标文件,实现了在数据传输的过程中对目标文件与解密参数分别进行加密,避免了文件在传输过程中解密参数被泄露导致的密文数据被破解,从而提高了文件在传输过程中的安全性。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1是本申请实施例提供的一种数据传输的方法的架构示意图;

图2是本申请实施例提供的一种数据传输的方法的交互示意图;

图3是本申请实施例提供的一种数据传输的方法的步骤流程图;

图4是本申请实施例提供的另一种数据传输的方法的步骤流程图;

图5是本申请实施例提供的一种判断密文数据是否完整的方法步骤流程图;

图6是本申请实施例提供的另一种判断密文数据是否完整的方法步骤流程图;

图7是本申请实施例提供的再一种判断密文数据是否完整的方法步骤流程图;

图8是本申请实施例提供的再一种数据传输的方法的步骤流程图;

图9是本申请实施例提供的一种对数据进行加密的方法步骤流程图;

图10是本申请实施例提供的另一种对数据进行加密的方法步骤流程图;

图11是本申请实施例提供的一种对文件进行扫毒的方法步骤流程图;

图12是本申请实施例提供的一种客户端的结构框图;

图13是本申请实施例提供的一种服务端的结构框图;

图14是本申请实施例提供的一种数据传输的系统的结构框图;

图15是本申请实施例提供的一种设备的结构框图;

图16是本申请实施例提供的一种存储介质的结构框图。

具体实施方式

下面将参照附图更详细地描述本申请的示例性实施例。虽然附图中显示了本申请的示例性实施例,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本申请,并且能够将本申请的范围完整地传达给本领域的技术人员。

在信贷风控领域中,金融机构需要监控在贷客户的各项风险指标以确定客户的风险情况,称为贷中监控。金融机构需要周期性的获取客户的风控数据,提供相关查询参数来获取客户命中的风险详情,根据金融机构购买的服务及客户命中风险情况,返回相应的数据报文。在此过程中,由于客户的数量限制,数据报文约几十~几百KB不等。对于大批量的数据,可以通过文件的方式来进行传输。然而,现有的文件传输方案主要是对待传输文件进行加密,在完成文件的加密之后再进行传输。然而,仅仅对待传输文件进行加密的传输方式,加密后的文件在传输的过程中容易被破解,因此依然存在数据安全性的问题。

在具体介绍本申请的实施例之前,先对以下名词进行解释:

大数据平台:大数据平台是指以处理海量数据存储、计算及不间断流数据实时计算等场景为主的一套基础设施。典型的包括Hadoop系列、Spark、 Storm、Flink等集群。

数据交换:大数据平台向其他存储介质如mysql、sftp、hbase、redis等传输数据的方式。

对称加密:是密码学中的一种加密演算法,在加密和解密时通过相同的密码。

非对称加密:与对称加密比较而言,指加密和解密使用不同密钥的加密算法,也称为公私钥加密。

图1是本申请实施例提供的一种数据传输的系统的系统架构图,所述系统包括:客户端11与服务端12。其中,所述服务端12包括:文件传输服务器、数据服务商、大数据平台。文件传输服务器包括但不限于:SFTP(Secure File Transfer Protocol,安全文件传输协议)服务器。

参考图1,客户端11将待处理文件上传至文件传输服务器,数据服务商定时拉取文件传输服务器中的待处理文件,并将其上传至大数据平台,大数据平台基于待处理文件生成目标文件(例如风控数据)。大数据平台生成目标文件后,将目标文件进行加密得到密文数据,并对密文数据进行哈希运算后得到的解密参数通过数据库传输给数据服务商,同时将密文数据通过数据交换程序交换到文件传输服务器中,供客户端下载。客户端11还可以利用数据服务商提供的密码获取接口获取目标文件的密码。客户端11与服务端 12之间可以通过有线网络或无线网络进行数据的传输。

参照图2,示出本申请提供一种数据传输的方法的系统流程图,该方法可以包括如下过程:

步骤110、客户端11向服务端12发送对于目标文件的获取请求;

在本申请实施例中,所述获取请求用于指示服务端12根据客户端11上传的待处理文件生成目标文件。其中,目标文件指的是满足特定属性的文件,例如风控数据构成的风控文件、由病理数据构成的病理文件等。

步骤120、客户端11接收所述服务端12根据所述获取请求发送的密文数据和解密参数密文,所述解密参数密文是通过所述服务端12对解密参数基于公钥进行加密得到的,所述公钥是所述客户端11提供给所述服务端12 的;

在本申请实施例中,密文数据指的是服务端12对目标文件利用密文密钥进行对称加密得到的数据,解密参数密文指的是服务端12对解密参数利用预先存储的公钥(客户端预先存储有私钥)进行非对称加密得到的密文,该解密参数至少包含有用于对目标文件进行加密和解密的密文密钥,当然还可以包含有其他验证数据,例如身份验证信息、数据说明等等,具体可以根据实际需求设置,此处不做限定。本申请实施例通过对目标文件以及解密参数分别进行加密,避免了解密参数被泄露导致的密文数据被破解的情况,提高了文件在传输过程中的安全性。

步骤130、客户端11利用所述公钥相对应的私钥对所述解密参数密文进行解密,得到所述解密参数中的密文密钥;

在本申请实施例中,密文密钥用于对密文数据进行解密,客户端11利用公钥相对应的私钥对解密参数密文进行解密,得到解密参数中的密文密钥。

步骤140、客户端11利用所述密文密钥对所述密文数据进行解密,得到所述目标文件。

在本申请实施例中,客户端11利用密文密钥对密文数据进行解密,得到目标文件。

本申请实施例通过向服务端发送对于目标文件的获取请求,并且接收服务端根据获取请求发送的密文数据和解密参数密文,再利用公钥相对应的私钥对解密参数密文进行解密,得到解密参数中的密文密钥,最后利用密文密钥对密文数据进行解密,得到目标文件,实现了在数据传输的过程中对目标文件与解密参数均进行加密,避免了文件在传输过程中解密参数被泄露导致的密文数据被破解的情况,从而提高了文件在传输过程中的安全性。

参照图3,是本申请实施例提供的一种数据传输的方法的步骤流程图,应用于客户端,所述方法还包括如下过程:

步骤210、向服务端发送对于目标文件的获取请求;

在本申请实施例中,步骤210的具体实施方式与步骤110一致,在此不再赘述。

步骤220、接收所述服务端根据所述获取请求发送的密文数据和解密参数密文,所述解密参数密文是通过所述服务端对解密参数基于公钥进行加密得到的,所述公钥是所述客户端提供给所述服务端的;

在本申请实施例中,步骤220的具体实施方式与步骤120一致,在此不再赘述。

步骤230、利用所述公钥相对应的私钥对所述解密参数密文进行解密,得到所述解密参数中的密文密钥;

在本申请实施例中,步骤230的具体实施方式与步骤130一致,在此不再赘述。

步骤240、利用所述密文密钥对所述密文数据进行解密,得到所述目标文件。

在本申请实施例中,步骤240的具体实施方式与步骤140一致,在此不再赘述。

图4是本申请实施例提供的另一种数据传输的方法的步骤流程图,应用于服务端,所述方法包括:

步骤310,利用密文密钥对目标文件进行加密,得到密文数据,所述目标文件是基于客户端上传的待处理文件生成的。

在本申请实施例中,待处理文件指的是客户端11上传的关于一个或多个客户,或某个客户群体的数据,服务端12利用密文密钥对目标文件进行加密,得到密文数据,目标文件是基于客户端11上传的待处理文件生成的。

本申请实施例以文件的方式在客户端11与服务端12之间传输数据,解决了通过HTTP(Hyper Text Transfer Protocol,超文本传输协议)接口来传输数据所存在的传输效率低,数据量较大时带宽限制导致的对服务端12生产环境的其他接口访问的问题。

步骤320,接收所述客户端发送的公钥,利用所述公钥对携带有所述密文密钥的解密参数进行加密,得到解密参数密文。

在本申请实施例中,公钥指的是密钥对中用于对数据进行加密的密钥。解密参数是服务端12利用密文密钥对目标文件进行加密时生成的。本申请实施例中非对称加密的方式包括但不限于:RSA加密算法、DSA(Digital Signature Algorithm,数字签名算法)。服务端12接收客户端11发送的公钥,利用公钥对携带有密文密钥的解密参数进行加密,得到解密参数密文。

本申请实施例采用非对称加密的方式对解密参数进行加密,得到解密参数密文,保障了解密参数在传输的过程中不被窃取。

步骤330,在接收到所述客户端发送的获取请求时,将所述解密参数密文和所述密文数据发送给所述客户端,以使得所述客户端通过上述数据传输方法对所述密文数据进行解密。

在本申请实施例中,在接收到客户端11发送的获取请求时,将解密参数密文和密文数据发送给客户端11,以使得客户端11通过上述数据传输方法对密文数据进行解密。

本申请实施例通过利用密文密钥对目标文件进行加密,得到密文数据,再接收客户端发送的公钥,利用公钥对携带有密文密钥的解密参数进行加密,得到解密参数密文。在接收到客户端发送的获取请求时,将解密参数密文和密文数据发送给客户端,以使得客户端通过上述数据传输方法对所述密文数据进行解密。实现了在数据传输的过程中对目标文件与解密参数分别进行加密,避免了文件在传输过程中解密参数被泄露导致的密文数据被破解,从而提高了文件在传输过程中的安全性。

可选地,参照图5,是本申请实施例提供的一种判断密文数据是否完整的方法步骤流程图,在所述步骤220之后,还包括以下步骤:

所述解密参数还包括:所述服务端对所述密文数据进行哈希运算得到的第一哈希值;

步骤221,依据所述第一哈希值判断所述密文数据是否完整。

在本申请实施例中,密文数据完整指的是密文数据的数据量未出现变化,且密文数据所包含的所有数据均未被篡改。客户端11依据第一哈希值判断密文数据是否完整。其中,依据第一哈希值判断密文数据是否完整的方式为:在对密文数据再次进行哈希运算,得到第二哈希值,根据第一哈希值与第二哈希值的比较结果判断密文数据是否完整。

步骤222,在所述密文数据不完整的情况下,重新从所述服务端请求获取密文数据。

在本申请实施例中,密文数据不完整指的是密文数据的数据量出现变化,和/或密文数据所包含的数据被篡改。在密文数据不完整的情况下,重新从服务端12请求获取密文数据。

本申请实施例,通过依据第一哈希值判断密文数据是否完整,在密文数据不完整的情况下,重新从服务端请求获取密文数据。在保障了数据在传输过程中安全性的同时,对数据的完整性进行了判断,提高了数据的可靠性。

并且,本申请实施例的第一哈希值是通过私钥对解密参数密文进行解密得到的,避免了解密参数包含的第一哈希值在传输过程中被窃取,提高了对文件完整性进行判断的可靠性。

可选地,参照图6,所述步骤221包括:

步骤2211,对所述服务端发送的密文数据进行哈希运算,得到第二哈希值。

在本申请实施例中,客户端11对服务端12发送的密文数据进行哈希运算,得到第二哈希值。需要说明的是,客户端11对密文数据进行的哈希运算与服务端12对密文数据进行的哈希运算是采用相同算法的哈希运算。

步骤2212,将所述第一哈希值与所述第二哈希值进行比较,依据比较结果判断所述密文数据是否完整。

在本申请实施例中,客户端11将第一哈希值与第二哈希值进行比较,依据比较结果判断密文数据是否完整。

本申请实施例通过对服务端发送的密文数据进行哈希运算,得到第二哈希值,并且将第一哈希值与第二哈希值进行比较,依据比较结果判断密文数据是否完整,实现了数据在传输过程结束后对数据的完整性进行验证,提升了数据的可靠性。

可选地,参考图7,所述步骤2212,包括:

步骤22121、将所述第一哈希值的第一字符串与所述第二哈希值的第二字符串进行比较,得到比较结果。

在本申请实施例中,客户端11将第一哈希值的第一字符串与第二哈希值的第二字符串进行比较,得到比较结果。

步骤22122、在所述比较结果为所述第一字符串与所述第二字符串一致的情况下,确定所述密文数据是完整的;

在本申请实施例中,两个字符串的比较结果一致指的是两个字符串的长度相同,且各个字符串在相同位置的字符完全一致。在比较结果为第一字符串与第二字符串一致的情况下,客户端11确定密文数据是完整的。

步骤22122’、在所述比较结果为所述第一字符串与所述第二字符串不一致的情况下,确定所述密文数据是不完整的。

在本申请实施例中,在所述比较结果为所述第一字符串与所述第二字符串不一致的情况下,客户端11确定所述密文数据是不完整的。

本申请实施例通过将第一哈希值的第一字符串与第二哈希值的第二字符串进行比较,得到比较结果,在比较结果为第一字符串与第二字符串一致的情况下,确定密文数据是完整的;在比较结果为所述第一字符串与所述第二字符串不一致的情况下,确定密文数据是不完整的。实现了对数据在传输过程中是否被篡改,或出现数据丢失的情况进行监控。

可选地,参照图8,是本申请实施例提供的再一种数据传输的方法的步骤流程图,所述方法包括:

所述服务端包括:数据服务商,文件传输服务器、大数据平台;

步骤2201,从所述文件传输服务器中下载所述密文数据,所述密文数据是所述大数据平台响应于所述获取请求上传至所述文件传输服务器的。

在本申请实施例中,客户端11从文件传输服务器中下载密文数据,密文数据是大数据平台响应于获取请求上传至文件传输服务器的。

步骤2202,调用所述数据服务商提供的密码获取接口,获取所述解密参数密文,所述解密参数密文是通过所述大数据平台对所述解密参数基于公钥进行加密得到的,并且通过所述大数据平台上传至所述数据服务商。

在本申请实施例中,客户端11调用数据服务商提供的密码获取接口,获取解密参数密文,解密参数密文是通过大数据平台对解密参数基于公钥进行加密得到的,并且通过大数据平台上传至数据服务商。

本申请实施例通过数据服务商,文件传输服务器、大数据平台之间进行分工合作,保障了文件在传输以及处理时的效率。

可选地,参照图9,是本申请实施例提供的一种对数据进行加密的方法步骤流程图,可以作为步骤320的具体实施方式,所述方法包括:

步骤3201、接收所述客户端发送的公钥;

在本申请实施例中,服务端12接收客户端发送的公钥。

步骤3202、对所述密文数据进行哈希运算,得到第一哈希值。

在本申请实施例中,服务端12对密文数据进行哈希运算,得到第一哈希值。

步骤3203,利用所述公钥对所述密文密钥和所述第一哈希值进行加密得到解密参数密文。

在本申请实施例中,解密参数指的是服务端12将密文密钥和第一哈希值进行封装得到的数据封装包。在对密文密钥和第一哈希值封装之后,服务端12将所得到的解密参数再利用公钥进行加密,得到解密参数密文。

本申请实施例通过对密文数据进行哈希运算,得到第一哈希值。再利用客户端发送的公钥对密文密钥和第一哈希值进行加密得到解密参数密文,不但保障了密文数据在传输过程中的安全性,而且保障了密文数据的哈希值在传输过程中不被窃取,从而提高了对密文数据的完整性进行验证的可靠性。

可选地,参照图10,示出了本申请实施例提供的另一种对数据进行加密的方法步骤流程图,应用于风控数据处理领域,所述步骤310,可以包括:

步骤3101、基于所述待处理文件,生成所述待处理文件对应的风控数据;

在本申请实施例中,服务端12基于待处理文件,生成待处理文件对应的风控数据。

步骤3102、将所述风控数据进行分割,得到所述风控数据包含的多个子文件;

在本申请实施例中,服务端12将风控数据进行分割,得到风控数据包含的大小均匀的多个子文件。其中,将风控数据进行分割的方式包括但不限于:将风控数据中预设数据量的数据划分为子文件。例如,风控数据总共有 100MB,可以将预设数据量设为10MB,则可以将100MB的风控数据分割为10个10MB的子文件。假设风控数据总共有500MB,可以将预设数据量设为100MB,则可以将500MB的风控数据分割为5个100MB的子文件。

步骤3103、将所述多个子文件按照分类标识存储至分布式文件系统的不同目录中,所述分类标识包括以下标识的一种或多种:日期标识、机构编号标识;

在本申请实施例中,分布式文件系统指的是HDFS(Hadoop Distributed FileSystem,分布式文件系统),服务端12将多个子文件按照分类标识存储至分布式文件系统的不同目录中,分类标识包括以下标识的一种或多种:日期标识、机构编号标识。

步骤3104、在所述分布式文件系统的不同目录中,利用所述密文密钥对所述多个子文件进行加密,得到所述密文数据。

在本申请实施例中,服务端12在分布式文件系统的不同目录中,利用密文密钥对多个子文件进行加密,得到密文数据。

需要说明的是,本申请实施例所提供的方案可以应用的待处理文件的数据类型不局限于风控数据,还可以是病理数据等。

本申请实施例通过基于待处理文件,生成待处理文件对应的风控数据,并且将风控数据进行分割,得到风控数据包含的多个子文件。将多个子文件按照分类标识存储至分布式文件系统的不同目录中,在分布式文件系统的不同目录中,利用密文密钥对多个子文件进行加密,得到密文数据,能够提高对文件进行加密的效率,以及提高对文件进行管理的效率。

可选地,在所述步骤310之后,还包括:

步骤311、将所述待处理文件进行扫毒,得到扫毒结果;

在本申请实施例中,服务端12将待处理文件进行扫毒的方式可以是将待处理文件上传至扫毒服务器进行扫毒,也可以是通过服务端12配置的扫毒软件进行扫毒,本申请对此不做限定。

本申请实施例在对待处理文件进行处理之前,先对待处理文件进行扫毒,保障了文件传输的参与方不被病毒侵害。

步骤312、在所述扫毒结果为所述待处理文件不包含病毒的情况下,将所述待处理文件交由多个数据处理模块进行并行处理,得到所述目标文件。

在本申请实施例中,在扫毒结果为待处理文件不包含病毒的情况下,服务端12将待处理文件交由多个数据处理模块进行并行处理,得到目标文件。

本申请实施例通过将待处理文件交由多个数据处理模块进行并行处理,提高了对待处理文件的处理效率。

本申请实施例还提供一种数据传输方法,包括以下步骤:

1、搭建SFTP文件传输服务器,不能采用默认的端口22,使用iptables 或vpc(Virtual Private Cloud,虚拟私有云)防火墙来限制IP访问,客户端 11需要申请IP白名单才可以访问。

2、客户端11登录后通过SFTP协议上传待处理文件到SFTP的指定目录,上传的待处理文件以一个结束标志文件表示当天所有文件上传完毕,如一个{机构编号}_{日期}.success文件,再此之前可以覆盖已上传的文件。

本申请实施例在对待处理文件的上传过程中,通过对待处理文件加入结束标志,保障了文件传输完成之后才开始进行文件的处理,保障了文件上传过程的完整性。

3、服务端将SFTP的IP(Internet Protocol,网络之间互连的协议)、端口、用户、密码、文件路径等配置信息存储到数据库中。

4、数据服务商的应用服务器根据数据库中存储的用户、密码登录到 SFTP,并定时扫描SFTP的文件,确认.success文件存在,才开始处理,将新上传的文件下载到本机的临时目录中。

5、为了防止中毒,应用服务器不能立即处理待处理文件,而是将待处理文件上传到扫毒服务,并轮训等待扫描结果。

如果扫毒结果正常,则应用服务器打开文件处理文件内容。如果扫毒失败,应用服务器记录错误信息到数据库中。

6、为了提高文件处理的效率,提高并行度,应用服务器首先将文件信息发送到消息队列的topic1中,多个应用服务器订阅该topic1消费,并行处理多个文件。

7、将处理的信息内容,封装成消息发送至消息队列topic2中,大数据平台的实时任务拉取topic2的信息,并处理消息存储到大数据平台hive表中。

8、删除临时文件,文件流入结束。

本申请实施例还提供一种数据传输方法,包括以下步骤:

1、目标文件(例如风控数据)由大数据平台作业每天自动调度计算生成。

2、大数据平台将每天生成的目标文件分隔成大小均匀的小文件,按日期存储在HDFS不同目录中。

3、为了防止文件内容泄漏,大数据平台加密HDFS中的文件,首先处理作业生成随机密码P,然后使用此密码采用对称加密(如AES(Advanced Encryption Standard,高级加密标准))的方式加密文件F,得到加密文件F’。

4、为保障文件传输的完整性,防篡改和防抵赖,大数据平台对计划流出的每个文件F’进行HASH,生成校验码S1,将生成结果交换到数据库中,供后续查询。

5、大数据平台将文件通过数据交换程序交换到SFTP文件传输服务器的指定目录中,同样按日期存储,供客户端11下载。

6、客户端11生成非对称加密的公钥PU、私钥PR,自己保留私钥,将公钥提供给数据服务商,数据服务商将每个客户端11的公钥保存在数据库中,方便管理。数据服务商提供文件密码获取接口,通过公钥PU加密文件密码P和校验码S1,生成密文C’。

7、客户端11从SFTP下载目录下载加密的文件F’,对文件F’使用服务端12相同的HASH(sha1/sha256)方式生成校验码S2,如果S1=S2证明文件没有被篡改,可以使用。

8、客户端11调用文件密码获取接口,获取文件解密密码的密文C’,使用非对称加密的私钥PR解密密文后得到文件密码P,再通过P解密F’得到解密后的文件F。

本申请实施例通过上述步骤,实现了在数据传输的过程中对目标文件与解密参数分别进行加密,避免了文件在传输过程中解密参数被泄露导致的密文数据被破解,从而提高了文件在传输过程中的安全性。

图12是本申请实施例提供的一种客户端400的结构示意图,所述客户端包括:

发送模块401,用于向服务端发送对于目标文件的获取请求;

接收模块402,用于接收所述服务端根据所述获取请求发送的密文数据和解密参数密文,所述解密参数密文是通过所述服务端对解密参数基于公钥进行加密得到的,所述公钥是所述客户端提供给所述服务端的;

第一解密模块403,用于利用所述公钥相对应的私钥对所述解密参数密文进行解密,得到所述解密参数中的密文密钥;

第二解密模块404,用于利用所述密文密钥对所述密文数据进行解密,得到所述目标文件。

可选地,所述解密参数还包括:所述服务端对所述密文数据进行哈希运算得到的第一哈希值;所述客户端400还包括验证模块,用于:

依据所述第一哈希值判断所述密文数据是否完整;

在所述密文数据不完整的情况下,重新从所述服务端请求获取密文数据。

可选地,所述验证模块,还用于:

对所述服务端发送的密文数据进行哈希运算,得到第二哈希值;

将所述第一哈希值与所述第二哈希值进行比较,依据比较结果判断所述密文数据是否完整。

可选地,所述验证模块还包括比较单元,用于:

将所述第一哈希值的第一字符串与所述第二哈希值的第二字符串进行比较,得到比较结果;

在所述比较结果为所述第一字符串与所述第二字符串一致的情况下,确定所述密文数据是完整的;

在所述比较结果为所述第一字符串与所述第二字符串不一致的情况下,确定所述密文数据是不完整的。

可选地,所述服务端包括:数据服务商,文件传输服务器、大数据平台,所述接收模块402,还用于:

从所述文件传输服务器中下载所述密文数据,所述密文数据是所述大数据平台响应于所述获取请求上传至所述文件传输服务器的;

调用所述数据服务商提供的密码获取接口,获取所述解密参数密文,所述解密参数密文是通过所述大数据平台对所述解密参数基于公钥进行加密得到的,并且通过所述大数据平台上传至所述数据服务商。

图13是本申请实施例提供的一种服务端500的结构示意图,所述服务端包括:

第一加密模块501,用于:利用密文密钥对目标文件进行加密,得到密文数据,所述目标文件是基于客户端上传的待处理文件生成的;

第二加密模块502,用于:接收所述客户端发送的公钥,利用所述公钥对携带有所述密文密钥的解密参数进行加密,得到解密参数密文;

传输模块503,用于:在接收到所述客户端发送的获取请求时,将所述解密参数密文和所述密文数据发送给所述客户端,以使得所述客户端通过上述的数据传输方法对所述密文数据进行解密。

可选地,所述第二加密模块502,还用于:

接收所述客户端发送的公钥;

对所述密文数据进行哈希运算,得到第一哈希值;

利用所述公钥对所述密文密钥和所述第一哈希值进行加密得到解密参数密文。

可选地,所述第一加密模块501,还用于:

基于所述待处理文件,生成所述待处理文件对应的风控数据;

将所述风控数据进行分割,得到所述风控数据包含的多个子文件;

将所述多个子文件按照分类标识存储至分布式文件系统的不同目录中,所述分类标识包括以下标识的一种或多种:日期标识、机构编号标识;

在所述分布式文件系统的不同目录中,利用所述密文密钥对所述多个子文件进行加密,得到所述密文数据。

可选地,所述服务端还包括扫毒模块,用于:

将所述待处理文件进行扫毒,得到扫毒结果;

在所述扫毒结果为所述待处理文件不包含病毒的情况下,将所述待处理文件交由多个数据处理模块进行并行处理,得到所述目标文件。

本申请实施例通过向服务端发送对于目标文件的获取请求,并且接收所述服务端根据所述获取请求发送的密文数据和解密参数密文,所述解密参数密文是通过所述服务端对解密参数基于公钥进行加密得到的,所述公钥是所述客户端提供给所述服务端的。再利用所述公钥相对应的私钥对所述解密参数密文进行解密,得到所述解密参数中的密文密钥,最后利用所述密文密钥对所述密文数据进行解密,得到所述目标文件,实现了在数据传输的过程中对目标文件与解密参数分别进行加密,避免了文件在传输过程中解密参数被泄露导致的密文数据被破解,从而提高了文件在传输过程中的安全性。

对于上述服务器的实施例而言,由于其与方法实施例基本相似,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。

本公开的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本公开实施例的设备中的一些或者全部部件的一些或者全部功能。本公开还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本公开的程序可以存储在存储介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

例如,图15示出了可以实现根据本公开的方法的设备。该设备传统上包括处理器710和以存储器720形式的计算机程序产品或者存储介质。存储器720可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器720具有用于执行上述方法中的任何方法步骤的程序代码731的存储空间730。例如,用于程序代码的存储空间730可以包括分别用于实现上面的方法中的各种步骤的各个程序代码731。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为如参考图16所述的便携式或者固定存储单元。该存储单元可以具有与图15的设备中的存储器720类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码731’,即可以由例如诸如710之类的处理器读取的代码,这些代码当由设备运行时,导致该设备执行上面所描述的方法中的各个步骤。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本公开的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本公开可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

最后应说明的是:以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围。

相关技术
  • 一种数据传输方法、装置、电子设备及存储介质
  • 一种数据传输方法、设备及计算机可读存储介质
  • 一种后端存储设备的管理方法、装置、设备以及存储介质
  • 一种数据存储方法及装置、一种计算设备及存储介质
  • 一种数据存储方法及装置、一种计算设备及存储介质
  • 信息处理系统、信息处理设备、外围设备、数据传输方法和存储数据传输程序的非暂时性存储介质
  • 数据传输方法、数据传输装置、数据传输设备及存储介质
技术分类

06120115609999