CN111191250B - 一种验证方法及装置、用于验证的装置、服务器和终端 - Google Patents
一种验证方法及装置、用于验证的装置、服务器和终端 Download PDFInfo
- Publication number
- CN111191250B CN111191250B CN202010271700.XA CN202010271700A CN111191250B CN 111191250 B CN111191250 B CN 111191250B CN 202010271700 A CN202010271700 A CN 202010271700A CN 111191250 B CN111191250 B CN 111191250B
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- algorithm code
- codes
- verification
- compliance
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例提供了一种验证方法及装置、用于验证的装置、服务器和终端;其中,所述的方法包括:获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;根据所述密文算法代码的运行结果,展示对应的算法代码验证结果。本发明实施例不仅能够检测出密文算法代码中语法准确但语义上泄漏数据信息的代码,还能够快速的对密文算法代码进行验证。
Description
技术领域
本发明涉及数据处理领域,特别是涉及一种验证方法及装置、用于验证的装置、服务器和终端。
背景技术
如今,互联网已经完成了从IT(Internet Technology,互联网技术)时代向DT(Data Technology,数据处理技术)时代转变;数据已经成为DT时代企业的核心竞争力。而数据作为一种新能源,只有流动起来才能产生价值。不过,大多数企业考虑到数据安全和个人隐私等问题,对数据共享都非常谨慎。为了解决数据安全问题,安全多方计算(SecureMuti-party Computation,MPC)应运而生。
MPC能够基于密文进行计算,进而能够保证各参与方隐私数据的隐私性。在MPC系统中针对密文数据的操作源码称为密文算法代码,部分编程语言是解释型语言,非编译型语言,因此有些错误(如变量名拼写错误)在运行时才能发现;因此现有技术通过运行密文算法代码进行运算,实现对密文算法代码的验证。如果错误发生在程序的末端,由于运行密文算法代码进行运算执行的是密文操作,可能需要运行了很长时间的密文算法代码才会发现错误;当密文算法代码很复杂时,密文算法代码的验证效率会很低。
此外,密文算法代码不同于基于明文的运算,其不但要保证语法准确,还要保证数据信息的安全,因此,一些明文运算不能直接用于密文算法代码中,那么明文算法代码的验证方法无法适用于密文算法代码。
因此,需要研发出针对密文算法代码的验证方案。
发明内容
本发明实施例提供一种验证方法,以在提高密文算法代码的验证效率的同时,检测密文算法代码的合规性。
相应的,本发明实施例还提供了一种验证装置、用于验证的装置、服务器和终端,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种验证方法,具体包括:获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;根据所述密文算法代码的运行结果,展示对应的算法代码验证结果。
可选地,在所述对所述密文算法代码进行合规性检测之后,所述的方法还包括:若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并展示。
可选地,所述对所述密文算法代码进行合规性检测,包括:生成所述密文算法代码对应的抽象语法树,所述抽象语法树包括多个节点,所述节点包括算术运算节点;以及识别出所述密文算法代码所包含的全部变量,并确定所述密文算法代码中各变量对应的类型信息;遍历所述密文算法代码对应的抽象语法树,从所述抽象语法树的算术运算节点中查找待进行合规性检测的目标算术运算节点;依次判断各目标算术运算节点是否满足预设的合规性检测条件。
可选地,所述类型信息包括:密文类型和明文类型,所述确定所述密文算法代码中各变量对应的类型信息,包括:遍历所述抽象语法树,查找所述密文算法代码中通过执行特定接口进行赋值的预设变量,并将所述预设变量的类型信息确定为密文类型;以及根据密文计算特性和预设变量的类型信息,推导所述抽象语法树中其他变量的类型信息,其中,所述其他变量为密文算法代码中除预设变量之外的变量。
可选地,所述根据密文计算特性和预设变量的类型信息,推导所述语法树中其他变量的类型信息,包括:针对每个算术运算节点,确定参与所述算术运算节点对应算术运算的参与对象,以及确定经过所述算术运算节点进行算术运算得到的运算结果对应的结果变量;若所述算术运算节点的参与对象中,存在至少一个对应类型信息为密文类型的参与对象,则确定所述算术运算节点的结果变量对应的类型信息为密文类型。
可选地,所述预设的合规性检测条件包括:参与对象对应的预设类型信息;所述依次判断各目标算术运算节点是否满足预设的合规性检测条件,包括:针对每个目标算术运算节点,确定参与所述目标算术运算节点对应算术运算的目标参与对象,以及确定所述目标参与对象对应的类型信息;通过将所述目标参与对象的类型信息与所述合规性检测条件中参与对象对应的预设类型信息进行比对,判断所述目标算术运算节点是否满足预设的合规性检测条件。
可选地,所述根据所述密文算法代码的运行结果,展示对应的算法代码验证结果,包括:当密文算法代码运行错误时,停止运行所述密文算法代码,以及生成对应的验证错误信息并展示。
可选地,所述根据所述密文算法代码的运行结果,展示对应的算法代码验证结果,包括:当密文算法代码正常运行结束后,展示所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果。
本发明实施例还公开了一种验证装置,具体包括:第一数据获取模块,用于获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;第一合规性检测模块,用于对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;第一代码验证模块,用于若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;第一验证结果展示模块,用于根据所述密文算法代码的运行结果,展示对应的算法代码验证结果。
可选地,所述的装置还包括:第一合规性结果展示模块,用于在所述对所述密文算法代码进行合规性检测之后,若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并展示。
可选地,所述第一合规性检测模块,包括:抽象语法树生成子模块,用于生成所述密文算法代码对应的抽象语法树,所述抽象语法树包括多个节点,所述节点包括算术运算节点;类型确定子模块,用于识别出所述密文算法代码所包含的全部变量,并确定所述密文算法代码中各变量对应的类型信息;节点查找子模块,用于遍历所述密文算法代码对应的抽象语法树,从所述抽象语法树的算术运算节点中查找待进行合规性检测的目标算术运算节点;合规性判断子模块,用于依次判断各目标算术运算节点是否满足预设的合规性检测条件。
可选地,所述类型信息包括:密文类型和明文类型,所述类型确定子模块,包括:预设变量类型确定单元,用于遍历所述抽象语法树,查找所述密文算法代码中通过执行特定接口进行赋值的预设变量,并将所述预设变量的类型信息确定为密文类型;其他变量类型推导单元,用于根据密文计算特性和预设变量的类型信息,推导所述抽象语法树中其他变量的类型信息,其中,所述其他变量为密文算法代码中除预设变量之外的变量。
可选地,所述其他变量类型推导单元,具体用于针对每个算术运算节点,确定参与所述算术运算节点对应算术运算的参与对象,以及确定经过所述算术运算节点进行算术运算得到的运算结果对应的结果变量;若所述算术运算节点的参与对象中,存在至少一个对应类型信息为密文类型的参与对象,则确定所述算术运算节点的结果变量对应的类型信息为密文类型。
可选地,所述预设的合规性检测条件包括:参与对象对应的预设类型信息;所述合规性判断子模块,具体用于针对每个目标算术运算节点,确定参与所述目标算术运算节点对应算术运算的目标参与对象,以及确定所述目标参与对象对应的类型信息;通过将所述目标参与对象的类型信息与所述合规性检测条件中参与对象对应的预设类型信息进行比对,判断所述目标算术运算节点是否满足预设的合规性检测条件。
可选地,所述第一验证结果展示模块,包括:验证错误信息展示子模块,用于当密文算法代码运行错误时,停止运行所述密文算法代码,以及生成对应的验证错误信息并展示。
可选地,所述第一验证结果展示模块,包括:运算结果展示子模块,用于当密文算法代码正常运行结束后,展示所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果。
本发明实施例还提供了一种用于验证的装置,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述用于验证的装置执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还公开了一种可读存储介质,当所述存储介质中的指令由用于验证的装置的处理器执行时,使得用于验证的装置能够执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还提供了一种验证方法,包括:服务器接收客户端发送的验证指令,所述验证指令由客户端根据用户在客户端的验证界面中针对密文算法代码触发的验证请求生成;依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回至所述客户端,以使所述客户端展示所述算法代码验证结果。
可选地,在所述对所述密文算法代码进行合规性检测之后,所述的方法还包括:若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并返回至所述客户端,以使所述客户端展示所述合规性检测结果。
本发明实施例还提供一种验证装置,应用于服务器中,所述的装置包括:指令接收模块,用于接收客户端发送的验证指令,所述验证指令由客户端根据用户在客户端的验证界面中针对密文算法代码触发的验证请求生成;第二数据获取模块,用于依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;第二合规性检测模块,用对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;第二代码验证模块,用于若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;验证结果返回模块,用于根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回至所述客户端,以使所述客户端展示所述算法代码验证结果。
可选地,所述的装置还包括:合规性结果返回模块,用于在所述对所述密文算法代码进行合规性检测之后,若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并返回至所述客户端,以使所述客户端展示所述合规性检测结果。
本发明实施例还提供了一种服务器,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述服务器执行如上述本发明实施例中一个或多个所述的验证方法。
本发明实施例还公开了一种可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还提供了一种验证方法,所述的方法包括:当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;依据所述目标数据生成验证指令,并将所述验证指令发送至服务器,以使所述服务器依据所述验证指令获取用于进行密文算法代码验证的目标数据;对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;以及根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回,其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;接收所述服务器返回的所述算法代码验证结果并展示。
可选地,所述的方法还包括:接收所述服务器返回的合规性检测结果并展示,其中,所述合规性检测结果是所述服务器确定所述密文算法代码未通过所述合规性检测时生成的。
可选地,所述验证界面包括:计算数据编辑项、输入变量名编辑项、输出变量名编辑项和密文算法代码编辑项。
本发明实施例还提供了一种验证装置,应用于客户端,所述的装置包括:
第三数据获取模块,用于当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;指令发送模块,用于依据所述目标数据生成验证指令,并将所述验证指令发送至服务器,以使所述服务器依据所述验证指令获取用于进行密文算法代码验证的目标数据;对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;以及根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回,其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;第二验证结果展示模块,用于接收所述服务器返回的所述算法代码验证结果并展示。
可选地,所述的装置还包括:第二合规性结果展示模块,用于接收所述服务器返回的合规性检测结果并展示,其中,所述合规性检测结果是所述服务器确定所述密文算法代码未通过所述合规性检测时生成的。
可选地,所述验证界面包括:计算数据编辑项、输入变量名编辑项、输出变量名编辑项和密文算法代码编辑项。
本发明实施例还提供了一种终端,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述终端执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还提供了一种可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行如本发明实施例中一个或多个所述的验证方法。
与现有技术相比,本发明实施例包括以下优点:
本发明实施例中,可以获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;然后先对所述密文算法代码进行合规性检测;所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;进而能够检测出密文算法代码中语法准确但语义上泄漏数据信息的代码。在确定所述密文算法代码的合规性检测通过时,再运行所述密文算法代码对所述计算数据进行对应的明文计算;由于明文计算的复杂度远低于密文计算的复杂度,因此相对于现有技术通过运行所述密文算法代码进行运算来对密文算法代码进行验证而言,本发明实施例运行密文算法代码的速度更快,能够快速的对密文算法代码进行验证。然后根据所述密文算法代码的运行结果,展示对应的算法代码验证结果,以便告知用户对密文算法代码的验证结果。
附图说明
图1是本发明的一种验证方法实施例的步骤流程图;
图2是本发明的一种验证方法可选实施例的步骤流程图;
图3是本发明的一种客户端侧验证方法实施例的步骤流程图;
图4是本发明实施例中的一种客户端的验证界面的示意图;
图5是本发明的一种服务器侧验证方法实施例的步骤流程图;
图6是本发明的又一种验证方法可选实施例的步骤流程图;
图7是本发明实施例的一种展示算法代码验证结果界面的示意图;
图8是本发明的一种验证装置实施例的结构框图;
图9是本发明的一种验证装置可选实施例的结构框图;
图10是本发明的一种服务器侧验证装置实施例的结构框图;
图11是本发明的一种服务器侧验证装置可选实施例的结构框图;
图12是本发明的一种客户端侧验证装置实施例的结构框图;
图13是本发明的一种客户端侧验证装置可选实施例的结构框图;
图14示意性地示出了用于执行根据本发明的方法的用于验证的装置的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种验证方法实施例的步骤流程图,具体可以包括如下步骤:
步骤102、获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据。
本发明实施例中,当需要对密文算法代码进行验证时,可以获取验证该密文算法代码所需的目标数据。其中,所述目标数据可以包括密文算法代码和密文算法代码对应的计算数据;当然所述目标数据还可以包括其他数据,如计算数据在密文算法代码中对应的输入变量名等,本发明实施例对此不作限制。
步骤104、对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码。
步骤106、若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算。
步骤108、根据所述密文算法代码的运行结果,展示对应的算法代码验证结果。
由于密文运算可支持明密文混合运算,若密文算法代码中运用了明文运算中的某些运算符,例如密文算法代码中运用了比较运算符(如>、<、==等,)进行明文与密文比较;则用户根据返回的结果,就可以知道密文数据对应的明文数据间的大小关系;导致密文对应的数据信息的泄露。因此需要在密文算法代码中杜绝这类运算的代码,以保证数据安全。然而这些会泄露数据信息的代码语法上是准确的,导致通过运行密文算法代码是无法检测出这些代码的问题。其中,为了便于后续说明可以将语法准确但语义上泄漏数据信息的代码,称为不合规代码。
因此本发明在运行密文算法代码之前,可以对所述密文算法代码进行合规性检测,以检测所述密文算法代码中是否存在不合规代码。当在密文算法代码中未检测出不合规代码时,可以确定密文算法代码通过合规性检测;此时可以运行所述密文算法代码,对所述密文算法代码进行验证。本发明实施例中,运行所述密文算法代码,对密文算法代码进行验证,与运行所述密文算法代码进行运算不同;运行所述密文算法代码进行运算是指运行所述密文算法代码对计算数据进行对应的密文计算,而运行所述密文算法代码,对密文算法代码进行验证,是指运行所述密文算法代码对所述计算数据进行对应的明文计算。由于明文计算的复杂度远低于密文计算的复杂度,因此相对于现有技术中通过运行所述密文算法代码进行运算来对密文算法代码进行验证而言,本发明实施例运行密文算法代码的速度更快,能够快速的对密文算法代码进行验证。
综上,本发明实施例中,可以获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;然后先对所述密文算法代码进行合规性检测;所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;进而能够检测出密文算法代码中语法准确但语义上泄漏数据信息的代码。在确定所述密文算法代码的合规性检测通过时,再运行所述密文算法代码对所述计算数据进行对应的明文计算;由于明文计算的复杂度远低于密文计算的复杂度,因此相对于现有技术通过运行所述密文算法代码进行运算来对密文算法代码进行验证而言,本发明实施例运行密文算法代码的速度更快,能够快速的对密文算法代码进行验证。然后根据所述密文算法代码的运行结果,展示对应的算法代码验证结果,以便告知用户对密文算法代码的验证结果。
以下对如何对所述密文算法代码进行合规性检测进行说明。
参照图2,示出了本发明的一种验证方法可选实施例的步骤流程图。
步骤202、获取验证密文算法代码所需的目标数据。
本发明实施例中,所述目标数据可以包括:密文算法代码,密文算法代码对应的计算数据,计算数据在所述密文算法代码中的输入变量名和所述密文算法代码对所述计算数据进行运算后得到的运算结果对应的输出变量名。
其中,所述输入变量名可以用于密文算法代码的合规性检测,以及还可以用于运行密文算法代码时根据所述输入变量名获取对应的计算数据。所述输出变量名可以用于确定密文算法代码正常运行结束后输出的运算结果。
然后可以对所述密文算法代码进行合规性检测,可以参照步骤204-步骤210:
步骤204、生成所述密文算法代码对应的抽象语法树,所述抽象语法树包括多个节点,所述节点包括算术运算节点。
步骤206、识别出所述密文算法代码所包含的全部变量,并确定所述密文算法代码中各变量对应的类型信息。
本发明的一个示例中,可以使用AST(Abstract Syntax Tree,抽象语法树)模块,生成所述密文算法代码的抽象语法树;其中,所述抽象语法树能够表现密文算法代码的语法结构。其中,所述抽象语法树可以包括多个节点,所述节点可以包括变量节点、算术运算节点和数值节点;所述变量节点可以与密文算法代码中的变量对应,所述算术运算节点可以与密文算法代码中的算术运算操作对应,所述数值节点可以与密文算法代码中的数值对应。其中,密文算法代码中的变量和数值均存在对应的类型信息;所述类型信息可以包括明文类型和密文类型。
然后可以通过识别出抽象语法树中的变量节点,识别出所述密文算法代码所包含的全部变量;以及确定所述密文算法代码中各变量对应的类型信息。其中,可以参照如下子步骤22-子步骤24,确定所述密文算法代码中各变量对应的类型信息。
子步骤22、遍历所述抽象语法树,查找所述密文算法代码中通过执行特定接口进行赋值的预设变量,并将所述预设变量的类型信息确定为密文类型。
子步骤24、根据密文计算特性和预设变量的类型信息,推导所述抽象语法树中其他变量的类型信息。
本发明实施例中,一段密文算法代码中可以首先定义部分变量,并使用特定接口为这些变量赋值;所述特定接口可以是指用于将变量的输入赋值为明文数据,输出赋值为密文数据。进而通过特定接口进行赋值的变量对应的类型信息即为密文类型。
因此本发明实施例中,可以将所述密文算法代码中通过执行特定接口进行赋值的变量称为预设变量,然后可以遍历所述抽象语法树,查找出所述密文算法代码中所包含的预设变量;再将密文算法代码中预设变量的类型信息确定为密文类型。其中,可以将抽象语法树中与目标数据中输入变量名对应的变量,确定为预设变量。然后再依据所述预设变量的类型信息,推导出抽象语法树中其他变量对应的类型信息;其中,所述其他变量可以是指密文算法代码中除预设变量之外的变量。
本发明实施例中,密文运算存在对应的密文计算特性,如有密文类型的对象参与的算术运算得到的结果对应的类型信息也是密文类型。进而可以依据根据密文计算特性和预设变量的类型信息,推导所述抽象语法树中其他变量的类型信息,可参照如下子步骤42-子步骤46:
子步骤42、针对每个算术运算节点,确定参与所述算术运算节点对应算术运算的参与对象,以及确定经过所述算术运算节点进行算术运算得到的运算结果对应的结果变量。
子步骤44、若所述算术运算节点的参与节点中,存在至少一个对应类型信息为密文类型的参与对象,则确定所述结果变量对应的类型信息为密文类型。
子步骤46、若所述算术运算节点的参与对象中,不存在对应类型信息为密文类型的参与对象,则确定所述结果变量对应的类型信息为明文类型。
本发明实施例中,可以从预设变量对应的变量节点开始,遍历所述抽象语法树中的算术运算节点;针对每个遍历到的每个算术运算节点,可以确定参与该算术运算节点对应算术运算的参与节点;其中,所述参与节点包括变量节点和数值节点。并确定各参与节点对应的参与对象,所述参与对象可以包括变量和数值。以及可以确定经过所述算术运算节点进行算术运算得到的运算结果对应的变量节点,并将该变量节点对应的变量称为结果变量。然后判断该算术运算节点的参与对象中,是否存在对应类型信息为密文类型的参与对象。若该算术运算节点的参与对象中,存在至少一个对应类型信息为密文类型的参与对象,则根据密文计算特性,可以确定该算术运算节点对应的结果变量的类型信息为密文类型。若该算术运算节点的参与对象中,不存在对应类型信息为密文类型的参与对象,则根据密文计算特性,可以确定该算术运算节点对应的结果变量的类型信息为明文类型。
其中,当参与节点为变量节点时,所述参与节点对应的类型信息为该参与节点对应变量的类型信息。当参与节点为数值节点时,所述参与节点对应的类型信息为该参与节点对应数值的类型信息。
步骤208、遍历所述密文算法代码对应的抽象语法树,从所述抽象语法树的算术运算节点中查找待进行合规性检测的目标算术运算节点。
步骤210、依次判断各目标算术运算节点是否满足预设的合规性检测条件。
本发明实施例中,可以预先根据运算结果是否会泄露参与运算的密文对应的明文,来设定合规性检测规则。例如:不能使用密文和明文进行比较运算等;本发明实施例对此不作限制。然后再根据合规性检测规则,设置合规性检测条件;其中,所述合规性检测条件可以包括:算术运算操作和对应参与对象的预设类型信息。例如:合规性检测规则为:不能使用密文和明文进行比较运算;可以设置对应的合规性检测条件为:“算术运算操作:比较运算操作,参与对象的预设类型信息:参与对象的预设类型信息均为密文类型或均为明文类型”。
进而可以根据预先设置的合规性检测条件,遍历所述密文算法代码对应的抽象语法树,从抽象语法树的算术运算节点中,查找出待进行合规性检测的目标算术运算节点;然后通过依次判断各目标算术运算节点是否满足预设的合规性检测条件,来判断所述密文算法代码的合规性检测是否通过。
其中,可以确定所述抽象语法树中各算术运算节点对应的算术运算操作,然后分别将抽象语法树中各算术运算节点对应的算术运算操作,与合规性检测条件中的算术运算操作进行比对;将对应算法运算操作与合规性检测条件中的算术运算操作匹配的算术运算节点,确定为待进行合规性检测的目标算术运算节点。也就是说,所述目标算术运算节点可以是指对应算术运算操作符合合规性检测条件中的算术运算操作的节点。例如,合规性检测条件为:“算术运算操作:比较运算操作,参与对象的预设类型信息:参与对象的预设类型信息均为密文类型或均为明文类型”;则可以遍历所述密文算法代码对应的抽象语法树,查找出所述抽象语法树中,对应算术运算操作为比较运算操作的算术运算节点,将这些算术运算节点确定为待进行合规性检测的目标算术运算节点。
当存在不满足预设的合规性检测条件的目标算术运算节点时,可以确定所述密文算法代码未通过所述合规性检测,可以执行步骤212。当各目标算术运算节点均满足预设的合规性检测条件时,可以确定所述密文算法代码通过所述合规性检测,可以执行步骤214。
本发明实施例中,一种依次判断各目标算术运算节点是否满足预设的合规性检测条件的方式,可以参照如下子步骤62-子步骤64:
子步骤62、针对每个目标算术运算节点,确定参与所述目标算术运算节点对应算术运算的目标参与对象,以及确定所述目标参与对象对应的类型信息。
子步骤64、通过将所述目标参与对象的类型信息与所述合规性检测条件中参与对象对应的预设类型信息进行比对,判断所述目标算术运算节点是否满足预设的合规性检测条件。
其中,所述目标参与对象包括变量和数值。
若所述目标参与对象的类型信息与所述合规性检测条件中参与对象对应的预设类型信息匹配,则确定所述目标算术运算节点满足预设的合规性检测条件。若所述目标参与对象的类型信息与所述合规性检测条件中参与对象对应的预设类型信息不匹配,则确定所述目标算术运算节点不满足预设的合规性检测条件。
例如,目标算术运算节点对应的算术运算操作为:比较运算操作;合规性检测条件包括:“算术运算操作:比较运算操作,参与对象的预设类型信息:参与对象的预设类型信息均为密文类型或均为明文类型”。若目标算术运算节点对应目标参与对象为三个,对应的类型信息分别为:明文类型、密文类型和明文类型;则这与合规性检测条件中参与对象的预设类型信息不匹配,可以确定所述目标算术运算节点不满足预设的合规性检测条件。若目标算术运算节点对应目标参与对象为三个,对应的类型信息均为:密文类型;则这与合规性检测条件中参与对象的预设类型信息匹配,可以确定所述目标算术运算节点满足预设的合规性检测条件。
步骤212、若存在不满足预设的合规性检测条件的目标算术运算节点,则生成合规性检测结果并展示。
本发明实施例中,在每次确定目标算术运算节点不满足合规性检测条件时,均可以记录该不满足合规性检测条件的目标算术运算节点对应的算法代码和对应的位置信息。在判断完全部目标算术运算节点是否满足预设的合规性检测条件后,采用记录的所有不满足合规性检测条件的目标算术运算节点对应的算法代码和对应的位置信息,生成合规性检测结果并展示给用户。便于用户根据合规性检测结果,快速定位密文算法代码中的不合规代码。
步骤214、若各目标算术运算节点均满足预设的合规性检测条件,运行所述密文算法代码对所述计算数据进行对应的明文计算。
步骤216、当密文算法代码运行错误时,停止运行所述密文算法代码,以及生成对应的验证错误信息并展示。
步骤218、当密文算法代码正常运行结束后,展示所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果。
本发明实施例中,若各目标算术运算节点均满足预设的合规性检测条件,则确定所述密文算法代码通过所述合规性检测,此时可以运行所述密文算法代码对所述计算数据进行对应的明文计算,实现对密文算法代码的验证。
本发明实施例运行所述密文算法代码进行密文算法代码验证与运行所述密文算法代码进行运算,两者上层的接口层、封装层提供的接口是相同的,只有底层处理层不一样。运行所述密文算法代码进行密文算法代码验证的底层处理层是对计算数据进行明文计算,运行所述密文算法代码进行运算的底层处理层是对计算数据进行密文计算。
本发明实施例中,当在运行密文算法代码过程中遇到错误时,说明密文算法代码中存在语法错误的代码,此时一方面,可以停止运行所述密文算法代码。另一方面可以记录语法错误的代码和对应的位置信息,并确定该语法出现语法错误的代码的错误原因;然后依据该语法错误的代码和对应的位置信息,以及对应的错误原因,生成对应的验证错误信息并展示给用户。在密文算法代码正常运行结束后,可以确定目标数据中输出变量名对应的数值,将输出变量名对应的数值作为运算结果展示给用户。
综上,本发明实施例中,在确定所述密文算法代码未通过所述合规性检测时,生成合规性检测结果并展示,以通知用户密文算法代码中存在不合规代码,便于用户对密文算法代码进行完善。
其次,本发明实施例中,当密文算法代码运行错误时,停止运行所述密文算法代码,以及生成对应的验证错误信息并展示;以通知用户密文算法代码验证失败,便于用户对密文算法代码进行修改。以及当密文算法代码正常运行结束后,展示所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果,以通知用户密文算法代码验证成功,便于用户后续采用该密文算法代码进行密文运算。
进一步,本发明实施例中,在对所述密文算法代码进行合规性检测的过程中,可以生成所述密文算法代码对应的抽象语法树,所述抽象语法树包括多个节点,所述节点包括算术运算节点;以及识别出所述密文算法代码所包含的全部变量名,并确定所述密文算法代码中各变量名对应的类型信息;然后遍历所述密文算法代码对应的抽象语法树,从所述抽象语法树的算术运算节点中查找待进行合规性检测的目标算术运算节点,并依次判断各目标算术运算节点是否满足预设的合规性检测条件;进而能够快速的检测出密文算法代码中不合规代码,提高合规性检测的效率。
再次,本发明实施例中,在确定所述密文算法代码中变量名对应的类型信息的过程中,可以遍历所述抽象语法树,查找所述密文算法代码中通过执行特定接口进行赋值的预设变量,并将所述预设变量的类型信息确定为密文类型;以及根据密文计算特性和预设变量的类型信息,推导所述抽象语法树中其他变量的类型信息,其中,所述其他变量为密文算法代码中除预设变量之外的变量;进而能够提高确定所述密文算法代码中变量名对应的类型信息的准确性,进一步提高合规性检测的准确性。
本发明实施例所述的验证方法可以应用于研发测试环境;所述目标数据中的计算数据可以是研发人员预先准备的测试数据。
本发明的一个实施例中,可以提供一任务调度管理平台实现上述实施例中的验证方法。其中,所述任务调度管理平台包括服务器和客户端,用户可以在客户端中输入密文算法代码并触发验证,然后由服务器完成对用户输入的密文算法代码进行验证。以下分别从服务器侧和客户端侧进行说明。
参照图3,示出了本发明的一种客户端侧验证方法实施例的步骤流程图。
步骤302、当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据。
步骤304、依据所述目标数据生成验证指令,并将所述验证指令发送至服务器,以使所述服务器依据所述验证指令获取用于进行密文算法代码验证的目标数据;对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;以及根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回,其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码。
本发明实施例中,客户端可以提供验证界面供用户对密文算法代码进行验证。其中,所述验证界面可以包括:计算数据编辑项、输入变量名编辑项、输出变量名编辑项和密文算法代码编辑项;当然还可以包括其他信息如验证选项,等等,本发明实施例对此不作限制。
作为本发明实施例的一个示例,可参照图4,示出了本发明实施例中的一种客户端的验证界面的示意图。其中,图4中的W1包括:计算数据编辑项和输入变量名编辑项,W2对应为输出变量名编辑项,W3对应为密文算法代码编辑项,W4对应为验证选项。其中,用户可以在W1中输入计算数据所在数据集的数据集名称,以及所述计算数据在该数据集中的key名称;其中,数据集名称和数据集中的key名称,可以用于唯一标识数据。
当用户需要对密文算法代码进行验证时,可以在验证界面的计算数据编辑项中,编辑计算数据;在输入变量名编辑项中,编辑计算数据在密文算法代码中对应的输入变量名;在输出变量名编辑项中,编辑所述密文算法代码对所述计算数据进行运算后得到的运算结果对应的输出变量名;以及在所述密文算法代码编辑项中,编辑所需进行验证的密文算法代码。然后可以执行验证操作,如点击图4的W4中“提交”,以对输入至验证界面中的密文算法代码进行验证。
对应的,客户端可以接收到用户在验证界面中针对密文算法代码触发的验证请求,然后获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,并依据所述目标数据生成验证指令;再将所述验证指令发送至服务器,由服务器进行密文算法代码的验证。服务器接收到验证指令后,可以依据所述验证指令获取用于进行密文算法代码验证的目标数据;然后对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;这与上述步骤102-步骤106类似,在此不再赘述。然后根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并返回至客户端。
步骤306、接收所述服务器返回的所述算法代码验证结果并展示。
客户端接收所述服务器返回的所述算法代码验证结果后,可以将所述算法代码验证结果作为所述验证请求的响应消息,展示给用户。
综上,本发明实施例中,客户端提供有验证界面,用户可以在验证界面中触发针对密文算法代码的验证请求;当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,并依据所述目标数据生成验证指令,然后将所述验证指令发送至服务器。所述服务器可以依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;以及根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回;然后客户端可以接收所述服务器返回的所述算法代码验证结果并展示。进而能够便于用户在客户端的验证界面中,对所需验证的密文算法代码进行快速的验证。其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;进而便于用户检测出所需验证的密文算法代码中语法正确但会泄露数据信息的代码。
参照图5,示出了本发明的一种服务器侧验证方法实施例的步骤流程图。
步骤502、服务器接收客户端发送的验证指令,所述验证指令由客户端根据用户在客户端的验证界面中针对密文算法代码触发的验证请求生成。
步骤504、依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据。
本发明实施例中,待客户端检测到用户在客户端的验证界面中针对密文算法代码触发的验证请求后,可以生成验证指令并发送至服务器。其中,所述验证指令是客户端根据用户在验证界面中获取的目标数据生成;因此服务器在接收到客户端发送的验证指令后,从验证指令中获取目标数据;所述目标数据包括密文算法代码和密文算法代码对应的计算数据。然后可以按照步骤506-步骤508,对目标数据中的密文算法代码进行验证。
步骤506、对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码。
步骤508、若所述密文算法代码通过合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算。
其中,本步骤506-步骤508,与上述步骤104-步骤106类似,在此不再赘述。
步骤510、根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回至所述客户端,以使所述客户端展示所述算法代码验证结果。
本发明实施例中,服务器在运行所述密文算法代码后,可以根据所述密文算法代码的运行结果,生成对应的算法代码验证结果。然后将所述算法代码验证结果返回至所述客户端,以使所述客户端展示所述算法代码验证结果。
综上,本发明实施例中,服务器接收客户端发送的验证指令后,可以依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;然后对所述密文算法代码进行合规性检测;其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;进而能够检测密文算法代码中语法准确但语义上泄漏数据信息的代码。然后在确定所述密文算法代码的合规性检测通过时,再运行所述密文算法代码对所述计算数据进行对应的明文计算;由于明文计算的复杂度远低于密文计算的复杂度,因此相对于现有技术中通过运行所述密文算法代码进行运算来对密文算法代码进行验证而言,本发明实施例运行密文算法代码的速度更快,能够快速的对密文算法代码进行验证。然后根据所述密文算法代码的运行结果,生成对应算法代码验证结果并返回给客户端展示,以便告知用户对密文算法代码的验证结果。
以下将客户端侧和服务器侧结合进行说明。
参照图6,示出了本发明的又一种验证方法可选实施例的步骤流程图。
步骤602、当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据。
步骤604、客户端依据所述目标数据生成验证指令,并将所述验证指令发送至服务器。
步骤606、服务器接收客户端发送的验证指令。
步骤608、服务器依据所述验证指令获取用于进行密文算法代码验证的目标数据。
步骤610、服务器对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码。
步骤612、服务器确定所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算。
步骤614、服务器根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回至所述客户端。
其中,服务器执行的步骤610-步骤614的实现方式,与上述步骤204-步骤210的实现方式类似;在此不再赘述。
其中,当密文算法代码运行错误时,停止运行所述密文算法代码,以及生成对应的验证错误信息。当密文算法代码正常运行结束后,生成所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果。
步骤616、服务器在确定所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并返回至所述客户端。
其中,步骤616与上述步骤212类似,在此不再赘述。
步骤618、客户端接收所述服务器返回的所述算法代码验证结果并展示。
其中,客户端接收到的算法代码验证结果包括:验证错误信息或运算结果。
作为本发明的一个示例,可以参照图7,示出了本发明实施例的一种展示算法代码验证结果界面的示意图。图7中展示的为算法代码验证结果。
步骤620、客户端接收所述服务器返回的合规性检测结果并展示。
综上,本发明实施例中,服务器在确定所述密文算法代码未通过所述合规性检测时,可以生成合规性检测结果;然后将所述合规性检测结果返回给客户端,由客户端对所述合规性检测结果进行展示;以通知用户密文算法代码中存在不合规代码,便于用户对密文算法代码进行完善。
其次,本发明实施例中,服务器中的密文算法代码运行错误时,可以停止运行所述密文算法代码,并生成对应的验证错误信息;然后将验证错误信息返回给客户端,由客户端对验证错误信息进行展示;以通知用户密文算法代码验证失败,便于用户对密文算法代码进行修改。服务器中的密文算法代码正常运行结束后,可以确定所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果;然后将所述运算结果返回给客户端,由客户端对运算结果进行展示;以通知用户密文算法代码验证成功,便于用户后续采用该密文算法代码进行密文运算。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图8,示出了本发明一种验证装置实施例的结构框图,具体可以包括如下模块:
第一数据获取模块802,用于获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;
第一合规性检测模块804,用于对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
第一代码验证模块806,用于若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;
第一验证结果展示模块808,用于根据所述密文算法代码的运行结果,展示对应的算法代码验证结果。
参照图9,示出了本发明一种验证装置可选实施例的结构框图。
本发明一个可选实施例中,所述的装置还包括:
第一合规性结果展示模块810,用于在所述对所述密文算法代码进行合规性检测之后,若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并展示。
本发明一个可选实施例中,所述第一合规性检测模块804,包括:
抽象语法树生成子模块8042,用于生成所述密文算法代码对应的抽象语法树,所述抽象语法树包括多个节点,所述节点包括算术运算节点;
类型确定子模块8044,用于识别出所述密文算法代码所包含的全部变量,并确定所述密文算法代码中各变量对应的类型信息;
节点查找子模块8046,用于遍历所述密文算法代码对应的抽象语法树,从所述抽象语法树的算术运算节点中查找待进行合规性检测的目标算术运算节点;
合规性判断子模块8048,用于依次判断各目标算术运算节点是否满足预设的合规性检测条件。
本发明一个可选实施例中,所述类型信息包括:密文类型和明文类型,所述类型确定子模块8044,包括:
预设变量类型确定单元80442,用于遍历所述抽象语法树,查找所述密文算法代码中通过执行特定接口进行赋值的预设变量,并将所述预设变量的类型信息确定为密文类型;
其他变量类型推导单元80444,用于根据密文计算特性和预设变量的类型信息,推导所述抽象语法树中其他变量的类型信息,其中,所述其他变量为密文算法代码中除预设变量之外的变量。
本发明一个可选实施例中,所述其他变量类型推导单元80444,具体用于针对每个算术运算节点,确定参与所述算术运算节点对应算术运算的参与对象,以及确定经过所述算术运算节点进行算术运算得到的运算结果对应的结果变量;若所述算术运算节点的参与对象中,存在至少一个对应类型信息为密文类型的参与对象,则确定所述算术运算节点的结果变量对应的类型信息为密文类型。
本发明一个可选实施例中,所述预设的合规性检测条件包括:参与对象对应的预设类型信息;所述合规性判断子模块8048,具体用于针对每个目标算术运算节点,确定参与所述目标算术运算节点对应算术运算的目标参与对象,以及确定所述目标参与对象对应的类型信息;通过将所述目标参与对象的类型信息与所述合规性检测条件中参与对象对应的预设类型信息进行比对,判断所述目标算术运算节点是否满足预设的合规性检测条件。
本发明一个可选实施例中,所述第一验证结果展示模块808,包括:
验证错误信息展示子模块8082,用于当密文算法代码运行错误时,停止运行所述密文算法代码,以及生成对应的验证错误信息并展示。
本发明一个可选实施例中,所述第一验证结果展示模块808,包括:
运算结果展示子模块8084,用于当密文算法代码正常运行结束后,展示所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果。
综上,本发明实施例中,可以获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;然后先对所述密文算法代码进行合规性检测;所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;进而能够检测出密文算法代码中语法准确但语义上泄漏数据信息的代码。在确定所述密文算法代码的合规性检测通过时,再运行所述密文算法代码对所述计算数据进行对应的明文计算;由于明文计算的复杂度远低于密文计算的复杂度,因此相对于现有技术通过运行所述密文算法代码进行运算来对密文算法代码进行验证而言,本发明实施例运行密文算法代码的速度更快,能够快速的对密文算法代码进行验证。然后根据所述密文算法代码的运行结果,展示对应的算法代码验证结果,以便告知用户对密文算法代码的验证结果。
本发明实施例还提供了一种验证装置,应用于服务器中,所述的装置包括:
参照图10,示出了本发明一种服务器侧验证装置实施例的结构框图。
指令接收模块1002,用于接收客户端发送的验证指令,所述验证指令由客户端根据用户在客户端的验证界面中针对密文算法代码触发的验证请求生成;
第二数据获取模块1004,用于依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;
第二合规性检测模块1006,用对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
第二代码验证模块1008,用于若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;
验证结果返回模块1010,用于根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回至所述客户端,以使所述客户端展示所述算法代码验证结果。
参照图11,示出了本发明一种服务器侧验证装置可选实施例的结构框图。
本发明的一个可选实施例中,所述的装置还包括:
合规性结果返回模块1012,用于在所述对所述密文算法代码进行合规性检测之后,若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并返回至所述客户端,以使所述客户端展示所述合规性检测结果。
综上,本发明实施例中,服务器接收客户端发送的验证指令后,可以依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;然后对所述密文算法代码进行合规性检测;其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;进而能够检测密文算法代码中语法准确但语义上泄漏数据信息的代码。然后在确定所述密文算法代码的合规性检测通过时,再运行所述密文算法代码对所述计算数据进行对应的明文计算;由于明文计算的复杂度远低于密文计算的复杂度,因此相对于现有技术中通过运行所述密文算法代码进行运算来对密文算法代码进行验证而言,本发明实施例运行密文算法代码的速度更快,能够快速的对密文算法代码进行验证。然后根据所述密文算法代码的运行结果,生成对应算法代码验证结果并返回给客户端展示,以便告知用户对密文算法代码的验证结果。
本发明实施例还提供了一种验证装置,应用于客户端中,所述的装置包括:
参照图12,示出了本发明一种客户端侧验证装置实施例的结构框图。
第三数据获取模块1202,用于当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;
指令发送模块1204,用于依据所述目标数据生成验证指令,并将所述验证指令发送至服务器,以使所述服务器依据所述验证指令获取用于进行密文算法代码验证的目标数据;对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;以及根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回,其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
第二验证结果展示模块1206,用于接收所述服务器返回的所述算法代码验证结果并展示。
参照图13,示出了本发明一种客户端侧验证装置可选实施例的结构框图。
本发明的一个可选实施例中,所述的装置还包括:
第二合规性结果展示模块1208,用于接收所述服务器返回的合规性检测结果并展示,其中,所述合规性检测结果是所述服务器确定所述密文算法代码未通过所述合规性检测时生成的。
本发明的一个可选实施例中,所述验证界面包括:计算数据编辑项、输入变量名编辑项、输出变量名编辑项和密文算法代码编辑项。
综上,本发明实施例中,客户端提供有验证界面,用户可以在验证界面中触发针对密文算法代码的验证请求;当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,并依据所述目标数据生成验证指令,然后将所述验证指令发送至服务器。所述服务器可以依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;以及根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回;然后客户端可以接收所述服务器返回的所述算法代码验证结果并展示。进而能够便于用户在客户端的验证界面中,对所需验证的密文算法代码进行快速的验证。其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;进而便于用户检测出所需验证的密文算法代码中语法正确但会泄露数据信息的代码。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种用于验证的装置,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述用于验证的装置执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还提供了一种服务器,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述服务器执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还提供了一种终端,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述终端执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还提供了一种可读存储介质,当所述存储介质中的指令由用于验证的装置的处理器执行时,使得用于验证的装置能够执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还提供了一种可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例还提供了一种可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行如本发明实施例中一个或多个所述的验证方法。
本发明实施例一个示例中提供了一种用于验证的装置,图14示出了可以实现根据本发明的用于验证的装置。该用于验证的装置传统上包括处理器1410和以存储器1420形式的计算机程序产品或者计算机可读介质。存储器1420可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器1420具有用于执行上述方法中的任何方法步骤的程序代码1431的存储空间1430。例如,用于程序代码的存储空间1430可以包括分别用于实现上面的方法中的各种步骤的各个程序代码1431。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为便携式或者固定存储单元。该存储单元可以具有与图14的用于验证的装置中的存储器1420类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码,即可以由例如诸如1410之类的处理器读取的代码,这些代码当由用于验证的装置运行时,导致该用于验证的装置执行上面所描述的方法中的各个步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种验证方法、一种验证装置、一种用于验证的装置、一种服务器和一种终端,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (32)
1.一种验证方法,其特征在于,包括:
获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;
对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;
根据所述密文算法代码的运行结果,展示对应的算法代码验证结果。
2.根据权利要求1所述的方法,其特征在于,在所述对所述密文算法代码进行合规性检测之后,所述的方法还包括:
若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并展示。
3.根据权利要求1所述的方法,其特征在于,所述对所述密文算法代码进行合规性检测,包括:
生成所述密文算法代码对应的抽象语法树,所述抽象语法树包括多个节点,所述节点包括算术运算节点;
以及识别出所述密文算法代码所包含的全部变量,并确定所述密文算法代码中各变量对应的类型信息;
遍历所述密文算法代码对应的抽象语法树,从所述抽象语法树的算术运算节点中查找待进行合规性检测的目标算术运算节点;
依次判断各目标算术运算节点是否满足预设的合规性检测条件。
4.根据权利要求3所述的方法,其特征在于,所述类型信息包括:密文类型和明文类型,所述确定所述密文算法代码中各变量对应的类型信息,包括:
遍历所述抽象语法树,查找所述密文算法代码中通过执行特定接口进行赋值的预设变量,并将所述预设变量的类型信息确定为密文类型;以及
根据密文计算特性和预设变量的类型信息,推导所述抽象语法树中其他变量的类型信息,其中,所述其他变量为密文算法代码中除预设变量之外的变量。
5.根据权利要求4所述的方法,其特征在于,所述根据密文计算特性和预设变量的类型信息,推导所述语法树中其他变量的类型信息,包括:
针对每个算术运算节点,确定参与所述算术运算节点对应算术运算的参与对象,以及确定经过所述算术运算节点进行算术运算得到的运算结果对应的结果变量;
若所述算术运算节点的参与对象中,存在至少一个对应类型信息为密文类型的参与对象,则确定所述算术运算节点的结果变量对应的类型信息为密文类型。
6.根据权利要求3所述的方法,其特征在于,所述预设的合规性检测条件包括:参与对象对应的预设类型信息;
所述依次判断各目标算术运算节点是否满足预设的合规性检测条件,包括:
针对每个目标算术运算节点,确定参与所述目标算术运算节点对应算术运算的目标参与对象,以及确定所述目标参与对象对应的类型信息;
通过将所述目标参与对象的类型信息与所述合规性检测条件中参与对象对应的预设类型信息进行比对,判断所述目标算术运算节点是否满足预设的合规性检测条件。
7.根据权利要求1所述的方法,其特征在于,所述根据所述密文算法代码的运行结果,展示对应的算法代码验证结果,包括:
当密文算法代码运行错误时,停止运行所述密文算法代码,以及生成对应的验证错误信息并展示。
8.根据权利要求1所述的方法,其特征在于,所述根据所述密文算法代码的运行结果,展示对应的算法代码验证结果,包括:
当密文算法代码正常运行结束后,展示所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果。
9.一种验证方法,其特征在于,包括:
服务器接收客户端发送的验证指令,所述验证指令由客户端根据用户在客户端的验证界面中针对密文算法代码触发的验证请求生成;
依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;
对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;
根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回至所述客户端,以使所述客户端展示所述算法代码验证结果。
10.根据权利要求9所述的方法,其特征在于,在所述对所述密文算法代码进行合规性检测之后,所述的方法还包括:
若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并返回至所述客户端,以使所述客户端展示所述合规性检测结果。
11.一种验证方法,其特征在于,所述的方法包括:
当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;
依据所述目标数据生成验证指令,并将所述验证指令发送至服务器,以使所述服务器依据所述验证指令获取用于进行密文算法代码验证的目标数据;对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;以及根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回,其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
接收所述服务器返回的所述算法代码验证结果并展示。
12.根据权利要求11所述的方法,其特征在于,所述的方法还包括:
接收所述服务器返回的合规性检测结果并展示,其中,所述合规性检测结果是所述服务器确定所述密文算法代码未通过所述合规性检测时生成的。
13.根据权利要求11所述的方法,其特征在于,所述验证界面包括:计算数据编辑项、输入变量名编辑项、输出变量名编辑项和密文算法代码编辑项。
14.一种验证装置,其特征在于,包括:
第一数据获取模块,用于获取验证密文算法代码所需的目标数据,所述目标数据包括:密文算法代码和密文算法代码对应的计算数据;
第一合规性检测模块,用于对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
第一代码验证模块,用于若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;
第一验证结果展示模块,用于根据所述密文算法代码的运行结果,展示对应的算法代码验证结果。
15.根据权利要求14所述的装置,其特征在于,所述的装置还包括:
第一合规性结果展示模块,用于在所述对所述密文算法代码进行合规性检测之后,若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并展示。
16.根据权利要求14所述的装置,其特征在于,所述第一合规性检测模块,包括:
抽象语法树生成子模块,用于生成所述密文算法代码对应的抽象语法树,所述抽象语法树包括多个节点,所述节点包括算术运算节点;
类型确定子模块,用于识别出所述密文算法代码所包含的全部变量,并确定所述密文算法代码中各变量对应的类型信息;
节点查找子模块,用于遍历所述密文算法代码对应的抽象语法树,从所述抽象语法树的算术运算节点中查找待进行合规性检测的目标算术运算节点;
合规性判断子模块,用于依次判断各目标算术运算节点是否满足预设的合规性检测条件。
17.根据权利要求16所述的装置,其特征在于,所述类型信息包括:密文类型和明文类型,所述类型确定子模块,包括:
预设变量类型确定单元,用于遍历所述抽象语法树,查找所述密文算法代码中通过执行特定接口进行赋值的预设变量,并将所述预设变量的类型信息确定为密文类型;
其他变量类型推导单元,用于根据密文计算特性和预设变量的类型信息,推导所述抽象语法树中其他变量的类型信息,其中,所述其他变量为密文算法代码中除预设变量之外的变量。
18.根据权利要求17所述的装置,其特征在于,
所述其他变量类型推导单元,具体用于针对每个算术运算节点,确定参与所述算术运算节点对应算术运算的参与对象,以及确定经过所述算术运算节点进行算术运算得到的运算结果对应的结果变量;若所述算术运算节点的参与对象中,存在至少一个对应类型信息为密文类型的参与对象,则确定所述算术运算节点的结果变量对应的类型信息为密文类型。
19.根据权利要求16所述的装置,其特征在于,所述预设的合规性检测条件包括:参与对象对应的预设类型信息;
所述合规性判断子模块,具体用于针对每个目标算术运算节点,确定参与所述目标算术运算节点对应算术运算的目标参与对象,以及确定所述目标参与对象对应的类型信息;通过将所述目标参与对象的类型信息与所述合规性检测条件中参与对象对应的预设类型信息进行比对,判断所述目标算术运算节点是否满足预设的合规性检测条件。
20.根据权利要求14所述的装置,其特征在于,所述第一验证结果展示模块,包括:
验证错误信息展示子模块,用于当密文算法代码运行错误时,停止运行所述密文算法代码,以及生成对应的验证错误信息并展示。
21.根据权利要求14所述的装置,其特征在于,所述第一验证结果展示模块,包括:
运算结果展示子模块,用于当密文算法代码正常运行结束后,展示所述密文算法代码对所述计算数据进行对应的明文计算得到的运算结果。
22.一种验证装置,其特征在于,应用于服务器中,所述的装置包括:
指令接收模块,用于接收客户端发送的验证指令,所述验证指令由客户端根据用户在客户端的验证界面中针对密文算法代码触发的验证请求生成;
第二数据获取模块,用于依据所述验证指令获取用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;
第二合规性检测模块,用对所述密文算法代码进行合规性检测,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
第二代码验证模块,用于若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;
验证结果返回模块,用于根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回至所述客户端,以使所述客户端展示所述算法代码验证结果。
23.根据权利要求22所述的装置,其特征在于,所述的装置还包括:
合规性结果返回模块,用于在所述对所述密文算法代码进行合规性检测之后,若所述密文算法代码未通过所述合规性检测,则生成合规性检测结果并返回至所述客户端,以使所述客户端展示所述合规性检测结果。
24.一种验证装置,其特征在于,应用于客户端,所述的装置包括:
第三数据获取模块,用于当检测到用户在验证界面中针对密文算法代码触发的验证请求后,客户端获取用户在所述验证界面中输入的用于进行密文算法代码验证的目标数据,所述目标数据包括密文算法代码和密文算法代码对应的计算数据;
指令发送模块,用于依据所述目标数据生成验证指令,并将所述验证指令发送至服务器,以使所述服务器依据所述验证指令获取用于进行密文算法代码验证的目标数据;对所述密文算法代码进行合规性检测;若所述密文算法代码通过所述合规性检测,则运行所述密文算法代码对所述计算数据进行对应的明文计算;以及根据所述密文算法代码的运行结果,生成对应的算法代码验证结果并将所述算法代码验证结果返回,其中,所述合规性检测用于检测所述密文算法代码中的不合规代码,所述不合规代码包括语法准确但语义上泄漏数据信息的代码;
第二验证结果展示模块,用于接收所述服务器返回的所述算法代码验证结果并展示。
25.根据权利要求24所述的装置,其特征在于,所述的装置还包括:
第二合规性结果展示模块,用于接收所述服务器返回的合规性检测结果并展示,其中,所述合规性检测结果是所述服务器确定所述密文算法代码未通过所述合规性检测时生成的。
26.根据权利要求24所述的装置,其特征在于,所述验证界面包括:计算数据编辑项、输入变量名编辑项、输出变量名编辑项和密文算法代码编辑项。
27.一种用于验证的装置,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述用于验证的装置执行如权利要求1-8中任一项所述的验证方法。
28.一种服务器,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述服务器执行如权利要求9-10中任一项所述的验证方法。
29.一种终端,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述终端执行如权利要求11-13中任一项所述的验证方法。
30.一种可读存储介质,其特征在于,当所述存储介质中的指令由用于验证的装置的处理器执行时,使得用于验证的装置能够执行如方法权利要求1-8中任一项所述的验证方法。
31.一种可读存储介质,其特征在于,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如方法权利要求9-10中任一项所述的验证方法。
32.一种可读存储介质,其特征在于,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行如方法权利要求11-13中任一项所述的验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010271700.XA CN111191250B (zh) | 2020-04-09 | 2020-04-09 | 一种验证方法及装置、用于验证的装置、服务器和终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010271700.XA CN111191250B (zh) | 2020-04-09 | 2020-04-09 | 一种验证方法及装置、用于验证的装置、服务器和终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111191250A CN111191250A (zh) | 2020-05-22 |
CN111191250B true CN111191250B (zh) | 2020-08-18 |
Family
ID=70710942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010271700.XA Active CN111191250B (zh) | 2020-04-09 | 2020-04-09 | 一种验证方法及装置、用于验证的装置、服务器和终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111191250B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112464174B (zh) * | 2020-10-27 | 2023-09-29 | 华控清交信息科技(北京)有限公司 | 验证多方安全计算软件的方法、装置和用于验证的装置 |
CN112486617B (zh) * | 2020-12-01 | 2023-06-02 | 华控清交信息科技(北京)有限公司 | 密文数据处理架构、方法、装置及机器可读介质 |
CN113076108B (zh) * | 2021-06-04 | 2021-08-20 | 华控清交信息科技(北京)有限公司 | 一种代码执行方法、装置和用于代码执行的装置 |
CN115544498B (zh) * | 2022-11-24 | 2023-05-23 | 华控清交信息科技(北京)有限公司 | 一种密文数据可视化监控方法、装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101577906A (zh) * | 2009-06-12 | 2009-11-11 | 大唐微电子技术有限公司 | 一种可实现机卡安全认证的智能卡及终端 |
CN102083055A (zh) * | 2009-11-27 | 2011-06-01 | 乐金电子(中国)研究开发中心有限公司 | Imei验证方法,iemi保护移动通信终端及其初始化装置 |
CN110717755A (zh) * | 2019-09-05 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 加密数据零知识校验方法、装置及介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2566098A1 (en) * | 2011-08-29 | 2013-03-06 | Thomson Licensing | Signcryption method and device and corresponding signcryption verification method and device |
CN104580205B (zh) * | 2015-01-05 | 2018-05-18 | 南京邮电大学 | 一种云计算中基于cp-abe的固定密文长度代理重加密系统和方法 |
-
2020
- 2020-04-09 CN CN202010271700.XA patent/CN111191250B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101577906A (zh) * | 2009-06-12 | 2009-11-11 | 大唐微电子技术有限公司 | 一种可实现机卡安全认证的智能卡及终端 |
CN102083055A (zh) * | 2009-11-27 | 2011-06-01 | 乐金电子(中国)研究开发中心有限公司 | Imei验证方法,iemi保护移动通信终端及其初始化装置 |
CN110717755A (zh) * | 2019-09-05 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 加密数据零知识校验方法、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111191250A (zh) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111191250B (zh) | 一种验证方法及装置、用于验证的装置、服务器和终端 | |
CN106062719B (zh) | 根据使用数据的结构化日志模式的服务度量分析 | |
CN110928772B (zh) | 一种测试方法及装置 | |
CN108427632B (zh) | 自动测试方法及装置 | |
KR102151326B1 (ko) | 데이터 처리 방법 및 장치 | |
CN106484606A (zh) | 一种代码提交方法和设备 | |
US10997249B2 (en) | Search query intent | |
US10114811B2 (en) | Methods and systems for validating multiple methods of input using a unified rule set | |
JP2019505056A (ja) | 電子決済サービス処理方法及びデバイス並びに電子決済方法及びデバイス | |
EP3381158B1 (en) | Machine learning based identification of broken network connections | |
US10169205B2 (en) | Automated system testing in a complex software environment | |
CN106681854B (zh) | 一种信息校验方法、装置及系统 | |
US9582270B2 (en) | Effective feature location in large legacy systems | |
US20210133076A1 (en) | System and method for detecting anomalies based on feature signature of task workflows | |
CN109120643B (zh) | 渗透测试方法及装置 | |
CN110088744A (zh) | 一种数据库维护方法及其系统 | |
US20160162539A1 (en) | Computer executable method of generating analysis data and apparatus performing the same and storage medium for the same | |
CN111078677B (zh) | 数据录入方法及装置 | |
US10929265B2 (en) | Optimizing automated interactions with web applications | |
CN106708897B (zh) | 一种数据仓库质量保障方法、装置和系统 | |
WO2021036681A1 (zh) | 数据验证方法、装置、计算机设备和存储介质 | |
KR20150025106A (ko) | 애플리케이션 검증결과 모니터링 서비스를 위한 검증장치, 단말장치, 시스템, 방법 및 컴퓨터로 판독 가능한 기록 매체 | |
US11200152B2 (en) | Identifying diagnosis commands from comments in an issue tracking system | |
CN111143650B (zh) | 获取页面数据的方法、装置、介质及电子设备 | |
CN111752819B (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 |