金融文件监听方法、装置、系统和计算机可读存储介质
文献发布时间:2023-06-19 09:27:35
技术领域
本申请涉及数据处理技术领域,具体涉及一种金融文件监听方法、装置、系统和计算机可读存储介质。
背景技术
金融文件基本上都是涉敏文件,具有很高的数据安全要求。在金融文件的生成到转移过程中,一般有客户提供的专用工具、ftp工具或者系统本身的剪切复制等方式,并通过员工手工操作来实现将金融文件从DMZ接收区向高安区进行转移、解密、分类等操作。但在整个操作过程中,金融文件中的敏感数据常常存在暴露节点和次数过多的问题,文件暴露风险较大。然而对金融文件可以采用非系统管理和使用方式,但该方式也存在工作量大、操作复杂易出错等困难,并且客户的个性化要求难以满足,需要大量的人工操作,也容易造成人为失误而导致事故。
申请内容
有鉴于此,本申请实施例中提供了一种金融文件监听方法、装置、系统和计算机可读存储介质,以克服现有技术中金融文件在转移过程中容易将敏感数据暴露的问题。
第一方面,本申请实施例提供了一种金融文件监听方法,该方法包括:
发送扫描请求指令至接收终端,其中所述接收终端用于接收或获取客户端的金融文件;
根据所述扫描请求指令从所述接收终端中获取金融文件列表;
在所述金融文件列表中的金融文件更新完毕时,从所述接收终端获取更新完毕的任意一个或多个金融文件;
检测每一个所述金融文件是否完整;
对完整的所述金融文件进行文件匹配规则检测,当所述金融文件满足所述文件匹配规则时,判断满足所述文件匹配规则的所述金融文件是否属于白名单;
在所述金融文件不属于白名单,且所述金融文件配置解密时,对所述金融文件进行解密;
在解密成功后,对解密后的所述金融文件进行转加密,并将转加密后的所述金融文件保存至所述高安区服务器中。
第二方面,本申请实施例提供了一种金融文件监听装置,该装置包括:
扫描请求指令发送模块,用于发送扫描请求指令至接收终端,其中所述接收终端用于接收或获取客户端的金融文件;
列表获取模块,用于根据所述扫描请求指令从所述接收终端中获取金融文件列表;
文件获取模块,用于在所述金融文件列表中的金融文件更新完毕时,从所述接收终端获取更新完毕的任意一个或多个金融文件;
完整检测模块,用于检测每一个所述金融文件是否完整;
白名单判断模块,用于对完整的所述金融文件进行文件匹配规则检测,当所述金融文件满足所述文件匹配规则时,判断满足所述文件匹配规则的所述金融文件是否属于白名单;
解密模块,用于在所述金融文件不属于白名单,且所述金融文件配置解密时,对所述金融文件进行解密;
转加密模块,用于在解密成功后,对解密后的所述金融文件进行转加密;
文件保存模块,用于将转加密后的所述金融文件保存至所述高安区服务器中。
第三方面,本申请实施例提供了一种金融文件监听系统,包括:包括:依次连接的客户端、接收终端、主机和高安区服务器;其中客户端、接收终端、主机和高安区服务器的数量可以是一个或多个;
所述接收终端用于从所述客户端接收或获取金融文件;
所述高安全服务器用于存储所述主机发送的转加密后的所述金融文件;
所述主机用于执行上述第一方面提供的金融文件监听方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,计算机可读取存储介质中存储有程序代码,程序代码可被处理器调用执行上述第一方面提供的金融文件监听方法。
本申请实施例提供的一种金融文件监听方法、装置、系统和计算机可读存储介质;首先发送扫描请求指令至接收终端,根据扫描请求指令从接收终端获取金融文件列表,然后根据金融文件列表中的金融文件是否更新完毕,在金融文件更新完毕时,获取更新完毕的一个或多个金融文件;然后对获取的金融文件进行完整性检测,当金融文件完整时,再对完整的金融文件进行文件匹配规则检测,当文件满足文件匹配规则时,再进一步判断该金融文件是否属于白名单,当不属于白名单时,且金融文件配置解密时,对金融文件进行解密,在解密成功后,对解密后的金融文件进行转加密并将转加密后的文件保存早高安区服务器。该金融文件监听方法在整个金融文件的转移过程中(即从接收到金融文件到保存到高安区服务器的过程中),检测文件的完整性、是否满足文件匹配规则,并对其进行转加密,能有效地保证金融文件的完整性和安全性,并且操作简单、方便。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的金融文件监听方法的应用场景示意图;
图2为本申请一个实施例提供的金融文件监听方法的流程示意图;
图3为本申请一个实施例提供的金融文件监听方法中接收终端与主机的通讯示意图;
图4为本申请另一个实施例中提供的金融文件监听方法的流程示意图;
图5为本申请一个实施例中提供的金融文件监听装置的结构示意图;
图6为本申请一个实施例中提供的计算机可读存储介质的结构示意图。
具体实施方式
下面将对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了更详细说明本申请,下面结合附图对本申请提供的一种金融文件监听方法、装置、系统和计算机存储介质,进行具体地描述。
请参考图1,图1示出了本申请实施例提供的金融文件监听方法的应用场景的示意图(即金融文件监听系统示意图),该应用场景包括本申请实施例提供的客户端100、接收终端200、主机300和服务器400,其中客户端100通常为客户前置部分,包括前置主机等,接收终端200通常是设置在公司DMZ区域(即处于非安全区域与安全区域之间的区域),主要用来接收从客户端100发送的金融文件列表以及金融文件等,或直接从客户端100主动获取金融文件列表或金融文件等,然后将获取都的金融文件列表和金融文件发送至主机300。主机300主要设置在公司高安区(即高安全区域),主要用来对金融文件完整性、加解密等处理,然后将处理后的金融文件保存至服务器400,其中主机300可以是普通主机也可以是自动化主机。服务器400主要也是设置在公司高安区以及服务区,其中服务器400中包括有数据库、密钥接口、KMS等。另外,服务器400、主机300、接收终端200和客户端100之间设置有网络。网络用于在服务器400、主机300、接收终端200和客户端100之间提供通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
应该理解,客户端100、接收终端200、主机300和服务器400以及网络的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器可以是多个服务器组成的服务器集群等。
另外,客户端100、接收终端200、主机300和服务器400之间可以是基于TCP/IPSocket通讯,在通信配置时需要注册终端相关IP、MAC等。
基于此,本申请实施例中提供了一种金融文件监听方法。请参阅图2,图2示出了本申请实施例提供的一种金融文件监听方法的流程示意图,以该方法应用于图1中的主机为例进行说明,包括以下步骤:
步骤S110,发送扫描请求指令至接收终端,其中接收终端用于接收或获取客户端的金融文件;
步骤S120,根据扫描请求指令从接收终端中获取金融文件列表;
在一个实施例中,在发送扫描请求指令至接收终端的步骤之前,还包括:发送连接请求指令至接收终端,根据连接请求指令与接收终端建立连接。
在本实施例中是以主机单端角度进行撰写的。在需要对金融文件进行监听时,主机往往需要先启动监听并配置监听方案,其中启动监听可以是通过采用主控程序来调用监听接收模块;监听方案的配置通常有两种方式,即手动模式和自动模式;手动模式即为根据用户选择已配置完成的监听方案,而自动模式即为根据计划出发已配置的监听方案。此外,监听方案包括但不限于对应的接收终端、相应的监听路径、扫描间隔、解密配置等。
在监听启动之后,主机需要从接收终端来获取金融文件列表以及相应的金融文件。在从接收终端获取金融文件列表和相应的金融文件之前,通常需要与接收终端建立连接。具体过程为:主机发送连接请求指令至主机想要进行监听的其中一个或多个接收终端;接收终端相应连接请求指令与主机建立连接关系。
在建立连接关系之后,主机即可对预制建立连接的接收终端进行操作。首先,发送扫描请求指令至接收终端,接收终端响应于扫描请求指令,可以通过扫描指定目录或远程ftp/sftp/ftps目录并返回金融文件列表至主机。
步骤S130,在金融文件列表中的金融文件更新完毕时,从接收终端获取更新完毕的任意一个或多个金融文件;
主机在获取到金融文件列表后,来判断列表中的金融文件是否更新完毕,即判断是否有金融文件正在更新或传输,并且尚未完成。在金融文件更新完毕时,发送金融文件请求传输指令至接收终端,接收终端响应金融文件那个球传输指令将一个或多个金融文件传输至主机。
其中,在接收终端将金融文件传输至主机过程中,可以将金融文件进行分块,然后按照文件分块(block)分割传输。采用该方式可以提高文件的传输效率。
步骤S140,检测每一个金融文件是否完整;
在一个实施例中,检测每一个金融文件是否完整的步骤中,包括:通过对金融文件的校验码进行校验来确定金融文件是否完整。
其中,检测金融文件是否完整,即确定金融文件的完整性,来确保金融文件在传输过程中没有丢失内容、没有被篡改等。文件的校验码又叫文件指纹验证,对于一个文件而言,其校验码是唯一且确定的,当改文件的内容等发生改变时其校验码也会改变,因此,通过校验或验证校验码就可以确定金融文件的完整性,即是否完整。
在一种可选的实施方式中,通过对金融文件的MD5校验码进行验证从而来确定金融文件的完整性。MD5是一种不可逆的加密算法,目前是最牢靠的加密算法之一,尚没有能够逆运算的程序被开发出来,它对应任何字符串都可以加密成一段唯一的固定长度的代码。一般用于密码的加密。而MD5校验码就是针对金融文件等的唯一对应的一段代码。可以通过验证金融文件的MD5校验码,如果MD5校验码保持不变,那么说明金融文件没有被中途修改过。
在另一种可选实施方式中,也可以采用sha1校验码或sha256校验码,以及采用sha1校验码、sha256校验码与MD5校验码结合使用来校验金融文件的完整性。
应当理解,在对金融文件的完整性进行校验时采用的校验码不限于本实施例中提到的sha1校验码、sha256校验码以及MD5校验码,根据本发明的技术启示,本领域技术人员还可以采用其他类似的校验码来进行金融文件完整性验证。
步骤S150,对完整的金融文件进行文件匹配规则检测,当金融文件满足文件匹配规则时,判断满足文件匹配规则的金融文件是否属于白名单;
由于各金融文件来自不同的客户端,其种类、形式等多种多样,并不是所有的金融文件都符合用户或服务器存储的规则。因此,需要对金融文件进行文件匹配规则检测,在其满足文件匹配规则时再对其进行后续处理,等不满足文件匹配规则时不再对其进行后续处理,可以将其直接删除等。
其中,文件匹配规则可以预设设置的一些文件匹配标准或方法等,其针对不同的金融文件其文件匹配规则可以是不同的。文件匹配规则可以是根据金融文件的类型、性质等确定的。
当金融文件满足文件匹配规则时,进一步确定该金融文件是否属于白名单。属于白名单中的金融文件是不需要解密的,不属于白名单的金融文件需要解密。白名单是可以预先设置的,即可以预先确定哪一些金融文件不需要解密,则将其设置成白名单。
步骤S160,在金融文件不属于白名单,且金融文件配置解密时,对金融文件进行解密;
步骤S170,在解密成功后,对解密后的金融文件进行转加密,并将转加密后的金融文件保存至高安区服务器中。
具体地,当金融文件不属于白名单时,进一步确定金融文件是否配置解密,在金融文件配置解密时,对金融文件进行解密处理;在解密成功后,对解密后的金融文件进行转加密,在转加密完成后,将转加密的金融文件保存至高安区服务器中。
其中,在对金融文件进行解密时,不同的金融文件采用的解密方式可能不相同。不同的解密方式可以预先进行设置。
本申请实施例提供的一种金融文件监听方法,首先发送扫描请求指令至接收终端,根据扫描请求指令从接收终端获取金融文件列表,然后根据金融文件列表中的金融文件是否更新完毕,在金融文件更新完毕时,获取更新完毕的一个或多个金融文件;然后对获取的金融文件进行完整性检测,当金融文件完整时,再对完整的金融文件进行文件匹配规则检测,当文件满足文件匹配规则时,再进一步判断该金融文件是否属于白名单,当属于不白名单时,且金融文件配置解密时,对金融文件进行解密,在解密成功后,对解密后的金融文件进行转加密并将转加密后的文件保存早高安区服务器。该金融文件监听方法在整个金融文件的转移过程中(即从接收到金融文件到保存到高安区服务器的过程中),检测文件的完整性、是否满足文件匹配规则,并对其进行转加密,能有效地保证金融文件的完整性和安全性,并且操作简单、方便。
在一个实施例中,还包括:在金融文件属于白名单时,对金融文件进行转加密,并将转加密后的金融文件保存至高安区服务器中。
在本实施例中是以主机单端角度进行撰写的。具体地,对属于白名单的金融文件进行转加密,并将转加密后的金融文件保存至高安区服务器中,可以进一步保证金融文件的安全性。
在一个实施例中,在金融文件列表中的金融文件未更新完毕时,间隔预设时间后,重新发送扫描请求指令至接收终端。
在本实施例中是以主机单端角度进行撰写的。具体而言,当金融文件列表中的金融文件未更新完毕时,即说明金融文件列表中的金融文件正在更新或传输尚未完成,此时若直接获取金融文件,得到的金融文件是不完整的。因此,间隔预设时间后,即间隔一段时间,然后重新发送扫描请求指令至接收终端,重新扫描接收终端的金融文件列表,看金融文件列表中的金融文件是否更新完成,在更新完成时,进行后续操作。其中,预设时间可以是预先设置的一个时间段,时间段的不应过长或过短,过长会造成时间浪费;过短可能会导致金融文件尚未更新完毕。
在一个实施例中,在将转加密后的金融文件保存至高安区服务器中的步骤之后,还包括:删除转加密后的金融文件和从接收终端获取更新完毕的任意一个或多个金融文件。
在本实施例中是以主机单端角度进行撰写的。在主机将转加密后的金融文件保存至高安区服务器之后,通常需要删除主机中存储的转加密后的金融文件,以及从接收终端获取来的更新完毕的任意一个或多个金融文件(即未经过任何操作的原始金融文件)。在本实施例中删除金融文件传输过程中产生的中间文件等以避免中间文件的泄露等能进一步提高金融文件的安全性。
此外,在校验金融文件不完整,以及对金融文件解密失败时,也需要删除相应的金融文件。
在一个实施例中,在根据连接请求指令与接收终端建立连接的步骤中,还包括:在一次连接失败后,重新与接收终端建立连接;当重新连接次数大于最大预设值时,判定连接失败。
在本实施例中是以主机单端角度进行撰写的。具体地,在根据连接请求指令与接收终端建立连接时,可以进行多次连接,即在一次连接失败时,主机可以重新与接收终端建立连接;当重新连接次数大于最大预设值时,判定连接失败。最大预设值可以是一个预先设置的值,即限定了重新连接的次数。采用该方式可以使得主机与接收终端在连接失败时,自动进行重新连接,避免重复发送请求连接指令。并且限制了重新连接的次数,在主机与接收终端多次无法进行连接时终止其连接操作,便于提示用户及时查找原因。
为了便于理解本方案给出一个详细的实施例。图3为接收终端与主机之间的通信图,并结合图4,本发明实施例中的金融文件监听方法其步骤为:(1)在监听开始时,主机启动监听方案,发送请求连接指令至接收终端,并获取接收终端IP/端口;(2)接收终端响应请求连接指令与主机建立连接,在未超过最大重试次数时,主机连接接收终端;(3)在连接成功时,主机定时请求扫描接收终端;(4)接收终端响应获取文件清单指令然后返回金融文件列表至主机;(5)主机循环判定文件是否有更新;(6)在文件没有更新时,启动检验子程序;(7)在检验子程序开始时,主机发送请求文件传输指令至接收终端,接收终端响应文件传输指令,并返回文件BLOCKS至主机;(8)主机判断文件是否已全部获取,在文件全部获取时,对文件完整性校验;(9)在文件完成时,主机进一步判断文件是否满足文件匹配规则,如果是进一步判断是否属于白名单,如果是,对其进行转加密;(10)如果不是属于白名单,判断文件是否配置解密,如果是进行解密,解密成功后,对文件进行转加密;(11)转加密完成后,将转加密后的文件保存至数据库DB,保存成功后删除本地文件,删除原始文件,校验子流程结束;(12)如果文件没有配置解密,解密失败或保存失败,则直接删除本地文件,检验子流程异常结束;(13)在子流程结束后或监听完成后,监听结束。
应该理解的是,虽然图2或图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且图2或图4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
上述本申请公开的实施例中详细描述了一种金融文件监听方法,对于本申请公开的上述方法可采用多种形式的设备实现,因此本申请还公开了对应上述方法的金融文件监听装置,下面给出具体的实施例进行详细说明。
请参阅图5,为本申请实施例公开的一种金融文件监听装置,主要包括:
扫描请求指令发送模块510,用于发送扫描请求指令至接收终端,其中所述接收终端用于接收或获取客户端的金融文件;
列表获取模块520,用于根据所述扫描请求指令从所述接收终端中获取金融文件列表;
文件获取模块530,用于在所述金融文件列表中的金融文件更新完毕时,从所述接收终端获取更新完毕的任意一个或多个金融文件;
完整检测模块540,用于检测每一个所述金融文件是否完整;
白名单判断模块550,用于对完整的所述金融文件进行文件匹配规则检测,当所述金融文件满足所述文件匹配规则时,判断满足所述文件匹配规则的所述金融文件是否属于白名单;
解密模块560,用于在所述金融文件不属于白名单,且所述金融文件配置解密时,对所述金融文件进行解密;
转加密模块570,用于在解密成功后,对解密后的所述金融文件进行转加密;
文件保存模块580,用于将转加密后的所述金融文件保存至所述高安区服务器中。
在一个实施例中,还包括:
连接建立模块,用于发送连接请求指令至接收终端,根据所述连接请求指令与所述接收终端建立连接。
在一个实施例中,还包括:
转加密模块,还用于在所述金融文件属于白名单时,对所述金融文件进行转加密;
文件保存模块,还用于将转加密后的所述金融文件保存至高安区服务器中。
在一个实施例中,完整检测模块,还用于通过对所述金融文件的校验码进行校验来确定所述金融文件是否完整。
在一个实施例中,扫描请求指令发送模块,还用于在所述金融文件列表中的金融文件未更新完毕时,间隔预设时间后,重新发送所述扫描请求指令至所述接收终端。
在一个实施例中,还包括:
文件删除模块,用于删除转加密后的所述金融文件和从所述接收终端获取更新完毕的任意一个或多个金融文件。
在一个实施例中,连接建立模块还包括:连接失败判定模块
连接建立模块,还用于在一次连接失败后,重新与所述接收终端建立连接;
连接失败判定模块,用于当重新连接次数大于最大预设值时,判定连接失败。
关于金融文件监听装置的具体限定可以参见上文中对于方法的限定,在此不再赘述。上述装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于终端设备中的处理器中,也可以以软件形式存储于终端设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
请参考图1,图1其示出了本申请实施例提供的一种金融文件监听系统的结构框图。包括:依次连接的客户端、接收终端、主机和高安区服务器;其中客户端、接收终端、主机和高安区服务器的数量可以是一个或多个;接收终端用于从客户端接收或获取金融文件;高安全服务器用于存储主机发送的转加密后的金融文件;主机用于执行上述金融文件监听方法实施例中所描述的方法。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端设备的限定,具体的终端设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
综上,本申请实施例提供的金融文件监听系统用于实现前述方法实施例中相应的金融文件监听方法,并具有相应的方法实施例的有益效果,在此不再赘述。
请参阅图6,其示出了本申请实施例提供的一种计算机可读取存储介质的结构框图。该计算机可读取存储介质60中存储有程序代码,程序代码可被处理器调用执行上述金融文件监听方法实施例中所描述的方法,也可以被处理器调用执行上述金融文件监听方法实施例中所描述的方法。
计算机可读取存储介质60可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读取存储介质150包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读取存储介质60具有执行上述方法中的任何方法步骤的程序代码62的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码62可以例如以适当形式进行压缩。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
- 金融文件监听方法、装置、系统和计算机可读存储介质
- 文件管理方法、装置、计算机系统和计算机可读存储介质