CN114124455A - 短信验证方法及短信验证系统 - Google Patents
短信验证方法及短信验证系统 Download PDFInfo
- Publication number
- CN114124455A CN114124455A CN202111235140.3A CN202111235140A CN114124455A CN 114124455 A CN114124455 A CN 114124455A CN 202111235140 A CN202111235140 A CN 202111235140A CN 114124455 A CN114124455 A CN 114124455A
- Authority
- CN
- China
- Prior art keywords
- verification
- local
- module
- short message
- global
- 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.)
- Granted
Links
- 238000012795 verification Methods 0.000 title claims abstract description 1212
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000013215 result calculation Methods 0.000 claims description 34
- 238000010200 validation analysis Methods 0.000 claims description 15
- 238000007781 pre-processing Methods 0.000 claims description 14
- 238000012549 training Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 2
- 239000003795 chemical substances by application Substances 0.000 description 31
- 238000010586 diagram Methods 0.000 description 14
- 230000008520 organization Effects 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 11
- 239000000284 extract Substances 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000033228 biological regulation Effects 0.000 description 2
- 230000007123 defense Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008260 defense mechanism Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- 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/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
- H04W4/14—Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了短信验证方法及短信验证系统,涉及信息技术领域。该方法包括:分布式代理模块响应于接收到的短信验证请求,将短信验证请求中包含的验证数据发送给多个局部验证模块;多个局部验证模块中的至少两个局部验证模块根据各自对应的局部验证问题,对验证数据进行局部验证,并将得到的局部验证结果发送给全局验证模块;全局验证模块根据接收到的至少两个局部验证结果,确定全局验证结果,并根据全局验证结果确定短信验证请求对应的短信验证结果。本方法能够采用多个局部验证模块对验证数据进行多方面的局部验证,再通过多个局部验证结果得到全局验证结果以对短信进行验证,从而避免因单个局部验证模块失效导致短信验证结果失去可靠性。
Description
技术领域
本发明涉及信息技术领域,具体涉及短信验证方法及短信验证系统。
背景技术
当前,用户的终端经常收到垃圾短信或受到恶意的短信攻击,因此需要对短信进行验证。在相关技术中,短信验证的方式较为单一,例如,通过设置单个验证模块验证发送短信的用户号码、基站的合法性,以验证短信是否合法,或通过限制短信发送次数以预防终端受到恶意的短信攻击,但上述方法的验证方式简单,缺乏可靠性,并且,若攻击该单个验证模块的接口,则会导致短信验证失去防御力。
发明内容
为此,本发明提供短信验证方法及短信验证系统,以解决当前短信验证的验证方式简单,缺乏可靠性,并且,若攻击该单个验证模块的接口,则会导致短信验证失去防御力的问题。
为了实现上述目的,第一方面,本发明提供一种短信验证方法,应用于短信验证系统,所述系统包括依次连接的分布式代理模块、多个局部验证模块、全局验证模块,所述方法包括:
所述分布式代理模块响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据发送给多个所述局部验证模块;
多个所述局部验证模块中的至少两个所述局部验证模块根据各自对应的局部验证问题,对所述验证数据进行局部验证,并将得到的局部验证结果发送给所述全局验证模块;
所述全局验证模块根据接收到的至少两个所述局部验证结果,确定全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果。
在一些示例中,所述分布式代理模块响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据发送给多个所述局部验证模块包括:
所述分布式代理模块响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据复制为N份,其中,N为大于1的整数,且N与多个所述局部验证模块的数量相同;
所述分布式代理模块将N份所述验证数据分发给N个所述局部验证模块。
在一些示例中,所述分布式代理模块将N份所述验证数据分发给N个所述局部验证模块包括:
所述分布式代理模块根据哈希取余法依次对第1个至第N个所述局部验证模块取余,并根据取余结果将N份所述验证数据分发给对应的所述局部验证模块。
在一些示例中,多个所述局部验证模块分为K个验证层级,每个验证层级包括至少一个局部验证模块,其中,K为大于1的整数;所述多个所述局部验证模块中的至少两个所述局部验证模块根据各自对应的局部验证问题,对所述验证数据进行局部验证包括:
第1个验证层级中的局部验证模块根据所述第1个验证层级中的局部验证模块对应的局部验证问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第一验证通过消息给第2个验证层级中的局部验证模块;
第M个验证层级中的局部验证模块响应于第M-1个验证层级中的局部验证模块发送的第M-1验证通过消息,根据所述第M个验证层级中的局部验证模块对应的局部验证问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第M验证通过消息给第M+1个验证层级中的局部验证模块,其中,1<M<K且M为整数;
第K个验证层级中的局部验证模块响应于第K-1个验证层级中的局部验证模块发送的第K-1验证通过消息,根据所述第K个验证层级中的局部验证模块对应的局部验证问题,对接收到的所述验证数据进行局部验证。
在一些示例中,当K=4时,第1个验证层级包括第一局部验证模块和第二局部验证模块;第2个验证层级包括对应所述第一局部验证模块的第三局部验证模块和对应所述第二局部验证模块的第四局部验证模块;第3个验证层级包括对应所述第三局部验证模块的第五局部验证模块和对应所述第四局部验证模块的第六局部验证模块;第4个验证层级包括对应所述第六局部验证模块的第七局部验证模块;
第一验证通过消息包括第一子验证通过消息和第二子验证通过消息;第二验证通过消息包括第三子验证通过消息和第四子验证通过消息;
所述多个所述局部验证模块中的至少两个所述局部验证模块根据各自对应的局部验证问题,对所述验证数据进行局部验证包括:
所述第一局部验证模块根据对应于所述第一局部验证模块的伪基站验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第一子验证通过消息给所述第三局部验证模块;并且,所述第二局部验证模块根据对应于所述第二局部验证模块的网络验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第二子验证通过消息给所述第四局部验证模块;
所述第三局部验证模块响应于所述第一子验证通过消息,根据对应于所述第三局部验证模块的输入图形验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第三子验证通过消息给所述第五局部验证模块;并且,所述第四局部验证模块响应于所述第二子验证通过消息,根据对应于所述第四局部验证模块的用户身份验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第四子验证通过消息给所述第六局部验证模块;
所述第五局部验证模块响应于所述第三子验证通过消息,根据对应于所述第五局部验证模块的短信回执验证子问题,对接收到的所述验证数据进行局部验证;并且,所述第六局部验证模块响应于所述第四子验证通过消息,根据对应于所述第六局部验证模块的机构验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第三验证通过消息给所述第七局部验证模块;
所述第七局部验证模块响应于所述第三验证通过消息,根据对应于所述第七局部验证模块的用户号码验证子问题,对接收到的所述验证数据进行局部验证。
在一些示例中,所述全局验证模块包括裁决器和全局验证结果计算子模块;所述全局验证模块根据接收到的至少两个所述局部验证结果,确定全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果包括:
所述裁决器根据接收到的至少两个所述局部验证结果,确定至少两个所述局部验证结果是否有效,若是,则将至少两个所述局部验证结果发送给所述全局验证结果计算子模块;
所述全局验证结果计算子模块根据至少两个所述局部验证结果分别对应的所述局部验证问题的权重,确定所述全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的所述短信验证结果。
在一些示例中,所述裁决器根据接收到的至少两个所述局部验证结果,确定至少两个所述局部验证结果是否有效包括:
所述裁决器根据局部验证通过的所述局部验证结果的数量,确定当前验证合格率;
所述裁决器比较预设验证合格率与当前验证合格率,确定至少两个所述局部验证结果是否有效。
在一些示例中,所述裁决器根据局部验证通过的所述局部验证结果的数量,确定当前验证合格率包括:
所述裁决器计算所述局部验证通过的所述局部验证结果的数量与所述局部验证问题的总数量的比值,并将计算结果作为所述当前验证合格率。
在一些示例中,所述全局验证结果计算子模块根据至少两个所述局部验证结果分别对应的所述局部验证问题的权重,确定所述全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果包括:
所述全局验证结果计算子模块根据至少两个所述局部验证结果对应的权重,以及至少两个所述局部验证结果,确定至少两个所述局部验证结果的单项分数,其中,所述局部验证结果包括局部验证通过与局部验证不通过;
所述全局验证结果计算子模块根据至少两个所述局部验证结果的单项分数,确定所述全局验证结果;
所述全局验证结果计算子模块比较所述全局验证结果与预设阈值,以确定所述短信验证请求对应的短信验证结果。
在一些示例中,所述系统还包括与所述分布式代理模块连接的预处理模块;所述分布式代理模块响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据发送给多个所述局部验证模块之前,所述方法包括:
所述预处理模块对接收到的所述短信验证请求中包含的所述验证数据进行合规检查,若检查通过,则将包含所述验证数据的所述短信验证请求转发给所述分布式代理模块。
在一些示例中,所述对所述验证数据进行局部验证包括:
根据与所述局部验证问题相对应的局部验证基准结果,对所述验证数据进行局部验证;
其中,所述与所述局部验证问题相对应的局部验证基准结果根据定期获取的短信样本中包含的验证数据训练得到,并且,所述局部验证基准结果能够定期更新。
第二方面,本发明提供一种短信验证系统,所述系统包括依次连接的分布式代理模块、多个局部验证模块、全局验证模块,其中,
所述分布式代理模块用于响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据发送给多个所述局部验证模块;
多个所述局部验证模块中的至少两个所述局部验证模块用于根据各自对应的局部验证问题,对所述验证数据进行局部验证,并将得到的局部验证结果发送给所述全局验证模块;
所述全局验证模块用于根据接收到的至少两个所述局部验证结果,确定全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果。
在一些示例中,所述全局验证模块包括裁决器和全局验证结果计算子模块,其中,
所述裁决器用于根据接收到的至少两个所述局部验证结果,确定至少两个所述局部验证结果是否有效,若是,则将至少两个所述局部验证结果发送给所述全局验证结果计算子模块;
所述全局验证结果计算子模块用于根据至少两个所述局部验证结果分别对应的所述局部验证问题的权重,确定所述全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果。
第三方面,本发明提供一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的方法。
第四方面,本发明提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据上述的方法。
本发明至少具有如下优点:
本发明所提供的短信验证方法及短信验证系统,通过采用多个局部验证模块对验证数据进行多方面的局部验证,再通过贪心算法,由多个局部验证结果得到全局验证结果以对短信进行验证,从而能够提供一种多维度的短信验证方法,通过设置各个局部验证模块对应的局部验证问题,能够调整短信验证的复杂度,并且,通过多个分布式的局部验证模块对短信进行验证,能够避免因单个局部验证模块的接口被攻击而导致短信验证结果失效,进而能够提高短信验证的防御力和可靠性。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。
图1为本发明提供的短信验证系统的一种实施例的结构示意图;
图2为本发明提供的短信验证方法的一种实施例的流程示意图;
图3为本发明提供的短信验证方法的另一种实施例的流程示意图;
图4为本发明提供的短信验证方法的一种实施例中对应于步骤S2的局部验证架构图;
图5为本发明提供的短信验证系统的另一种实施例的结构示意图;
图6为本发明提供的电子设备的一种实施例的结构示意图。
具体实施方式
为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。
可以理解的是,此处描述的具体实施例和附图仅仅用于解释本发明,而非对本发明的限定。
可以理解的是,在不冲突的情况下,本发明中的各实施例及实施例中的各特征可相互组合。
可以理解的是,为便于描述,本发明的附图中仅示出了与本发明相关的部分,而与本发明无关的部分未在附图中示出。
可以理解的是,本发明的实施例中所涉及的每个单元、模块可仅对应一个实体结构,也可由多个实体结构组成,或者,多个单元、模块也可集成为一个实体结构。
可以理解的是,在不冲突的情况下,本发明的流程图和框图中所标注的功能、步骤可按照不同于附图中所标注的顺序发生。
可以理解的是,本发明的流程图和框图中,示出了按照本发明各实施例的系统、装置、设备、方法的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可代表一个单元、模块、程序段、代码,其包含用于实现规定的功能的可执行指令。而且,框图和流程图中的每个方框或方框的组合,可用实现规定的功能的基于硬件的系统实现,也可用硬件与计算机指令的组合来实现。
可以理解的是,本发明实施例中所涉及的单元、模块可通过软件的方式实现,也可通过硬件的方式来实现,例如单元、模块可位于处理器中。
实施例一、
参见图1和图2,图1示出本发明的一个实施例提供的短信验证系统的结构示意图,图2示出本发明的一个实施例提供的短信验证方法的流程图。本实施例提供一种短信验证方法,可以应用于短信验证系统,以图1所示的短信验证系统为例,短信验证系统包括依次连接的分布式代理模块101、多个局部验证模块102、全局验证模块103。
在日常使用终端的过程中,用户的终端经常收到垃圾短信或受到恶意的短信攻击,例如,用户在登录软件账户时,需要验证用户号码,因此软件会调用接口向用户号码发送验证短信,而软件所调用的用于发送短信的接口容易受到攻击,导致用户收到大量垃圾短信。为了解决上述问题,本实施例提供一种短信验证方法,将发送给终端的短信预先接入短信验证系统,按照本实施例提供的短信验证方法进行短信验证,根据得到的短信验证结果判断是否接受该短信的发送请求。基于上述,本实施例提供的短信验证方法包括以下步骤:
S1、分布式代理模块101响应于接收到的短信验证请求,将短信验证请求中包含的验证数据发送给多个局部验证模块102。
当一条短信要发送至终端,首先将该短信对应的短信验证请求接入短信验证系统请求验证,具体地,分布式代理模块101接收短信验证请求,短信验证请求中包含验证数据,分布式代理模块101将验证数据分发给多个局部验证模块102。
其中,验证数据可以包括多种类型的局部验证问题所需的信息,例如,基站标识信息、输入图形信息、网络标识信息、用户身份信息、机构代码信息、用户号码信息、短信回执信息等,具体地,验证数据可以根据多个局部验证模块102所对应的局部验证问题设置,在此不做限定。
分布式代理模块101可以采用多种方式将验证数据发送给多个局部验证模块102,例如,针对各个局部验证模块102对应的局部验证问题所需的信息,提取出验证数据中各个局部验证模块102所需的子验证数据,将子验证数据发送给对应的局部验证模块102。分布式代理模块101也可以将验证数据复制为多份,按照一定顺序将多份验证数据发送给多个局部验证模块102,当然,还可以采取其他方式,在此不做限定。
S2、多个局部验证模块102中的至少两个局部验证模块102根据各自对应的局部验证问题,对验证数据进行局部验证,并将得到的局部验证结果发送给全局验证模块103。
具体地,可以将短信验证问题拆分为多个局部验证问题,每个局部验证模块102用于验证一个局部验证问题,每个局部验证模块102将根据验证数据得到的局部验证问题的局部验证结果发送给全局验证模块103。多个局部验证问题例如可以包括:基站验证子问题、网络验证子问题、输入图形验证子问题、用户身份验证子问题、短信回执验证子问题、机构验证子问题、用户号码验证子问题等。其中,每次短信验证可以调用所有局部验证模块102对局部验证模块102对应的局部验证问题进行验证,也可以仅调用部分局部验证模块102对局部验证模块102对应的局部验证问题进行验证,在此不做限定。
参见图1,多个局部验证模块102为一个局部验证模块集群S,局部验证模块集群S中的多个局部验证模块102可以采用分布式设置,从而能够实现多维度的防御机制,相较于相关技术中,通过单一验证模块串行处理短信验证问题以进行短信验证的方式,本实施例提供的方法中,将短信验证问题拆解为多个局部验证问题以采用分布式设置的多个局部验证模块102协同验证,即使单个局部验证模块102被攻击,也不会导致短信验证的可靠性失效,极大地提高了短信验证系统的防御性和安全性。
S3、全局验证模块103根据接收到的至少两个局部验证结果,确定全局验证结果,并根据全局验证结果确定短信验证请求对应的短信验证结果。
具体地,全局验证模块103根据至少两个局部验证模块102发送的局部验证结果,确定全局验证结果。进一步地,在短信验证系统预先进行模型训练的过程中,通过贪心算法,将短信验证问题拆分为多个局部验证问题,每个局部验证问题存储在一个局部验证模块102中,在S2中,至少两个局部验证模块102分别求得至少两个局部验证问题的最优解(即局部验证结果),在S3中,全局验证模块103再根据至少两个局部验证问题的最优解,利用贪心算法进行归纳汇总,得到对应短信验证问题的全局最优解(即全局验证结果),再根据全局最优解确定短信验证请求对应的短信验证结果。
其中,短信验证结果用于指示短信验证请求对应的短信是否合法,相应地,短信验证结果包括短信合法和短信不合法,若短信验证结果为短信合法,则返回短信验证成功消息,则返回短信验证成功消息,接受本次短信发送请求,将短信发送至终端,若短信验证结果为短信不合法,则返回短信验证失败消息,拒绝本次短信发送请求。
本实施例所提供的短信验证方法,通过采用多个局部验证模块102对验证数据进行多方面的局部验证,再通过贪心算法,由多个局部验证结果得到全局验证结果以对短信进行验证,从而能够提供一种多维度的短信验证方法,通过设置各个局部验证模块102对应的局部验证问题,能够调整短信验证的复杂度,并且,通过多个分布式的局部验证模块102对短信进行验证,能够避免单个局部验证模块102的接口被攻击而导致短信验证结果失效,进而能够提高短信验证的防御力和可靠性。
实施例二、
参见图3、图5,图3示出本发明的另一个实施例提供的短信验证方法的流程图,图5示出本发明的另一个实施例提供的短信验证系统。本实施例提供的短信验证方法可应用在短信验证系统中,参见图5,本实施例提供的短信验证系统包括依次连接的预处理模块100、分布式代理模块101、多个局部验证模块102、全局验证模块103。
本实施例提供的短信验证方法包括:
S01、预处理模块100对接收到的短信验证请求中包含的验证数据进行合规检查,若检查通过,则将包含验证数据的短信验证请求转发给分布式代理模块101。
具体地,给终端发送短信的接口首先接入预处理模块100,当短信通过接口发送短信给终端时,首先发送短信验证请求给预处理模块100,预处理模块100对短信验证请求中包含的验证数据进行合规检查,合规检查例如包括:验证数据中的各项信息格式是否规范,例如,基站标识信息的格式是否规范,用户号码信息的格式是否规范等;短信的发送间隔时间是否在预设间隔时间内,预设间隔时间例如为30秒;验证数据中包含的各项信息的个数是否符合预设信息个数,例如,验证数据可以包括基站标识信息、输入图形信息、网络标识信息、用户身份信息、机构代码信息、用户号码信息、短信回执信息,相应地,预设信息个数为7个。
进一步地,若合规检查通过,则预处理模块100将包含验证数据的短信验证请求转发给分布式代理模块101,若合规检查不通过,则预处理模块100返回合规检查验证失败消息。
其中,步骤S01为一个可选的步骤,在一些实施例中,也可以省略步骤S01。
在一些示例中,继续参见图3,S1可以包括:
S11、分布式代理模块101响应于接收到的短信验证请求,将短信验证请求中包含的验证数据复制为N份,其中,N为大于1的整数。
具体地,以N=10为例,短信验证系统包含10个局部验证模块102,分布式代理模块101接收到预处理模块100转发的包含验证数据的短信验证请求,将其中的验证数据复制为10份验证数据。
S12、分布式代理模块101将N份验证数据分发给N个局部验证模块102。
具体地,分布式代理模块101将10份验证数据按照一定顺序分发给10个局部验证模块102,每个局部验证模块102收到验证数据后,提取出对应该局部验证模块102负责的局部验证问题所需的信息,根据局部验证问题的对该部分信息进行验证。
进一步地,在S12中,分布式代理模块101可以按照一定顺序将N份验证数据分发给N个局部验证模块102,例如,按照第1个局部验证模块102-1至第N个局部验证模块102-N(图中未示出)的顺序,将N份验证数据发送给N个局部验证模块102。又例如,分布式代理模块101可以根据算法生成发送顺序,按照发送顺序将N份验证数据发送给N个局部验证模块102。
在一些示例中,在S12中,分布式代理模块101根据哈希取余法依次对第1个局部验证模块102-1至第N个局部验证模块102-N取余,并根据取余结果将N份验证数据分发给对应的局部验证模块102。
具体地,哈希取余法的计算公式可以为:f(x)=(x+max)mod N,其中,mod为取余操作;x为局部验证模块102的顺序数,例如,针对第1个局部验证模块102-1进行取余,x=1,针对第2个局部验证模块102-2进行取余,x=2;max为哈希取余法生成的随机数,每次短信验证的max值不同,从而取余结果也相应改变,因此,采用上述方法得到的取余结果即为发送顺序,按照哈希取余法得到发送顺序,能够保证发送顺序的随机性,从而能够避免发送顺序固定,进而增加短信验证系统的可靠性。
步骤S11和步骤S12为步骤S1的一种实现方式,步骤S1具体可以通过多种方式实现,例如,分布式代理模块101针对各个局部验证模块102对应的局部验证问题所需的信息,提取出验证数据中各个局部验证模块102所需的子验证数据,将子验证数据发送给对应的局部验证模块102,在此不做限定。
在一些示例中,继续参见图3,多个局部验证模块102分为K个验证层级,每个验证层级包括至少一个局部验证模块102,其中,K为大于1的整数。基于K个验证层级的设置方式,S2可以采用逐级验证的方式,具体地,S2可以包括:
S21、第1个验证层级中的局部验证模块102根据第1个验证层级中的局部验证模块102对应的局部验证问题,对接收到的验证数据进行局部验证,若验证通过,则发送第一验证通过消息给第2个验证层级中的局部验证模块102。
具体地,由先验证到后验证的顺序,将K个验证层级称为第1个验证层级到第K个验证层级。其中,K可以为任何大于1的整数,例如,K=5。对于第1个验证层级中的局部验证模块102,其与分布式代理模块101直接连接,接收分布式代理模块101发送的验证数据后,根据第1个验证层级中的局部验证模块102对应的局部验证问题,对接收到的验证数据进行局部验证得出局部验证结果,其中,局部验证结果包括局部验证通过和局部验证不通过,若验证通过,则发送第一验证通过消息给第2个验证层级中的局部验证模块102,并将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,并终止局部验证,即不进行下一验证层级的验证,直接执行S3。
S22、第M个验证层级中的局部验证模块102响应于第M-1个验证层级中的局部验证模块102发送的第M-1验证通过消息,根据第M个验证层级中的局部验证模块102对应的局部验证问题,对接收到的验证数据进行局部验证,若验证通过,则发送第M验证通过消息给第M+1个验证层级中的局部验证模块102,其中,1<M<K且M为整数。
具体地,第M个验证层级表示位于第1个验证层级和最后一个验证层级(即第K个验证层级)之间的任一中间验证层级,以K=6,M=3为例,第3个验证层级中的局部验证模块102,接收第2个验证层级(即上一验证层级)中的局部验证模块102发送的第二验证消息后,根据第3个验证层级中的局部验证模块102对应的局部验证问题,对接收到的验证数据进行局部验证得出局部验证结果,其中,局部验证结果包括局部验证通过和局部验证不通过,若验证通过,则发送第三验证通过消息给第4个验证层级(即下一验证层级)中的局部验证模块102,并将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,并终止局部验证,即不进行第4个验证层级的验证,直接执行S3。
S23、第K个验证层级中的局部验证模块102响应于第K-1个验证层级中的局部验证模块102发送的第K-1验证通过消息,根据第K个验证层级中的局部验证模块102对应的局部验证问题,对接收到的验证数据进行局部验证。
具体地,对于第K个验证层级(即最后一个验证层级)中的局部验证模块102,其与全局验证模块103直接连接,以K=6为例,接收第5个验证层级(即上一验证层级)中的局部验证模块102发送的第五验证消息后,根据第6个验证层级中的局部验证模块102对应的局部验证问题,对接收到的验证数据进行局部验证得出局部验证结果,其中,局部验证结果包括局部验证通过和局部验证不通过,若验证通过,则将为局部验证通过的局部验证结果发送给全局验证模块103,执行S3,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,执行S3。
步骤S21-步骤S23为步骤S2的一种实现方式,步骤S2具体可以通过多种方式实现,在此不做限定。例如,多个局部验证模块102可以并行设置,即所有局部验证模块102设置在同一验证层级,多个局部验证模块102并行验证各个局部验证模块102对应的局部验证问题,并将得出的局部验证结果发送给全局验证模块103。
需要说明的是,在S2中,各个局部验证模块102在根据自身对应的局部验证问题对验证数据进行验证得出局部验证结果后,无论得出的局部验证结果为局部验证通过还是局部验证不通过,均将局部验证结果发送给全局验证模块103。
需要说明的是,在S2中,各个局部验证模块102采用贪心算法得出局部验证结果,换言之,各个局部验证模块102采用贪心算法针对自身对应的局部验证问题求得局部最优解(即局部验证结果),再将各个局部最优解发送给全局验证模块103,以供全局验证模块103采用贪心算法将各个局部最优解进行汇总得出全局最优解(即全局验证结果)。
在一些示例中,参见图4,图4示出本实施例提供的短信验证方法中,S2的局部验证架构图。以K=4为例,详细描述局部验证过程。第1个验证层级K1包括第一局部验证模块102-1和第二局部验证模块102-2;第2个验证层级K2包括对应第一局部验证模块102-1的第三局部验证模块102-3,和对应第二局部验证模块102-2的第四局部验证模块102-4;第3个验证层级K3包括对应第三局部验证模块102-3的第五局部验证模块102-5,和对应第四局部验证模块102-4的第六局部验证模块102-6;第4个验证层级K4包括对应第六局部验证模块102-6的第七局部验证模块102-7。
需要说明的是,一个局部验证模块(例如局部验证模块B)对应另一个局部验证模块(例如局部验证模块A),即表示局部验证模块B所属的验证层级为局部验证模块A所属的验证层级的下一验证层级,且局部验证模块B连接局部验证模块A,当局部验证模块A对应的局部验证问题的局部验证结果为局部验证通过时,继而执行局部验证模块B对应的局部验证问题的验证。
第一验证通过消息包括第一子验证通过消息和第二子验证通过消息。第二验证通过消息包括第三子验证通过消息和第四子验证通过消息。
在本实施例中,S2中的局部验证问题可以分为多个大类,例如,对发送短信的基站和终端分别进行验证,因而将局部验证问题分为两个大类,相应地局部验证过程分为两个分支,参见图4,S2中的局部验证过程可以分为两个分支:基站侧局部验证A和终端侧局部验证B。多个局部验证问题可以包括:归属于基站侧局部验证A的基站验证子问题、输入图形验证子问题、短信回执验证子问题,以及归属于终端侧局部验证B的网络验证子问题、用户身份验证子问题、机构验证子问题、用户号码验证子问题。发送给多个局部验证模块102的验证数据可以包括多种类型的局部验证问题所需的信息,例如,验证数据中的信息包括:对应于基站验证子问题的基站标识信息、对应于输入图形验证子问题的输入图形信息、对应于短信回执验证子问题的短信回执信息,对应于网络验证子问题的网络标识信息、对应于用户身份验证子信息的用户身份信息、对应于机构验证子问题的机构代码信息、对应于用户号码验证子问题的用户号码信息等。
其中,基站侧局部验证A的验证链包括依次相连的第一局部验证模块102-1,负责基站验证子问题;第三局部验证模块102-3,负责输入图形验证子问题;第五局部验证模块102-5,负责短信回执验证子问题。终端侧局部验证B的验证链包括依次相连的第二局部验证模块102-2,负责网络验证子问题;第四局部验证模块102-4,负责用户身份验证子问题;第六局部验证模块102-6,负责机构验证子问题;第七局部验证模块102-7,负责用户号码验证子问题。
基于上述,继续参见图4,S1之后,输入验证数据,逐级开始基站侧局部验证A和终端侧局部验证B两个分支的局部验证,S2包括:
在第一验证层级K1中,对应于基站侧的局部验证A:S201a、第一局部验证模块102-1根据对应于第一局部验证模块102-1的伪基站验证子问题,提取验证数据中的基站标识信息,对基站标识信息进行局部验证,具体地,可以验证该基站标识信息对应的基站是否在合法基站列表中,以避免短信为伪基站发送的短信,若验证通过,则发送第一子验证通过消息给第三局部验证模块102-3,并将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,并结束基站侧的局部验证A,执行S3;在第一验证层级K1中,对应于终端侧的局部验证B:S201b、第二局部验证模块102-2根据对应于第二局部验证模块102-2的网络验证子问题,提取验证数据中的网络标识信息,对网络标识信息进行局部验证,具体地,可以验证该网络标识信息对应的网络是否在合法网络列表中,以避免短信为非法请求,若验证通过,则发送第二子验证通过消息给第四局部验证模块102-4,并将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,并结束终端侧的局部验证B,执行S3。
在第二验证层级K2中,对应于基站侧的局部验证A:S202a、第三局部验证模块102-3响应于第一子验证通过消息,根据对应于第三局部验证模块102-3的输入图形验证子问题,提取验证数据中的输入图形信息,对输入图形信息进行局部验证,具体地,输入图形信息可以包括用户登录软件时,在验证步骤中通过软件给出的图形验证码,可以验证输入图形与图形验证码是否一致,以避免短信为机器人发送的短信,若验证通过,则发送第三子验证通过消息给第五局部验证模块102-5,并将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,并结束基站侧的局部验证A,执行S3;在第二验证层级K2中,对应于终端侧的局部验证B:S202b、第四局部验证模块102-4响应于第二子验证通过消息,根据对应于第四局部验证模块102-4用户身份验证子问题,提取验证数据中的用户身份信息,对用户身份信息进行局部验证,具体地,可以验证该用户身份是否在合法用户名单列表中,以避免短信为非法用户(例如诈骗用户、广告用户等)发送,若验证通过,则发送第四子验证通过消息给第六局部验证模块102-6,并将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,并结束终端侧的局部验证B,执行S3。
在第三验证层级K3中,对应于基站侧的局部验证A:S203a、第五局部验证模块102-5响应于第三子验证通过消息,根据对应于第五局部验证模块102-5的短信回执验证子问题,提取验证数据中的短信回执信息,对短信回执信息进行局部验证,具体地,短信回执信息为用户响应于接收到的验证短信所反馈的验证回执,可以验证短信回执信息与系统给出的预设短信回执信息是否一致,以避免短信为机器人发送的短信,若验证通过,则将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,结束基站侧的局部验证A,执行S3;在第三验证层级K3中,对应于终端侧的局部验证B:S203b、第六局部验证模块102-6响应于第四子验证通过消息,根据对应于第六局部验证模块102-6的机构验证子问题,提取验证数据中的机构代码信息,对机构代码信息进行局部验证,具体地,可以验证机构代码信息是否在库存的白名单机构列表中,以避免短信为非法机构发送的短信,若验证通过,则发送第三验证通过消息给第七局部验证模块102-7,并将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,并结束终端侧的局部验证B,执行S3。
在第四验证层级K4中,对应于终端侧的局部验证B:S204b、第七局部验证模块102-7响应于第三验证通过消息,根据对应于第七局部验证模块102-7的用户号码验证子问题,提取验证数据中的用户号码信息,对用户号码信息进行局部验证,具体地,可以验证用户号码信息是否存储在库存的合法用户号码列表中,以避免短信为非法用户号码发送的短信,若验证通过,则将为局部验证通过的局部验证结果发送给全局验证模块103,若验证不通过,则将为局部验证不通过的局部验证结果发送给全局验证模块103,结束终端侧的局部验证B,执行S3。
步骤S201a-步骤S203a以及步骤S201b-步骤S204b,为步骤S2的一种实现方式,步骤S2具体可以通过多种方式实现,在此不做限定。
在一些示例中,参见图5,全局验证模块103包括裁决器1031和全局验证结果计算子模块1032。参见图3,S3包括:
S31、裁决器1031根据接收到的至少两个局部验证结果,确定至少两个局部验证结果是否有效,若是,则将至少两个局部验证结果发送给全局验证结果计算子模块1032。
具体地,S31包括多个子步骤:
子步骤一、裁决器1031根据局部验证结果为局部验证通过的局部验证结果的数量,确定当前验证合格率。
具体地,局部验证结果包括局部验证通过和局部验证不通过,裁决器1031依次检测局部验证模块102反馈的各个局部验证结果,确定为局部验证通过的局部验证结果的数量J,再获取局部验证模块集群S中的各个局部验证模块102所负责的局部验证问题的总数量L,计算J和L的比值,并将计算结果作为当前验证合格率H1,即H1=J/L。
子步骤二、裁决器1031比较预设验证合格率与当前验证合格率,确定至少两个局部验证结果是否有效。
具体地,在裁决器1031中存储有预设验证合格率,例如为0.6(即60%),再比较当前验证合格率H1与预设验证合格率得出当前偏差值,根据当前偏差值是否大于预设偏差值来确定各个局部验证模块102返回的各个局部验证结果是否有效,换言之,根据当前偏差值是否大于预设偏差值来确定本次S2执行的局部验证是否有效,具体地,当前验证合格率H1与预设验证合格率的当前偏差值可以为比值或差值,若当前偏差值小于或等于预设偏差值,则各个局部验证结果有效,执行S32,若当前偏差值大于预设偏差值,则各个局部验证结果无效,返回局部验证无效消息,再次执行S2,或结束本次短信验证。例如,假设预设验证合格率为0.6,预设偏差值为0.1,当前验证合格率H1为0.4,以当前验证合格率H1与预设验证合格率的当前偏差值为差值为例,当前偏差值为0.6-0.4=0.2>0.1,显然当前偏差值(0.2)大于预设偏差值(0.1),即本次返回的各个局部验证结果无效,则返回局部验证无效消息,再次执行S2,或结束本次短信验证。
S32、全局验证结果计算子模块1032根据至少两个局部验证结果分别对应的局部验证问题的权重,确定全局验证结果,并根据全局验证结果确定短信验证请求对应的短信验证结果。
具体地,S32包括多个子步骤:
子步骤一、全局验证结果计算子模块1032根据至少两个局部验证结果对应的权重,以及至少两个局部验证结果,确定至少两个局部验证结果的单项分数,其中,局部验证结果包括局部验证通过与局部验证不通过。
具体地,全局验证结果计算子模块1032中预存了各个局部验证问题对应的局部验证结果的权重,并且,局部验证结果的不同结果具有不同的系数,例如,为局部验证通过的局部验证结果的系数为1,为局部验证不通过的局部验证结果的系数为0,从而根据一个局部验证结果的权重和局部验证结果的结果状态(包括局部验证通过和局部验证不通过)的乘积,可以确定该局部验证结果的单项分数,全局验证结果计算子模块1032按照上述方式得出多个局部验证模块102返回的局部验证结果的单项分数。例如,图形验证子问题的局部验证结果的权重为0.8,图形验证子问题的局部验证结果为局部验证通过,则图形验证子问题的局部验证结果的单项分数为0.8×1=0.8,又例如,用户身份验证子问题的局部验证结果的权重为0.5,用户身份验证子问题的局部验证结果为局部验证不通过,则用户身份验证子问题的局部验证结果的单项分数为0.5×0=0。
子步骤二、全局验证结果计算子模块1032根据至少两个局部验证结果的单项分数,确定全局验证结果。
具体地,全局验证结果计算子模块1032得出多个局部验证模块102返回的局部验证结果的单项分数,再根据各个局部验证结果的单项分数之和,确定全局验证结果。
子步骤三、全局验证结果计算子模块1032比较全局验证结果与预设阈值,以确定短信验证请求对应的短信验证结果。
具体地,在全局验证结果计算子模块1032中存储有预设阈值,例如为15,全局验证结果计算子模块1032再比较全局验证结果与预设阈值得出全局偏差值,根据全局偏差值是否大于预设全局偏差值来确定短信验证结果,短信验证结果用于指示短信验证请求对应的短信是否合法,短信验证结果包括短信合法和短信不合法。具体地,全局验证结果与预设阈值的全局偏差值可以为比值或差值,若全局偏差值小于或等于预设全局偏差值,则短信验证结果表示为短信合法,返回短信验证成功消息,接受本次短信发送,若全局偏差值大于预设全局偏差值,则短信验证结果表示为短信不合法,返回短信验证失败消息,拒绝本次短信发送。例如,假设预设阈值为15,全局验证结果为13,预设全局偏差值为5,以全局验证结果与预设阈值的全局偏差值为差值为例,全局偏差值为15-13=2<5,即全局偏差值(2)小于预设全局偏差值(5),即短信验证结果表示为短信合法,则返回短信验证成功消息,接受本次短信发送。
步骤S31和步骤S32为步骤S3的一种实现方式,步骤S3具体可以通过多种方式实现,在此不做限定。
在一些示例中,本方法S2中,对验证数据进行局部验证包括:
各个局部验证模块102根据与局部验证问题相对应的局部验证基准结果,对验证数据进行局部验证。
其中,与局部验证问题相对应的局部验证基准结果根据定期获取的短信样本中包含的验证数据训练得到,并且,局部验证基准结果能够定期更新。
具体地,本实施例提供的短信验证系统,在模型训练阶段,根据大量短信样本中的验证数据,对各个局部验证问题进行训练,得出每个局部验证问题的局部验证基准结果,并将该局部验证基准结果存储在对应的局部验证模块102中。在局部验证的过程中,各个局部验证模块102根据其负责的局部验证问题的局部验证基准结果,提取验证数据中对应局部验证问题的相关信息,将该信息与局部验证基准结果进行比较,根据比较结果对验证数据中对应局部验证问题的相关信息进行验证。
在一些示例中,本实施例提供的短信验证系统会定期获取短信样本,针对各个局部验证问题进行训练得出各个局部验证问题的局部验证最新结果,再实时监控各个局部验证问题的局部验证最新结果与对应该局部验证问题的局部验证模块102中存储的局部验证基准结果的局部偏差值,根据局部偏差值是否大于预设局部偏差值确定是否更新局部验证模块102中存储的局部验证基准结果,若局部偏差值大于预设局部偏差值,则将局部验证问题存储的局部验证基准结果更新为对应的局部验证最新结果,若局部偏差值小于或等于预设局部偏差值,则不进行操作。通过定期获取短信样本进行训练,并根据训练结果实时监控(或更新)各个局部验证问题的局部验证基准结果,能够保证本短信验证方法的短信验证结果的准确性。
其中,本步骤为一个可选的步骤,在一些实施例中,也可以省略本步骤。
本实施例所提供的短信验证方法,通过采用多个局部验证模块102对验证数据进行多方面的局部验证,再通过贪心算法,由通过多个局部验证结果得到全局验证结果以对短信进行验证,从而能够提供一种多维度的短信验证方法,通过设置各个局部验证模块102对应的局部验证问题,能够调整短信验证的复杂度,并且,通过多个分布式的局部验证模块102对短信进行验证,能够避免单个局部验证模块102的接口被攻击而导致短信验证结果失效,进而能够提高短信验证的防御力和可靠性。
实施例三、
参见图1,图1示出本发明的一个实施例提供的短信验证系统的结构图。本实施例提供一种短信验证系统,短信验证系统包括依次连接的分布式代理模块101、多个局部验证模块102、全局验证模块103,其中,
分布式代理模块101用于响应于接收到的短信验证请求,将短信验证请求中包含的验证数据发送给多个局部验证模块102。
多个局部验证模块102中的至少两个局部验证模块102用于根据各自对应的局部验证问题,对验证数据进行局部验证,并将得到的局部验证结果发送给全局验证模块103。
全局验证模块103用于根据接收到的至少两个局部验证结果,确定全局验证结果,并根据全局验证结果确定短信验证请求对应的短信验证结果。其中,短信验证结果用于指示短信验证请求对应的短信是否合法,相应地,短信验证结果包括短信验证通过和短信验证不通过。
在一些示例中,参加图5,图5示出本发明的另一个实施例提供的短信验证系统的结构图。全局验证模块103包括裁决器1031和全局验证结果计算子模块1032,其中,
裁决器1031用于根据接收到的至少两个局部验证结果,确定至少两个局部验证结果是否有效,若是,则将至少两个局部验证结果发送给全局验证结果计算子模块。
全局验证结果计算子模块1032用于根据至少两个局部验证结果分别对应的局部验证问题的权重,确定全局验证结果,并根据全局验证结果确定短信验证请求对应的短信是否合法。
在一些示例中,系统还包括与分布式代理模块101连接的预处理模块100。预处理模块100用于对接收到的短信验证请求中包含的验证数据进行合规检查,若检查通过,则将包含验证数据的短信验证请求转发给分布式代理模块101。
本实施例所提供的短信验证系统,通过采用多个局部验证模块对验证数据进行多方面的局部验证,再通过贪心算法,由通过多个局部验证结果得到全局验证结果以对短信进行验证,从而能够提供一种多维度的短信验证方法,通过设置各个局部验证模块对应的局部验证问题,能够调整短信验证的复杂度,并且,通过多个分布式的局部验证模块对短信进行验证,能够避免单个局部验证模块的接口被攻击而导致短信验证结果失效,进而能够提高短信验证的防御力和可靠性。
实施例四、
本发明提供一种电子设备,包括:
至少一个处理器。以及
与至少一个处理器通信连接的存储器。其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的短信验证。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
参见图6,图6示出了可以用来实施本公开的实施例的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等。输出单元807,例如各种类型的显示器、扬声器等。存储单元808,例如磁盘、光盘等。以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如短信验证方法。例如,在一些实施例中,短信验证方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的短信验证方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行短信验证方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
实施例五、
本发明提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行根据上述的短信验证方法。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器)。以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互。例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈)。并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (15)
1.一种短信验证方法,其特征在于,应用于短信验证系统,所述系统包括依次连接的分布式代理模块、多个局部验证模块、全局验证模块,所述方法包括:
所述分布式代理模块响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据发送给多个所述局部验证模块;
多个所述局部验证模块中的至少两个所述局部验证模块根据各自对应的局部验证问题,对所述验证数据进行局部验证,并将得到的局部验证结果发送给所述全局验证模块;
所述全局验证模块根据接收到的至少两个所述局部验证结果,确定全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果。
2.根据权利要求1所述的方法,其特征在于,所述分布式代理模块响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据发送给多个所述局部验证模块包括:
所述分布式代理模块响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据复制为N份,其中,N为大于1的整数,且N与多个所述局部验证模块的数量相同;
所述分布式代理模块将N份所述验证数据分发给N个所述局部验证模块。
3.根据权利要求2所述的方法,其特征在于,所述分布式代理模块将N份所述验证数据分发给N个所述局部验证模块包括:
所述分布式代理模块根据哈希取余法依次对第1个至第N个所述局部验证模块取余,并根据取余结果将N份所述验证数据分发给对应的所述局部验证模块。
4.根据权利要求1所述的方法,其特征在于,多个所述局部验证模块分为K个验证层级,每个验证层级包括至少一个局部验证模块,其中,K为大于1的整数;所述多个所述局部验证模块中的至少两个所述局部验证模块根据各自对应的局部验证问题,对所述验证数据进行局部验证包括:
第1个验证层级中的局部验证模块根据所述第1个验证层级中的局部验证模块对应的局部验证问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第一验证通过消息给第2个验证层级中的局部验证模块;
第M个验证层级中的局部验证模块响应于第M-1个验证层级中的局部验证模块发送的第M-1验证通过消息,根据所述第M个验证层级中的局部验证模块对应的局部验证问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第M验证通过消息给第M+1个验证层级中的局部验证模块,其中,1<M<K且M为整数;
第K个验证层级中的局部验证模块响应于第K-1个验证层级中的局部验证模块发送的第K-1验证通过消息,根据所述第K个验证层级中的局部验证模块对应的局部验证问题,对接收到的所述验证数据进行局部验证。
5.根据权利要求4所述的方法,其特征在于,当K=4时,第1个验证层级包括第一局部验证模块和第二局部验证模块;第2个验证层级包括对应所述第一局部验证模块的第三局部验证模块和对应所述第二局部验证模块的第四局部验证模块;第3个验证层级包括对应所述第三局部验证模块的第五局部验证模块和对应所述第四局部验证模块的第六局部验证模块;第4个验证层级包括对应所述第六局部验证模块的第七局部验证模块;
第一验证通过消息包括第一子验证通过消息和第二子验证通过消息;第二验证通过消息包括第三子验证通过消息和第四子验证通过消息;
所述多个所述局部验证模块中的至少两个所述局部验证模块根据各自对应的局部验证问题,对所述验证数据进行局部验证包括:
所述第一局部验证模块根据对应于所述第一局部验证模块的伪基站验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第一子验证通过消息给所述第三局部验证模块;并且,所述第二局部验证模块根据对应于所述第二局部验证模块的网络验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第二子验证通过消息给所述第四局部验证模块;
所述第三局部验证模块响应于所述第一子验证通过消息,根据对应于所述第三局部验证模块的输入图形验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第三子验证通过消息给所述第五局部验证模块;并且,所述第四局部验证模块响应于所述第二子验证通过消息,根据对应于所述第四局部验证模块的用户身份验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第四子验证通过消息给所述第六局部验证模块;
所述第五局部验证模块响应于所述第三子验证通过消息,根据对应于所述第五局部验证模块的短信回执验证子问题,对接收到的所述验证数据进行局部验证;并且,所述第六局部验证模块响应于所述第四子验证通过消息,根据对应于所述第六局部验证模块的机构验证子问题,对接收到的所述验证数据进行局部验证,若验证通过,则发送第三验证通过消息给所述第七局部验证模块;
所述第七局部验证模块响应于所述第三验证通过消息,根据对应于所述第七局部验证模块的用户号码验证子问题,对接收到的所述验证数据进行局部验证。
6.根据权利要求1所述的方法,其特征在于,所述全局验证模块包括裁决器和全局验证结果计算子模块;所述全局验证模块根据接收到的至少两个所述局部验证结果,确定全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果包括:
所述裁决器根据接收到的至少两个所述局部验证结果,确定至少两个所述局部验证结果是否有效,若是,则将至少两个所述局部验证结果发送给所述全局验证结果计算子模块;
所述全局验证结果计算子模块根据至少两个所述局部验证结果分别对应的所述局部验证问题的权重,确定所述全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的所述短信验证结果。
7.根据权利要求6所述的方法,其特征在于,所述裁决器根据接收到的至少两个所述局部验证结果,确定至少两个所述局部验证结果是否有效包括:
所述裁决器根据局部验证通过的所述局部验证结果的数量,确定当前验证合格率;
所述裁决器比较预设验证合格率与当前验证合格率,确定至少两个所述局部验证结果是否有效。
8.根据权利要求7所述的方法,其特征在于,所述裁决器根据局部验证通过的所述局部验证结果的数量,确定当前验证合格率包括:
所述裁决器计算局部验证通过的所述局部验证结果的数量与所述局部验证问题的总数量的比值,并将计算结果作为所述当前验证合格率。
9.根据权利要求6所述的方法,其特征在于,所述全局验证结果计算子模块根据至少两个所述局部验证结果分别对应的所述局部验证问题的权重,确定所述全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果包括:
所述全局验证结果计算子模块根据至少两个所述局部验证结果对应的权重,以及至少两个所述局部验证结果,确定至少两个所述局部验证结果的单项分数,其中,所述局部验证结果包括局部验证通过与局部验证不通过;
所述全局验证结果计算子模块根据至少两个所述局部验证结果的单项分数,确定所述全局验证结果;
所述全局验证结果计算子模块比较所述全局验证结果与预设阈值,以确定所述短信验证请求对应的短信验证结果。
10.根据权利要求1-9任一所述的方法,其特征在于,所述系统还包括与所述分布式代理模块连接的预处理模块;所述分布式代理模块响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据发送给多个所述局部验证模块之前,所述方法包括:
所述预处理模块对接收到的所述短信验证请求中包含的所述验证数据进行合规检查,若检查通过,则将包含所述验证数据的所述短信验证请求转发给所述分布式代理模块。
11.根据权利要求1-9任一所述的方法,其特征在于,所述对所述验证数据进行局部验证包括:
根据与所述局部验证问题相对应的局部验证基准结果,对所述验证数据进行局部验证;
其中,所述与所述局部验证问题相对应的局部验证基准结果根据定期获取的短信样本中包含的验证数据训练得到,并且,所述局部验证基准结果能够定期更新。
12.一种短信验证系统,其特征在于,所述系统包括依次连接的分布式代理模块、多个局部验证模块、全局验证模块,其中,
所述分布式代理模块用于响应于接收到的短信验证请求,将所述短信验证请求中包含的验证数据发送给多个所述局部验证模块;
多个所述局部验证模块中的至少两个所述局部验证模块用于根据各自对应的局部验证问题,对所述验证数据进行局部验证,并将得到的局部验证结果发送给所述全局验证模块;
所述全局验证模块用于根据接收到的至少两个所述局部验证结果,确定全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果。
13.根据权利要求12所述的系统,其特征在于,所述全局验证模块包括裁决器和全局验证结果计算子模块,其中,
所述裁决器用于根据接收到的至少两个所述局部验证结果,确定至少两个所述局部验证结果是否有效,若是,则将至少两个所述局部验证结果发送给所述全局验证结果计算子模块;
所述全局验证结果计算子模块用于根据至少两个所述局部验证结果分别对应的所述局部验证问题的权重,确定所述全局验证结果,并根据所述全局验证结果确定所述短信验证请求对应的短信验证结果。
14.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-11中任一项所述的方法。
15.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111235140.3A CN114124455B (zh) | 2021-10-22 | 2021-10-22 | 短信验证方法及短信验证系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111235140.3A CN114124455B (zh) | 2021-10-22 | 2021-10-22 | 短信验证方法及短信验证系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114124455A true CN114124455A (zh) | 2022-03-01 |
CN114124455B CN114124455B (zh) | 2023-05-05 |
Family
ID=80376675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111235140.3A Active CN114124455B (zh) | 2021-10-22 | 2021-10-22 | 短信验证方法及短信验证系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114124455B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110162068A1 (en) * | 2008-06-30 | 2011-06-30 | Fujitsu Limited | Authentication apparatus |
CN107026739A (zh) * | 2016-02-01 | 2017-08-08 | 中国移动通信集团重庆有限公司 | 短信签名认证方法及装置 |
CN108174360A (zh) * | 2018-03-26 | 2018-06-15 | 北京奇艺世纪科技有限公司 | 一种短信发送方法及装置、短信验证方法及装置 |
CN108306937A (zh) * | 2017-12-29 | 2018-07-20 | 五八有限公司 | 短信验证码的发送方法、获取方法、服务器及存储介质 |
CN108833330A (zh) * | 2018-04-08 | 2018-11-16 | 浙江商业职业技术学院 | 一种农村电子商务数据鉴证方法 |
WO2019144756A1 (zh) * | 2018-01-29 | 2019-08-01 | 深圳壹账通智能科技有限公司 | 验证短信的处理方法及系统 |
-
2021
- 2021-10-22 CN CN202111235140.3A patent/CN114124455B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110162068A1 (en) * | 2008-06-30 | 2011-06-30 | Fujitsu Limited | Authentication apparatus |
CN107026739A (zh) * | 2016-02-01 | 2017-08-08 | 中国移动通信集团重庆有限公司 | 短信签名认证方法及装置 |
CN108306937A (zh) * | 2017-12-29 | 2018-07-20 | 五八有限公司 | 短信验证码的发送方法、获取方法、服务器及存储介质 |
WO2019144756A1 (zh) * | 2018-01-29 | 2019-08-01 | 深圳壹账通智能科技有限公司 | 验证短信的处理方法及系统 |
CN108174360A (zh) * | 2018-03-26 | 2018-06-15 | 北京奇艺世纪科技有限公司 | 一种短信发送方法及装置、短信验证方法及装置 |
CN108833330A (zh) * | 2018-04-08 | 2018-11-16 | 浙江商业职业技术学院 | 一种农村电子商务数据鉴证方法 |
Non-Patent Citations (2)
Title |
---|
A.S.FALOHUN等: "esign and Construction of a Door Security Alarm System based on SMS Verification and Voice Recognition", INTERNATIONAL JOURNAL OF ADVANCED RESEARCH IN COMPUTER SCIENCE * |
何伟林: "RSMM实时短信息监控系统开发研究", 中国优秀硕士学位论文全文数据库 信息科技辑 * |
Also Published As
Publication number | Publication date |
---|---|
CN114124455B (zh) | 2023-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112650764A (zh) | 跨链数据处理方法、装置、设备和存储介质 | |
CN107634947A (zh) | 限制恶意登录或注册的方法和装置 | |
CN114328132A (zh) | 外部数据源的状态监控方法、装置、设备和介质 | |
CN115580494B (zh) | 一种弱口令的检测方法、装置和设备 | |
CN114513762A (zh) | 一种业务处理方法、装置、电子设备及计算机可读介质 | |
CN113434881A (zh) | 跨链交易的可信性验证方法、装置及电子设备 | |
US12120133B1 (en) | Request header anomaly detection | |
CN113377381A (zh) | 小程序包的分发方法、装置、电子设备和介质 | |
CN114124455A (zh) | 短信验证方法及短信验证系统 | |
US20230205619A1 (en) | Common platform for fulfilling different actions | |
CN114253984A (zh) | 信息更新方法、装置、电子设备和存储介质 | |
CN115865974A (zh) | 边缘设备、云端设备、边缘计算系统及方法和存储介质 | |
CN111832015A (zh) | 异常请求识别方法、装置、系统、介质及电子设备 | |
CN110780040A (zh) | 有害气体数据处理方法、装置、电子设备及存储介质 | |
US20240118933A1 (en) | Transaction Method and Apparatus with Fixed Execution Order | |
CN110177096A (zh) | 客户端认证方法、装置、介质和计算设备 | |
CN112910643B (zh) | 一种区块链中随机数的生成方法及装置 | |
CN115243256A (zh) | 一种网关动态登录方法及装置 | |
CN114553548A (zh) | 通信方法、装置、设备及存储介质 | |
CN113395240B (zh) | 数据获取方法、装置、设备及介质 | |
CN113344598A (zh) | 数据校验方法、装置、介质及电子设备 | |
CN114327802A (zh) | 区块链访问链外数据的方法、装置、设备和介质 | |
CN114499951A (zh) | 身份认证信息的破解方法、装置和电子设备 | |
US20240160760A1 (en) | E-mail address verification | |
CN114610511B (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 |