CN111917556B - 交互文件检测方法、装置、终端及存储介质 - Google Patents

交互文件检测方法、装置、终端及存储介质 Download PDF

Info

Publication number
CN111917556B
CN111917556B CN202010718760.1A CN202010718760A CN111917556B CN 111917556 B CN111917556 B CN 111917556B CN 202010718760 A CN202010718760 A CN 202010718760A CN 111917556 B CN111917556 B CN 111917556B
Authority
CN
China
Prior art keywords
file
detected
hash value
hash
calculating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010718760.1A
Other languages
English (en)
Other versions
CN111917556A (zh
Inventor
蒋海波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Securities Co Ltd
Original Assignee
Ping An Securities Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Securities Co Ltd filed Critical Ping An Securities Co Ltd
Priority to CN202010718760.1A priority Critical patent/CN111917556B/zh
Publication of CN111917556A publication Critical patent/CN111917556A/zh
Application granted granted Critical
Publication of CN111917556B publication Critical patent/CN111917556B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种交互文件检测方法,包括:基于Quartz编码设置任务,在任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;根据待检测任务确定待检测文件;调用场外交易系统的第二接口访问指定目录,检测是否存在待检测文件;若存在,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过第一散列算法计算待检测文件的第二散列值;判断第一散列值与第二散列值是否相同;若相同,校验待检测文件是否准确;若是,确定完成接收所述待检测文件,更新文件检测状态表。本发明还公开了一种交互文件检测装置、终端和计算机可读存储介质。本发明能够提高交互文件检测的效率。

Description

交互文件检测方法、装置、终端及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种交互文件检测方法、装置、终端及计算机可读存储介质。
背景技术
场外交易系统在与其他系统交互的过程中,经常存在某个机构的清算确认文件不按时发送过来,或者遗漏某个文件没有发送过来,或者发送重复的问题。当文件未接收到时,场外交易系统会频繁调用查询接口查询文件,这将占用系统大量资源,降低系统的运行效率,当接收到过多的重复文件时,也将增大系统资源的消耗。
发明内容
鉴于以上内容,有必要提供一种交互文件检测方法、装置、终端及计算机可读存储介质,可提高检测场外交易系统的交互文件的时效性,减少系统资源的消耗。
本发明提供一种交互文件检测方法,所述方法包括:
基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;
根据所述待检测任务确定待检测文件;
调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;
若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;
判断所述第一散列值与所述第二散列值是否相同;
若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;
若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。
在本发明可选实施例中,所述校验所述待检测文件是否准确之后,所述方法还包括:
若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;
通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;
第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;
通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;
若所述相似度大于预设相似度,确定所述待检测文件未更新;
若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。
在本发明可选实施例中,所述通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值,包括:
获取所述待检测文件的第一尾部数据;
通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;
在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;
通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。
在本发明可选实施例中,所述判断所述第一散列值与所述第二散列值是否相同之后,所述方法还包括:
若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;
判断所述第三散列值与所述第一散列值是否相同;
若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;
若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。
在本发明可选实施例中,所述检测所述指定目录中是否存在所述待检测文件之后,所述方法还包括:
若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。
本发明还提供一种交互文件检测装置,所述装置包括:
查询模块,用于基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;
确定模块,用于根据所述待检测任务确定待检测文件;
检测模块,用于调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;
计算模块,用于当检测到存在所述待检测文件时,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;
判断模块,用于判断所述第一散列值与所述第二散列值是否相同;
校验模块,用于若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;
更新模块,用于若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。
在本发明可选实施例中,所述装置还包括更新检测模块,所述更新检测模块用于:
若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;
通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;
第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;
通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;
若所述相似度大于预设相似度,确定所述待检测文件未更新;
若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。
在本发明可选实施例中,所述计算模块具体用于:
若检测到存在所述待检测文件,获取所述待检测文件的第一尾部数据;
通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;
在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;
通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。
在本发明可选实施例中,所述装置还包括提醒模块,所述提醒模块用于:
判断所述第一散列值与所述第二散列值是否相同之后,若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;
判断所述第三散列值与所述第一散列值是否相同;
若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;
若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。
在本发明可选实施例中,所述提醒模块还用于若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。
本发明还提供一种终端,所述终端包括存储器及处理器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令以实现任意实施例中所述的交互文件检测方法。
本发明还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现任意实施例中所述的交互文件检测方法。
由以上技术方案看出,本发明提供一种交互文件检测方法、装置、终端及计算机可读存储介质,基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;根据所述待检测任务确定待检测文件;调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;判断所述第一散列值与所述第二散列值是否相同;若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。从而能够及时地进行文件检测,以及对文件是否正确进行检测,实现了提高检测场外交易系统的交互文件的时效性,减少系统资源的消耗的目的,进一步的,通过对文件的准确性进行校验,避免了因文件异常导致的数据缺失、数据不一致等问题,减少系统故障率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明实施例提供的交互文件检测方法的流程图;
图2是本发明实施例中一种与场外交易系统进行交互的示意图;
图3是本发明实施例提供的交互文件检测装置的功能模块图;
图4是本发明实现交互文件检测方法的较佳实施例的终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,图1为本发明实施例提供的一种交互文件检测方法的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
S11,基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务。
本实例中,场外交易系统可以是基于金证的KCBP框架所构建的。
所述待检测任务包括待检测的与交互方进行交互的文件,具体的,文件的数量可以为一个或多个。
所述Quartz可以进行任务调度。具体的,Quartz包括任务调度器(Scheduler)、触发器(Trigger)、详细任务(JobDetail&Job)。
S12,根据所述待检测任务确定待检测文件。
具体的,所述根据所述待检测任务确定待检测文件包括:解析所述待检测任务,获取所述待检测任务包含的待检测文件。
S13,调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件。
本实施例中,通过调用第二接口访问指定目录所检测的待检测文件与通过第一接口获取待检测任务进而确定的待检测文件为同一文件。
例如,查询场外交易系统的第一接口,获场外交易系统返回的任务数据,通过解析该任务数据确定待检测文件为A文件,进而调用场外交易系统的第二接口访问指定目录,检测是否存在A文件。
在一可选实施例中,所述待检测文件可为非对称加密算法加密的文件。
请参见图2,图2是本发明实施例中一种与场外交易系统进行交互的示意图。
在图2中,OTC清算系统为场外交易系统的一部分,即OTC清算系统为场外交易系统的子系统。在图2中,通过OTCPLUS调用OTC清算系统的第二接口,访问指定目录,在该指定目录中查找待检测文件。
进一步,在访问指定目录之前,基于Kerberos认证协议与场外交易系统进行安全认证,包括:
向Kerberos服务的密钥分发中心申请第一请求,用建立与密钥分发中心的安全会话;
在密钥分发中心接收到申请的第一请求之后,解析第一请求中的参数,生成标识数据,并以请求指定的用户名的秘钥进行加密返回响应请求,该响应请求中包含生成的标识数据。
在接收到密钥分发中心返回的响应请求之后,解析获取标识数据,以及基于标识数据向密钥分发中心发送消息以获取场外交易系统的服务标识。
当密钥分发中心接受到该消息,并校验服务标志通过之后,生成并返回场外交易系统的交易标识。
当接收到返回的交易标识之后,将交易标识传输至场外交易系统,在接受到场外交易系统返回的认证结果之后,确定与场外交易系统建立连接。
可选的,所述检测所述指定目录中是否存在所述待检测文件之后,所述方法还包括:
若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。
在本实施例中,调用消息通知系统的接口时可以通过邮件或者短信的形式发送文件超时效提醒消息。
通过调用消息通知系统的接口发送文件超时效提醒消息,能够及时的传递文件不存在的消息,进而有利于及时获取数据,避免到清算使用数据时查询不到文件。
S14,若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值。
本实施例中,通过第一散列算法计算所述待检测文件的第一散列值包括:通过第一散列算法将待检测文件的信息摘要变换成固定长度的输出,该输出为第一散列值。
本实施例中,在第一时间时候,获取与前一次获取的文件名称相同的待检测文件,通过在不同时间计算同一名称的文件的散列值,以确定文件内容是否相同。
在本发明其他可选实施例中,可以每间隔一段时间计算一次文件的散列值。
本实施例中,所述第一时间可为预先设定的。进一步的,所述方法还包括通过待检测文件的预测大小确定所述第一时间。
例如,若检测到存在A基金公司的02文件,则通过第一散列算法计算该02文件的第一散列值,间隔10分钟之后,再次通过同样的散列算法计算待检测文件的第二散列值。
进一步的,所述通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值,包括:
获取所述待检测文件的第一尾部数据;
通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;
在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;
通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。
在本实施中,获取所述待检测文件的第一尾部数据包括:通过设置偏移量从文件的指定位置(如结尾)读取文件内容,得到第一尾部数据。
类似的,在第一时间之后通过设置偏移量从文件的指定位置(如结尾)读取文件内容,得到第二尾部数据。
在本实施例中,通过获取相同字节数的文件内容,从而可以快速的得到第一散列值和第二散列值,进而匹配第一散列值和第二散列值的大小,有利于提高比较的速度。
S15,判断所述第一散列值与所述第二散列值是否相同。
本实施例中,当第一散列值与第二散列值相同时,确定待检测文件存在且传输完毕;当第一散列值与第二散列值不相同时,确定待检测文件未传输完毕。
本实施例通过多次计算待检测文件的散列值,不仅可以确定待检测文件是否存在,还可以准确的确定地待检测晚间文件是否传输结束。
进一步的,所述判断所述第一散列值与所述第二散列值是否相同之后,所述方法还包括:
若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;
判断所述第三散列值与所述第一散列值是否相同;
若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;
若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。
由于当统一名称的文件实质内容一直不一致时,可能存在文件错误的问题,本实施例中,通过计算待检测文件的大小确定是否存在文件错误,并发送文件错误提醒。
例如,若待检测文件的大小小于第一值,确定文件损坏,发送文件错误提醒;或者,若待检测文件的大小大于第二值,确定文件传输错误,发送文件错误提醒。
S16,若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确。
在本实施例一可选实施例中,校验所述待检测文件是否准确,包括:
判断所述待检测文件的格式是否为预设格式,若是,确定所述待检测文件准确,若否,确定所述待检测文件不准确。
在本发明另一可选实施例中,校验所述待检测文件是否准确,包括:
获取所述待检测文件的文件内容;判断所述文件的目标字段的数据是否为空,或者判断所述文件的目标字段的数据是否为非法数据;若是,确定所述待检测文件不准确,若否,确定所述待检测文件准确。
S17,若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。
本实施例中,所述待检测文件检测状态表用于记录待检测文件是否存在。例如,通过0和1标识待检测文件是否存在,状态值的初始值为0,即当检测到待检测文件存在时,更新状态值为1,当没有检测到待检测文件时,保持状态值为0。
在本实施例中,所述文件状态表还可以包括待检测文件的接收时间。
进一步的,在本发明一可选实施例中,将文件件状态表保存在区块链中,从而防止待检测文件的信息被篡改。
进一步的,在本发明另一实施例中,所述校验所述待检测文件是否准确之后,所述方法还包括:
若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;
通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;
第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;
通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;
若所述相似度大于预设相似度,确定所述待检测文件未更新;
若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。
本实施例中,可以根据待检测文件的特征对待检测文件进行分片,其中,待检测文件的特征包括待检测文件的长度和/或内容类型。
通过本实施例,可以判断待检测文件是否发生变化,并且判断的准确性更高。
本实施例所提供的交互文件检测方法,基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;根据所述待检测任务确定待检测文件;调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;判断所述第一散列值与所述第二散列值是否相同;若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;若确定所述待检测文件准确,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。从而能够及时地进行文件检测,以及对文件是否正确进行检测,实现了提高检测场外交易系统的交互文件的时效性,减少系统资源的消耗的目的,进一步的,通过对文件的准确性进行校验,避免了因文件异常导致的数据缺失、数据不一致等问题,减少系统故障率。
如图3所示,图3为本发明实施例提供一种交互文件检测装置的功能模块图。交互文件检测装置20包括查询模块210、确定模块220、检测模块230、计算模块240、判断模块250、校验模块260和更新模块270。本发明所称的模块是指一种能够被终端的处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在终端的存储器中,所述终端可以是电脑、服务器、手机等电子设备。在本实施例中,关于各模块的功能将在后续的实施例中详述。
查询模块210,用于基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务。
本实例中,场外交易系统可以是基于金证的KCBP框架所构建的。
所述待检测任务包括待检测的与交互方进行交互的文件,具体的,文件的数量可以为一个或多个。
所述Quartz可以进行任务调度。具体的,Quartz包括任务调度器(Scheduler)、触发器(Trigger)、详细任务(JobDetail&Job)。
确定模块220,用于根据所述待检测任务确定待检测文件。
具体的,所述根据所述待检测任务确定待检测文件包括:解析所述待检测任务,获取所述待检测任务包含的待检测文件。
检测模块230,用于调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件。
本实施例中,通过调用第二接口访问指定目录所检测的待检测文件与通过第一接口获取待检测任务进而确定的待检测文件为同一文件。
例如,查询场外交易系统的第一接口,获场外交易系统返回的任务数据,通过解析该任务数据确定待检测文件为A文件,进而调用场外交易系统的第二接口访问指定目录,检测是否存在A文件。
在一可选实施例中,所述待检测文件可为非对称加密算法加密的文件。
请参见图2,图2是本发明实施例中一种与场外交易系统进行交互的示意图。
在图2中,OTC清算系统为场外交易系统的一部分,即OTC清算系统为场外交易系统的子系统。在图2中,通过OTCPLUS调用OTC清算系统的第二接口,访问指定目录,在该指定目录中查找待检测文件。
进一步,在访问指定目录之前,基于Kerberos认证协议与场外交易系统进行安全认证,包括:
向Kerberos服务的密钥分发中心申请第一请求,用建立与密钥分发中心的安全会话;
在密钥分发中心接收到申请的第一请求之后,解析第一请求中的参数,生成标识数据,并以请求指定的用户名的秘钥进行加密返回响应请求,该响应请求中包含生成的标识数据。
在接收到密钥分发中心返回的响应请求之后,解析获取标识数据,以及基于标识数据向密钥分发中心发送消息以获取场外交易系统的服务标识。
当密钥分发中心接受到该消息,并校验服务标志通过之后,生成并返回场外交易系统的交易标识。
当接收到返回的交易标识之后,将交易标识传输至场外交易系统,在接受到场外交易系统返回的认证结果之后,确定与场外交易系统建立连接。
可选的,所述装置还包括提醒模块,所述提醒模块用于:若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。
在本实施例中,调用消息通知系统的接口时可以通过邮件或者短信的形式发送文件超时效提醒消息。
通过调用消息通知系统的接口发送文件超时效提醒消息,能够及时的传递文件不存在的消息,进而有利于及时获取数据,避免到清算使用数据时查询不到文件。
计算模块240,用于当检测到存在所述待检测文件时,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值。
本实施例中,通过第一散列算法计算所述待检测文件的第一散列值包括:通过第一散列算法将待检测文件的信息摘要变换成固定长度的输出,该输出为第一散列值。
本实施例中,在第一时间时候,获取与前一次获取的文件名称相同的待检测文件,通过在不同时间计算同一名称的文件的散列值,以确定文件内容是否相同。
在本发明其他可选实施例中,可以每间隔一段时间计算一次文件的散列值。
本实施例中,所述第一时间可为预先设定的。进一步的,所述方法还包括通过待检测文件的预测大小确定所述第一时间。
例如,若检测到存在A基金公司的02文件,则通过第一散列算法计算该02文件的第一散列值,间隔10分钟之后,再次通过同样的散列算法计算待检测文件的第二散列值。
进一步的,所述计算模块具体用于:
获取所述待检测文件的第一尾部数据;
通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;
在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;
通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。
在本实施中,获取所述待检测文件的第一尾部数据包括:通过设置偏移量从文件的指定位置(如结尾)读取文件内容,得到第一尾部数据。
类似的,在第一时间之后通过设置偏移量从文件的指定位置(如结尾)读取文件内容,得到第二尾部数据。
在本实施例中,通过获取相同字节数的文件内容,从而可以快速的得到第一散列值和第二散列值,进而匹配第一散列值和第二散列值的大小,有利于提高比较的速度。
判断模块250,用于判断所述第一散列值与所述第二散列值是否相同。
本实施例中,当第一散列值与第二散列值相同时,确定待检测文件存在且传输完毕;当第一散列值与第二散列值不相同时,确定待检测文件未传输完毕。
本实施例通过多次计算待检测文件的散列值,不仅可以确定待检测文件是否存在,还可以准确的确定地待检测晚间文件是否传输结束。
进一步的,所述提醒模块还用于:
判断所述第一散列值与所述第二散列值是否相同之后,若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;
判断所述第三散列值与所述第一散列值是否相同;
若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;
若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。
由于当统一名称的文件实质内容一直不一致时,可能存在文件错误的问题,本实施例中,通过计算待检测文件的大小确定是否存在文件错误,并发送文件错误提醒。
例如,若待检测文件的大小小于第一值,确定文件损坏,发送文件错误提醒;或者,若待检测文件的大小大于第二值,确定文件传输错误,发送文件错误提醒。
校验模块260,用于若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确。
在本实施例一可选实施例中,校验所述待检测文件是否准确,包括:
判断所述待检测文件的格式是否为预设格式,若是,确定所述待检测文件准确,若否,确定所述待检测文件不准确。
在本发明另一可选实施例中,校验所述待检测文件是否准确,包括:
获取所述待检测文件的文件内容;判断所述文件的目标字段的数据是否为空,或者判断所述文件的目标字段的数据是否为非法数据;若是,确定所述待检测文件不准确,若否,确定所述待检测文件准确。
更新模块270,用于若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。
本实施例中,所述待检测文件检测状态表用于记录待检测文件是否存在。例如,通过0和1标识待检测文件是否存在,状态值的初始值为0,即当检测到待检测文件存在时,更新状态值为1,当没有检测到待检测文件时,保持状态值为0。
在本实施例中,所述文件状态表还可以包括待检测文件的接收时间。
进一步的,在本发明一可选实施例中,将文件件状态表保存在区块链中,从而防止待检测文件的信息被篡改。
进一步的,在本发明另一实施例中,所述装置还包括更新检测模块,所述更新检测模块用于:
若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;
通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;
第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;
通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;
若所述相似度大于预设相似度,确定所述待检测文件未更新;
若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。
本实施例中,可以根据待检测文件的特征对待检测文件进行分片,其中,待检测文件的特征包括待检测文件的长度和/或内容类型。
通过本实施例,可以判断待检测文件是否发生变化,并且判断的准确性更高。
本发明提供的所述交互文件检测装置中,查询模块基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;确定模块根据所述待检测任务确定待检测文件;检测模块调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;若检测到存在所述待检测文件,计算模块通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;判断模块判断所述第一散列值与所述第二散列值是否相同;若所述第一散列值与所述第二散列值相同,校验模块校验所述待检测文件是否准确;若确定所述待检测文件准确,更新模块确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。从而能够及时地进行文件检测,以及对文件是否正确进行检测,实现了提高检测场外交易系统的交互文件的时效性,减少系统资源的消耗的目的,进一步的,通过对文件的准确性进行校验,避免了因文件异常导致的数据缺失、数据不一致等问题,减少系统故障率。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取计算机可读存储介质中。上述软件功能模块存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。
如图4所示,是本发明实现交互文件检测方法的较佳实施例的终端3的结构示意图。在本实施例中,终端3包括至少一个发送装置31、至少一个存储器32、至少一个处理器33、至少一个接收装置34以及至少一个通信总线。其中,所述通信总线用于实现这些组件之间的连接通信。
所述终端3是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。所述终端3还可包括网络设备和/或用户设备。其中,所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
所述终端3可以是,但不限于任何一种可与用户通过键盘、触摸板或声控设备等方式进行人机交互的电子产品,例如,平板电脑、智能手机、监控设备等终端。
所述终端3所处的网络包括,但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
其中,所述接收装置34和所述发送装置31可以是有线发送端口,也可以为无线设备,例如包括天线装置,用于与其他设备进行数据通信。
所述存储器32用于存储程序代码。所述存储器32可以是集成电路中没有实物形式的具有存储功能的电路,如RAM(Random-Access Memory,随机存取存储器)、FIFO(First InFirst Out,先进先出存储器)等。或者,所述存储器32也可以是具有实物形式的存储器,如内存条、TF卡(Trans-flash Card)、智能媒体卡(smart media card)、安全数字卡(securedigital card)、快闪存储器卡(flash card)等储存设备等等。
所述处理器33可以包括一个或者多个微处理器、数字处理器。所述处理器33可调用存储器32中存储的程序代码以执行相关的功能。例如,图3中所述的各个模块是存储在所述存储器32中的程序代码,并由所述处理器33所执行,以实现一种交互文件检测方法。所述处理器33又称中央处理器(CPU,Central Processing Unit),是一块超大规模的集成电路,是运算核心(Core)和控制核心(Control Unit)。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种交互文件检测方法,其特征在于,所述方法包括:
基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;
根据所述待检测任务确定待检测文件;
调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;
若检测到存在所述待检测文件,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;
判断所述第一散列值与所述第二散列值是否相同;
若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;
若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。
2.如权利要求1所述的交互文件检测方法,其特征在于,所述校验所述待检测文件是否准确之后,所述方法还包括:
若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;
通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;
第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;
通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;
若所述相似度大于预设相似度,确定所述待检测文件未更新;
若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。
3.如权利要求1所述的交互文件检测方法,其特征在于,所述通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值,包括:
获取所述待检测文件的第一尾部数据;
通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;
在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;
通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。
4.如权利要求1至3中任一项所述的交互文件检测方法,其特征在于,所述判断所述第一散列值与所述第二散列值是否相同之后,所述方法还包括:
若所述第一散列值与所述第二散列值不相同,第三时间之后再次通过所述第一散列算法计算所述待检测文件的第三散列值;
判断所述第三散列值与所述第一散列值是否相同;
若所述第三散列值与所述第一散列值不相同,计算所述待检测文件的大小;
若所述待检测文件的大小小于第一值或者所述待检测文件的大小大于第二值,发送文件错误提醒。
5.如权利要求1至3中任一项所述的交互文件检测方法,其特征在于,所述检测所述指定目录中是否存在所述待检测文件之后,所述方法还包括:
若所述指定目录中不存在所述待检测文件,调用消息通知系统的接口发送文件超时效提醒消息。
6.一种交互文件检测装置,其特征在于,所述装置包括:
查询模块,用于基于Quartz编码设置任务,在所述任务指示的第一预设时间达到时查询场外交易系统的第一接口,获取待检测任务;
确定模块,用于根据所述待检测任务确定待检测文件;
检测模块,用于调用所述场外交易系统的第二接口访问指定目录,检测所述指定目录中是否存在所述待检测文件;
计算模块,用于当检测到存在所述待检测文件时,通过第一散列算法计算所述待检测文件的第一散列值,以及在第一时间之后通过所述第一散列算法计算所述待检测文件的第二散列值;
判断模块,用于判断所述第一散列值与所述第二散列值是否相同;
校验模块,用于若所述第一散列值与所述第二散列值相同,校验所述待检测文件是否准确;
更新模块,用于若确定所述待检测文件准确,确定完成接收所述待检测文件,更新文件检测状态表,所述文件检测状态表包括所述待检测文件的存在状态和所述待检测文件的接收时间。
7.如权利要求6所述的交互文件检测装置,其特征在于,所述装置还包括更新检测模块,所述更新检测模块用于:
若确定所述待检测文件准确,对所述待检测文件进行分片,得到第一文件数据集合,所述第一文件数据集合包括若干片文件数据;
通过哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第一特征哈希结果;
第二时间之后,再次对所述待检测文件进行分片,得到第二文件数据集合,通过所述哈希算法计算每片文件数据的哈希值,将所得到的哈希值进行汇集,得到第二特征哈希结果;
通过相似性算法计算所述第一特征哈希结果与所述第一特征哈希结果的相似度;
若所述相似度大于预设相似度,确定所述待检测文件未更新;
若所述相似度小于预设相似度,确定所述待检测文件已更新,发送文件更新消息。
8.如权利要求6所述的交互文件检测装置,其特征在于,所述计算模块具体用于:
若检测到存在所述待检测文件,获取所述待检测文件的第一尾部数据;
通过第二散列算法和所述第一尾部数据,计算所述待检测文件的第一散列值;
在第一时间之后获取所述待检测文件的第二尾部数据,所述第二尾部数据的字节数和所述第一尾部数据的字节数相同;
通过所述第二散列算法和所述第二尾部数据,计算所述待检测文件的第二散列值。
9.一种终端,其特征在于,所述终端包括存储器及处理器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令以实现如权利要求1至5中任一项所述的交互文件检测方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于:所述计算机指令被处理器执行时实现如权利要求1至5中任一项所述的交互文件检测方法。
CN202010718760.1A 2020-07-23 2020-07-23 交互文件检测方法、装置、终端及存储介质 Active CN111917556B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010718760.1A CN111917556B (zh) 2020-07-23 2020-07-23 交互文件检测方法、装置、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010718760.1A CN111917556B (zh) 2020-07-23 2020-07-23 交互文件检测方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
CN111917556A CN111917556A (zh) 2020-11-10
CN111917556B true CN111917556B (zh) 2022-02-08

Family

ID=73281942

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010718760.1A Active CN111917556B (zh) 2020-07-23 2020-07-23 交互文件检测方法、装置、终端及存储介质

Country Status (1)

Country Link
CN (1) CN111917556B (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9063947B2 (en) * 2008-08-18 2015-06-23 Hewlett-Packard Development Company, L.P. Detecting duplicative hierarchical sets of files
WO2013111187A1 (en) * 2012-01-25 2013-08-01 Hitachi, Ltd. Single instantiation method using file clone and file storage system utilizing the same
KR101960339B1 (ko) * 2014-10-21 2019-03-20 삼성에스디에스 주식회사 파일 동기화 방법
US10951395B2 (en) * 2018-08-20 2021-03-16 Fujitsu Limited Data fetching in data exchange networks

Also Published As

Publication number Publication date
CN111917556A (zh) 2020-11-10

Similar Documents

Publication Publication Date Title
CN110288479B (zh) 一种区块链数据的共识方法及相关设备
CN111556059A (zh) 异常检测方法、异常检测装置及终端设备
CN110543488B (zh) 一种验证节点更新方法、装置及设备
CN110543516A (zh) 智能合约处理方法、装置、计算机设备及存储介质
CN113038396B (zh) 短信通道的调度方法、装置、设备及存储介质
CN114826946B (zh) 未授权访问接口的检测方法、装置、设备及存储介质
CN112084486A (zh) 用户信息验证方法、装置、电子设备及存储介质
CN111488626A (zh) 基于区块链的数据处理方法、装置、设备及介质
EP2738724A1 (en) System and method for transferring electronic money
WO2022179120A1 (zh) 网关拦截方法、装置、电子设备及存储介质
CN114691617A (zh) 一种智能终端数据压缩防冗余交互方法、装置及相关组件
CN111917556B (zh) 交互文件检测方法、装置、终端及存储介质
CN112860662A (zh) 数据血缘关系建立方法、装置、计算机设备及存储介质
CN115086047B (zh) 接口鉴权方法、装置、电子设备及存储介质
CN115361450B (zh) 请求信息处理方法、装置、电子设备、介质和程序产品
CN114422586B (zh) 事件通知方法、装置、计算机设备及存储介质
CN111507594B (zh) 一种数据处理方法以及设备
CN114615325A (zh) 消息推送方法、装置、计算机设备及存储介质
CN111901299A (zh) 申请认证方法、装置、电子设备和存储介质
CN111212153A (zh) Ip地址核查方法、装置、终端设备及存储介质
CN110910091A (zh) 一种数据处理方法、设备及介质
CN110647757A (zh) 基于智能合约的数据处理方法及相关装置
CN114650252B (zh) 基于企业服务总线的路由方法、装置及计算机设备
CN112052265B (zh) 数据核对确认方法、装置、计算机设备及可读存储介质
CN110012023B (zh) 一种投毒式的防爬方法、系统、终端及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant