CN103530541A - 一种验证码生成方法及装置 - Google Patents
一种验证码生成方法及装置 Download PDFInfo
- Publication number
- CN103530541A CN103530541A CN201310466695.8A CN201310466695A CN103530541A CN 103530541 A CN103530541 A CN 103530541A CN 201310466695 A CN201310466695 A CN 201310466695A CN 103530541 A CN103530541 A CN 103530541A
- Authority
- CN
- China
- Prior art keywords
- unit
- phrases
- chinese
- chinese character
- phonetic alphabet
- 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.)
- Pending
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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- 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/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2133—Verifying human interaction, e.g., Captcha
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
本申请公开了一种验证码生成方法及装置,建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字;当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。该方法生成并显示给用户的验证码便于用户输入验证内容,使验证过程方便简捷。
Description
技术领域
本申请涉及网页验证技术领域,更具体地说是涉及一种验证码生成方法及装置。
背景技术
当前,很多网站都采用验证码技术进行内容验证,以提高网站自身的安全性。验证过程包括:计算机自动生成验证码显示给用户,并对用户输入的验证内容进行评判,以此来决定是否允许用户进行后续操作。所述验证码技术被广泛地应用于防止非法用户利用程序恶意批量注册、恶意破解密码、刷票、论坛灌水等网络行为中。
能否生成便于验证的验证码,是决定此项技术能否有效应用的一个重要前提。现有生成验证码的方式是随机生成汉字验证码。但是,由于目前大多数网站用户习惯使用拼音输入法进行汉字输入,此种方式生成的验证码中会包含有用户不熟悉的汉字,不便于用户进行验证内容的输入。
发明内容
有鉴于此,本申请提供了一种验证码生成方法及装置,用以解决现有技术中生成汉字验证码不便于用户进行输入的问题。
一种验证码生成方法,包括:
建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字;
当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
优选的,所述建立包含有多个词组单元的词库包括:
获取多个词语单元;其中,所述词语单元中包含有至少两个汉字,且各个汉字间存在语义关系;
随机选取所述词语单元中任意一个汉字作为目标汉字;
将所述词语单元保存至词库中,其中,所述词语单元中的目标汉字保存为其所对应的汉语拼音;并保存所述目标汉字与其所对应汉语拼音的对应关系。
优选的,所述建立包含有多个词组单元的词库包括:
获取多个词组单元;其中,所述词组单元中包含有至少一个汉语拼音和至少一个汉字;
在所述汉语拼音表示的汉字中,选取与所述词组单元中的汉字存在语义关系的目标汉字;
将所述词组单元保存至词库中,并保存所述目标汉字与所述汉语拼音的对应关系。
优选的,还包括:
为所述词库中的各个词组单元分配索引号,建立各个词组单元与其所对应索引号之间的索引关系。
优选的,所述当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户,包括:
当接收到用户的验证码获取指令时,随机产生索引号;
提取所述词库中与所述索引号对应的词组单元,将所述词组单元显示给用户。
一种验证码生成装置,包括:
建立单元,用于建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字;
生成单元,用于当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
优选的,所述建立单元包括:
第一获取子单元,用于获取多个词语单元;其中,所述词语单元中包含有至少两个汉字,且各个汉字间存在语义关系;
第一选取子单元,用于随机选取所述词语单元中任意一个汉字作为目标汉字;
第一保存子单元,用于将所述词语单元保存至词库中,其中,所述词语单元中的目标汉字保存为其所对应的汉语拼音;并保存所述目标汉字与其所对应汉语拼音的对应关系。
优选的,所述建立单元包括:
第二获取子单元,用于获取多个词组单元;其中,所述词组单元中包含有至少一个汉语拼音和至少一个汉字;
第二选取子单元,用于在所述汉语拼音表示的汉字中,选取与所述词组单元中的汉字存在语义关系的目标汉字;
第二保存子单元,用于将所述词组单元保存至词库中,并保存所述目标汉字与所述汉语拼音的对应关系。
优选的,还包括:
建立索引单元,用于为所述词库中的各个词组单元分配索引号,建立各个词组单元与其所对应索引号之间的索引关系。
优选的,所述生成单元包括:
第一生成子单元,用于当接收到用户的验证码获取指令时,随机产生索引号;
第二生成子单元,用于提取所述词库中与所述索引号对应的词组单元,将所述词组单元显示给用户。
由上述技术方案可知,本发明提供了一种验证码生成方法及装置,建立包含有多个词组单元的词库,当接收到用户的验证码获取指令时,从所述词库中随机选取一词组单元作为验证码显示给用户。其中,所述词组单元包含有汉语拼音及汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系。从而,在大多数网站用户使用汉语拼音进行文字输入的情况下,所述验证码中的汉语拼音用以提示用户如何拼写输入的汉字,所述语义关系用以提示用户在拼写获得的多个汉字中,确定出应用于该验证码语境下的汉字,该汉字即为该验证码的验证答案。相较于现有技术中随机生成的汉字验证码中包含用户不熟悉的汉字,且汉字间没有语义关系进行输入提示,本发明提供的技术方案生成的验证码更便于用户进行验证答案的输入。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的一种验证码生成方法一个实施例的流程图;
图2为本申请提供的一种验证码生成方法另一实施例的流程图;
图3为本申请提供的一种验证码生成方法又一实施例的流程图;
图4为本申请提供的一种验证码生成方法又一实施例的流程图;
图5为本申请提供的一种验证码生成装置一个实施例的结构示意图;
图6为本申请提供的一种验证码生成装置另一实施例的结构示意图;
图7为本申请提供的一种验证码生成装置又一实施例的结构示意图;
图8为本申请提供的一种验证码生成装置又一实施例的结构示意图;
图9为本申请提供的验证码词库中词组单元的一种保存形式示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,很多网站利用验证码技术进行内容验证,生成何种形式的验证码对所述验证过程起着关键作用。当今大多数网络用户使用汉语拼音输入法进行文字输入,本发明实施例公开了一种验证码生成方法,所述方法生成的验证码,便于用户利用汉语拼音及验证码中文字之间的语义关系确定验证答案,从而进行验证内容的输入。
参阅图1,其示出了一种验证码生成方法一个实施例的流程示意图,本实施例的方法可以包括:
步骤S101:建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字。
所述词库中包含有多个词组单元,所述词组单元包含有至少一个汉语拼音及至少一个汉字。优选的,所述词组单元包含一个汉语拼音及三个汉字,词组内容为常用成语、习惯用语,如厚德zai物、打tui堂鼓。另外,所述词组单元还可以包含一个汉语拼音及两个或四个汉字,其内容为常用人物名字、习惯用语等,如诸葛liang、wa墙角、乱点鸳鸯pu。
需要说明的是,所述词组单元中汉语拼音对应的汉字与所述词组单元中的其他汉字之间存在语义关联关系,此种语义关系可以表现为上述说明的常用成语、习惯用语、人物名字等。例如,“厚德zai物”中的zai对应的“载”字与“厚”“德”“物”字组成成语,用以表示以崇高的道德、博大精深的学识培育学子成才。在现有生成验证码技术生成的汉字验证码中,各个汉字孤立存在,并不存在所述语义关系,如“忘”“海”“殷”。
当然,所述词组单元并不限于以上几种形式,只要包含至少一个汉语拼音及至少一个汉字且存在某种语义关系的词组,都属于本发明所保护的技术方案。
步骤S102:当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
所述词库中包含有多个所述词组单元,所述词组单元具有步骤S101中表述的形式及内容的特征,即有汉语拼音且汉字间存在语义关系。从所述词库中随机提取一个词组单元,作为验证码显示给用户,所述验证码要求用户输入汉语拼音对应的正确汉字,才可进行后续操作。
需要说明的是,可以用画图的方法将所述验证码生成图片,并在所述图片中添加入随机干扰素,显示给用户。当然,将所述验证码进行显示还可以采用现有的其他显示方法,在此不一一进行列举。
在本实施例的技术方案中,建立包含有多个词组单元的词库,当接收到用户的验证码获取指令时,从所述词库中随机选取一词组单元作为验证码显示给用户。其中,所述验证码包含有汉语拼音及汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系。
大多数网站用户使用汉语拼音进行文字输入,用本实施例提供的验证码生成方法生成的验证码进行验证时,所述验证码中的汉语拼音提示用户如何进行汉字拼写,同时,所述语义关系提示用户在拼写出的多个汉字中确定该验证码的语义情境下的汉字(该汉字即为该验证码的验证答案),从而完成验证答案的输入。进一步的,当用户使用的汉语拼音输入方式中具有自动组词功能时,用户输入所述验证码中的一部分字词拼音时,即可得到完整的汉字词组,用户不必选择,直接输入验证码要求的汉字即可。
因此,相较于现有技术中随机生成的汉字验证码中包含用户不熟悉的汉字,且汉字间孤立存在,没有语义关系进行输入提示,本实施例提供的技术方案生成的验证码更便于用户进行验证答案的输入。
另外,本实施例中生成的词组单元数量较大且定期更换,相较于现有技术中生成数字、字母或两者的组合形式的验证码,非法程序不易于破解,因而安全性更高。
本发明提供的验证码生成方法中,需建立包含有多个词组单元的词库。所述词库的建立有多种方式,其中一种方式为在包含汉字的词语单元中随机确定目标汉字,并保存所述目标汉字与其所对应的汉语拼音间的对应关系。具体技术方案请参阅图2,其示出了一种验证码生成方法又一种实施例流程示意图,本实施例的方法可以包括:
步骤S201:获取多个词语单元;其中,所述词语单元中包含有至少两个汉字,且各个汉字间存在语义关系;
获取的所述词语单元中包含至少两个汉字,优选的,所述词语单元包含四个汉字。同时,所述汉字间存在语义关系,例如常用成语、习惯用语、谚语、人名等。例如,成语“秋高气爽”、习惯用语“立军令状”、人名“爱因斯坦”。另外,所述词组单元还可以包括三个汉字或五个汉字,且所述各个汉字间存在语义关系。例如,习惯用语“敲木鱼”“打肿脸充胖子”、人名“蔺相如”。当然,所述词语单元并不限于此几种形式,包含其他汉字个数或具有其他语义关系的词语单元都属于本实施例的保护范围。
需要说明的是,可以在预先建立的汉字词库中获取所述各个词语单元。所述汉字词库中包含有多个汉字词语,所述词语中的各个汉字间存在语义关系。
步骤S202:随机选取所述词语单元中任意一个汉字作为目标汉字;
在所述词语单元中随机确定某一个汉字,例如,将成语“秋高气爽”中的“爽”字确定为目标汉字。确定所述目标汉字,用于将所述目标汉字的汉语拼音作为验证码的一部分显示给用户,要求用户输入所述汉语拼音对应的所述汉字。需要说明的是,所述选取目标汉字的过程是计算机设备自动完成的。
步骤S203:将所述词语单元保存至词库中,其中,所述词语单元中的目标汉字保存为其所对应的汉语拼音;并保存所述目标汉字与其所对应汉语拼音的对应关系。
获取上一步骤中确定的目标汉字的汉语拼音,将所述词语单元中目标汉字替换为所述汉语拼音,保存所述替换后的词语单元至词库中。例如,获取“秋高气爽”中“爽”字的汉语拼音“shuang”,将所述“秋高气爽”保存为“秋高气shuang”。
同时,保存所述目标汉字与其所述汉语拼音间的对应关系。其中,所述目标汉字即验证码的验证答案,保存所述对应关系,用于判定用户根据汉语拼音提示输入的汉字是否是验证答案要求的汉字。
步骤S204:当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
本步骤与图1所示流程图中的步骤S102内容相同,在此不做赘述。
在本实施例的技术方案中,建立包含有多个词组单元词库的一种实现方式为:获取多个词语单元,所述词语单元中包含有至少两个汉字,且各个汉字间存在语义关系;随机选取所述词语单元中任意一个汉字作为目标汉字;将所述词语单元保存至词库中,其中,所述词语单元中的目标汉字保存为其所对应的汉语拼音,所述汉语拼音用于提示用户如何拼写汉字的汉语拼音,并保存所述目标汉字与其所对应汉语拼音的对应关系,所述对应关系用于判定用户根据所述汉语拼音输入的汉字是否为验证答案。
需要说明的是,本实施例中随机自动确定词语单元中某一个汉字作为目标汉字,并在保存所述词语单元时,自动将所述目标汉字保存为其所对应的汉语拼音形式,从而生成包含有至少一个汉语拼音及至少一个汉字形式的词语单元,所述词语单元组成验证码生成方法中的词库。
本发明提供的验证码生成方法中,需建立包含有多个词组单元的词库。所述词库的建立有多种方式,另外一种方式为获取包含有至少一个汉字及至少一个汉语拼音的词组单元,选取所述汉语拼音对应的验证答案汉字,保存所述验证答案汉字与所述汉语拼音间的对应关系。具体技术方案请参阅图3,其示出了一种验证码生成方法又一种实施例流程示意图,本实施例可以包括:
步骤S301:获取多个词组单元;其中,所述词组单元中包含有至少一个汉语拼音和至少一个汉字。
获取的词组单元中包含有至少一个汉语拼音及至少一个汉字,所述汉语拼音对应的汉字与所述词组中的汉字存在语义关系。优选的,所述词组单元为包含有一个汉语拼音及三个汉字的常用成语,例如,“暗度chen仓”。另外,所述词组单元还可以包含一个汉语拼音及两个或四个汉字,语义关系可以为常用成语、习惯用语、人物名字等,例如诸葛liang、wa墙角、乱点鸳鸯pu。
当然,所述词组单元并不限于以上几种形式,只要包含至少一个汉语拼音及至少一个汉字且存在某种语义关系的词组,都属于本实施例所保护的技术方案。
步骤S302:在所述汉语拼音表示的汉字中,选取与所述词组单元中的汉字存在语义关系的目标汉字。
在汉语语境下,某个汉语拼音表示至少一个汉字,所述词组单元中包含的汉语拼音同样表示至少一个汉字,例如,汉语拼音chen对应的汉字可以有沉、陈、晨、尘等。由于在所述词组单元中,所述汉语拼音表示的汉字与所述词组单元中的汉字存在语义关系,所述语义关系决定只有“陈”字才是所述词组单元中的汉语拼音所表示的汉字。因此,在所述汉语拼音表示的各个汉字中,选取所述语义关系决定的目标汉字。其中,所述目标汉字是所述词组单元作为验证码时的验证答案。
步骤S303:将所述词组单元保存至词库中,并保存所述目标汉字与所述汉语拼音的对应关系。
保存所述目标汉字与所述汉语拼音的对应关系,当所述词组单元作为验证码用于验证过程中时,所述对应关系用于验证用户输入的汉字是否是所述验证码中的验证答案。
步骤S304:当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
本步骤与图1所示流程图中的步骤S102内容相同,在此不做赘述。
在本实施例的技术方案中,建立包含有多个词组单元词库的另一种实现方式为:获取多个词语单元,所述词语单元中包含有至少一个汉语拼音及至少一个汉字,所述汉语拼音对应的汉字与所述词组单元中汉字间存在语义关系;在所述汉语拼音表示的各个汉字中,选取与所述词组单元中的汉字存在所述语义关系的目标汉字;保存所述词组单元,并保存所述目标汉字与所述词组单元中汉字的语义关系。当所述词组单元作为验证码显示给用户时,所述汉语拼音用于提示用户如何拼写汉字的汉语拼音,所述对应关系用于判定用户根据所述汉语拼音输入的汉字是否为验证答案。
本发明提供的验证码生成方法中,需要在建立的词库中提取所述词库中的词组单元,将所述词组单元显示给用户,进而用户可以根据显示在网页中的验证码进行验证过程。所述提取词组单元的一种实现方式为:为所述词库中的各个词组单元建立索引,依据随机产生的索引号进行词组单元的提取。具体的技术方案请参阅图4,其示出了一种验证码生成方法的又一种实施例的流程示意图,本实施例可以包括:
步骤S401:建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字。
本步骤与图1所示的步骤S101内容一致,在此不做赘述。
步骤S402:为所述词库中的各个词组单元分配索引号,建立各个词组单元与其所对应索引号之间的索引关系。
为所述词库中的各个词组单元分配索引号,所述索引号的形式不唯一,可以为从1开始依次排列的整数值形式,例如1、2、3;也可以为从a开始依次排列的英文字母形式,例如a、b、c。将所述各个词组单元唯一对应某一个索引号,所述索引号与所述词组单元间建立的索引关系即一一对应的映射关系。请参阅图9,其示出了词库中词组单元的一种保存形式。所述保存形式中为各个词组单元依次配置有唯一对应的数值索引号。
当然,索引号的形式并不限于上述两种形式,只要能用以唯一确定词组单元,都属于实施例保护的技术方案。
步骤S403:当接收到用户的验证码获取指令时,随机产生索引号;
当用户在网页中进行验证码验证时,会产生验证码获取指令,所述指令用以触发所述验证码生成方法中提取验证码步骤的执行,从而生成验证码显示在网页中。
所述词库中的词组单元唯一对应一个索引号,因此,可以利用随机函数随机生成满足一定条件的索引号,利用所述索引号提取所述词库中的词组单元。所述条件,指随机生成的索引号在各种形式的索引号的范围之内。例如,请参阅图9,其示出的索引号形式为数值,则可以生成一个随机整数值5,所述整数值满足大于0小于等于所述词库中的最大索引号数值即100。
步骤S404:提取所述词库中与所述索引号对应的词组单元,将所述词组单元显示给用户。
利用随机生成的所述索引号,在所述词库中提取所述索引号所唯一对应的词组单元,将所述词组单元作为验证码显示给用户,用户通过输入所述验证码中的汉语拼音对应的汉字,完成验证过程。其中所述汉字与所述词组单元中的汉字存在语义关系。
在本实施例的技术方案中,建立包含有多个词组单元的词库,为所述词库中的各个词组单元分配索引号,建立各个词组单元与其所对应索引号之间的索引关系,所述索引关系为一一对应的映射关系。当接收到用户的验证码获取指令时,随机产生索引号,利用所述索引号及所述映射关系在所述词库中提取词组单元,将所述词组单元显示给用户。需要说明的是,用于提取词组单元的索引号是随机产生的,进而生成的验证码具有随机性,可以提高验证码的安全性。
参阅图5,其示出了一种验证码生成装置的一个实施例的结构示意图,本实施例的装置可以包括:建立单元501及生成单元502。
所述建立单元501,用于建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字。
建立的所述词库中包含有多个词组单元,所述词组单元包含有至少一个汉语拼音及至少一个汉字。优选的,所述词组单元包含一个汉语拼音及三个汉字,词组内容为常用成语、习惯用语,如厚德zai物、打tui堂鼓。另外,所述词组单元还可以包含一个汉语拼音及两个或四个汉字,其内容为常用人物名字、习惯用语等,如诸葛liang、wa墙角、乱点鸳鸯pu。
需要说明的是,所述词组单元中汉语拼音对应的汉字与所述词组单元中的其他汉字之间存在语义关联关系,此种语义关系可以表现为上述说明的常用成语、习惯用语、人物名字等。例如,“厚德zai物”中的zai对应的“载”字与“厚”“德”“物”字组成成语,用以表示以崇高的道德、博大精深的学识培育学子成才。在现有生成验证码技术生成的汉字验证码中,各个汉字孤立存在,并不存在所述语义关系,如“忘”“海”“殷”。
当然,所述词组单元并不限于以上几种形式,只要包含至少一个汉语拼音及至少一个汉字且存在某种语义关系的词组,都属于本发明所保护的技术方案。
所述生成单元502,用于当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
所述建立单元501建立的所述词库中包含有多个所述词组单元,所述词组单元具有所述建立单元501中表述的形式及内容的特征,即有汉语拼音且汉字间存在语义关系。从所述词库中随机提取一个词组单元,作为验证码显示给用户,所述验证码要求用户输入汉语拼音对应的正确汉字,才可进行后续操作。
需要说明的是,可以用画图的方法将所述验证码生成图片,并在所述图片中添加入随机干扰素,显示给用户。当然,将所述验证码进行显示还可以采用现有的其他显示方法,在此不一一进行列举。
在本实施例的技术方案中,所述建立单元502建立包含有多个词组单元的词库,当接收到用户的验证码获取指令时,所述生成单元502从所述词库中随机选取一词组单元作为验证码显示给用户。其中,所述验证码包含有汉语拼音及汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系。
大多数网站用户使用汉语拼音进行文字输入,用本实施例提供的验证码生成装置生成的验证码进行验证时,所述验证码中的汉语拼音提示用户如何进行汉字拼写,同时,所述语义关系提示用户在拼写出的多个汉字中确定该验证码的语义情境下的汉字(该汉字即为该验证码的验证答案),从而完成验证答案的输入。进一步的,当用户使用的汉语拼音输入方式中具有自动组词功能时,用户输入所述验证码中的一部分字词拼音时,即可得到完整的汉字词组,用户不必选择,直接输入验证码要求的汉字即可。
因此,相较于现有技术中随机生成的汉字验证码中包含用户不熟悉的汉字,且汉字间孤立存在,没有语义关系进行输入提示,本实施例提供的技术方案生成的验证码更便于用户进行验证答案的输入。
另外,本实施例中生成的词组单元数量较大且定期更换,相较于现有技术中生成数字、字母或两者的组合形式的验证码,非法程序不易于破解,因而安全性更高。
图5示出的本发明提供的一种验证码生成装置中的建立单元501具有多种实现方式,其中一种实现方式请参阅图6,其示出了一种验证码生成装置的另一个实施例的结构示意图,本实施例的装置可以包括:第一获取子单元601、第一选取子单元602、第一保存子单元603及生成单元604。
所述第一获取子单元601,用于获取多个词语单元;其中,所述词语单元中包含有至少两个汉字,且各个汉字间存在语义关系。
所述第一获取单元601获取的所述词语单元中包含至少两个汉字,优选的,所述词语单元包含四个汉字。同时,所述汉字间存在语义关系,例如常用成语、习惯用语、谚语、人名等。例如,成语“秋高气爽”、习惯用语“立军令状”、人名“爱因斯坦”。另外,所述词组单元还可以包括三个汉字或五个汉字,且所述各个汉字间存在语义关系。例如,习惯用语“敲木鱼”“打肿脸充胖子”、人名“蔺相如”。当然,所述词语单元并不限于此几种形式,包含其他汉字个数或具有其他语义关系的词语单元都属于本实施例的保护范围。
需要说明的是,可以在预先建立的汉字词库中获取所述各个词语单元。所述汉字词库中包含有多个汉字词语,所述词语中的各个汉字间存在语义关系。
所述第一选取子单元602,用于随机选取所述词语单元中任意一个汉字作为目标汉字。
第一选取单元602在所述词语单元中随机确定某一个汉字,例如,将成语“秋高气爽”中的“爽”字确定为目标汉字。确定所述目标汉字,用于将所述目标汉字的汉语拼音作为验证码的一部分显示给用户,要求用户输入所述汉语拼音对应的所述汉字。需要说明的是,所述选取目标汉字的过程是由第一选取单元602自动完成的。
所述第一保存子单元603,用于将所述词语单元保存至词库中,其中,所述词语单元中的目标汉字保存为其所对应的汉语拼音;并保存所述目标汉字与其所对应汉语拼音的对应关系。
获取第一选取单元602确定的目标汉字的汉语拼音,第一保存子单元603将所述词语单元中目标汉字替换为所述汉语拼音,保存所述替换后的词语单元至词库中。例如,获取“秋高气爽”中“爽”字的汉语拼音“shuang”,将所述“秋高气爽”保存为“秋高气shuang”。
同时,第一保存子单元603保存所述目标汉字与其所述汉语拼音间的对应关系。其中,所述目标汉字即验证码的验证答案,保存所述对应关系,用于判定用户根据汉语拼音提示输入的汉字是否是验证答案要求的汉字。
所述生成单元604,用于当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
本单元与图5所示结构示意图中的单元502内容相同,在此不做赘述。
在本实施例的技术方案中,图5所述的建立单元501的一种实现方式包括:第一获取子单元601,用于获取多个词语单元,所述词语单元中包含有至少两个汉字,且各个汉字间存在语义关系;第一选取子单元602,用于随机选取所述词语单元中任意一个汉字作为目标汉字;第一保存子单元603,用于将所述词语单元保存至词库中,其中,所述词语单元中的目标汉字保存为其所对应的汉语拼音,所述汉语拼音用于提示用户如何拼写汉字的汉语拼音,并保存所述目标汉字与其所对应汉语拼音的对应关系,所述对应关系用于判定用户根据所述汉语拼音输入的汉字是否为验证答案。
需要说明的是,本实施例中第一选取单元602随机自动确定词语单元中某一个汉字作为目标汉字,第一保存子单元603在保存所述词语单元时,自动将所述目标汉字保存为其所对应的汉语拼音形式,从而生成包含有至少一个汉语拼音及至少一个汉字形式的词语单元,所述词语单元组成验证码生成装置中建立单元501建立的词库。
图5示出的本发明提供的一种验证码生成装置中的建立单元501具有多种实现方式,另一种实现方式请参阅图7,其示出了一种验证码生成装置的又一个实施例的结构示意图,本实施例的装置可以包括:第二获取子单元701、第二选取子单元702、第二保存子单元703及生成单元704。
所述第二获取子单元701,用于获取多个词组单元;其中,所述词组单元中包含有至少一个汉语拼音和至少一个汉字。
第二获取子单元701获取的词组单元中包含有至少一个汉语拼音及至少一个汉字,所述汉语拼音对应的汉字与所述词组中的汉字存在语义关系。优选的,所述词组单元为包含有一个汉语拼音及三个汉字的常用成语,例如,“暗度chen仓”。另外,所述词组单元还可以包含一个汉语拼音及两个或四个汉字,语义关系可以为常用成语、习惯用语、人物名字等,例如诸葛liang、wa墙角、乱点鸳鸯pu。
当然,获取的所述词组单元并不限于以上几种形式,只要包含至少一个汉语拼音及至少一个汉字且存在某种语义关系的词组,都属于本实施例所保护的技术方案。
所述第二选取子单元702,用于在所述汉语拼音表示的汉字中,选取与所述词组单元中的汉字存在语义关系的目标汉字。
在汉语语境下,某个汉语拼音表示至少一个汉字,所述词组单元中包含的汉语拼音同样表示至少一个汉字,例如,汉语拼音chen对应的汉字可以有沉、陈、晨、尘等。由于在所述第二获取子单元701获取的所述词组单元中,所述汉语拼音表示的汉字与所述词组单元中的汉字存在语义关系,所述语义关系决定只有“陈”字才是所述词组单元中的汉语拼音所表示的汉字。因此,在所述汉语拼音表示的各个汉字中,第二选取子单元702选取所述语义关系决定的目标汉字。其中,所述目标汉字是所述词组单元作为验证码时的验证答案。
所述第二保存子单元703,用于将所述词组单元保存至词库中,并保存所述目标汉字与所述汉语拼音的对应关系。
第二保存子单元703保存所述目标汉字与所述汉语拼音的对应关系,当所述词组单元作为验证码用于验证过程中时,所述对应关系用于验证用户输入的汉字是否是所述验证码中的验证答案。
所述生成单元704,用于当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
本单元与图5所示结构示意图中的生成单元502内容相同,在此不做赘述。
在本实施例的技术方案中,图5中所述的建立单元501的另一种实现方式包括:第二获取子单元701获取多个词语单元,所述词语单元中包含有至少一个汉语拼音及至少一个汉字,所述汉语拼音对应的汉字与所述词组单元中汉字间存在语义关系;第二选取子单元702在所述汉语拼音表示的各个汉字中,选取与所述词组单元中的汉字存在所述语义关系的目标汉字;第三保存子单元703保存所述词组单元,并保存所述目标汉字与所述词组单元中汉字的语义关系。当所述词组单元作为验证码显示给用户时,所述汉语拼音用于提示用户如何拼写汉字的汉语拼音,所述对应关系用于判定用户根据所述汉语拼音输入的汉字是否为验证答案。
图5示出的本发明提供的一种验证码生成装置中的生成单元502具有多种实现方式,其中一种实现方式请参阅图8,其示出了一种验证码生成装置的又一种实施例的结构示意图,本实施例的装置可以包括:建立单元801、建立索引单元802、第一生成子单元803及第二生成子单元804。
所述建立单元801,用于建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字。
本单元与图5所述的建立单元501内容一致,在此不做赘述。
所述建立索引单元802,用于为所述词库中的各个词组单元分配索引号,建立各个词组单元与其所对应索引号之间的索引关系。
建立索引单元802为所述词库中的各个词组单元分配索引号,所述索引号的形式不唯一,可以为从1开始依次排列的整数值形式,例如1、2、3;也可以为从a开始依次排列的英文字母形式,例如a、b、c。建立索引单元802可以实现将所述各个词组单元唯一对应某一个索引号,所述索引号与所述词组单元间建立的索引关系即一一对应的映射关系。当然,索引号的形式并不限于上述两种形式,只要能用以唯一确定词组单元,都属于实施例保护的技术方案。
所述第一生成子单元803,用于当接收到用户的验证码获取指令时,随机产生索引号。
当用户在网页中进行验证码验证时,会产生验证码获取指令,所述指令用以触发所述验证码生成装置中第二生成子单元804提取验证码,从而生成验证码显示在网页中。
所述建立单元801建立的词库中包含的词组单元均唯一对应一个索引号,因此,第一生成子单元803可以利用随机函数随机生成满足一定条件的索引号,利用所述索引号提取所述词库中的词组单元。所述条件,指随机生成的索引号在各种形式的索引号的范围之内。例如,请参阅图9,其示出的索引号形式为数值,则第一生成子单元803可以生成一个随机整数值5,所述整数值满足大于0小于等于所述词库中的最大索引号数值即100。
所述第二生成子单元804,用于提取所述词库中与所述索引号对应的词组单元,将所述词组单元显示给用户。
利用第一生成子单元803随机生成的索引号,第二生成子单元804在所述词库中提取所述索引号所唯一对应的词组单元,将所述词组单元作为验证码显示给用户。用户通过输入所述验证码中的汉语拼音对应的汉字,完成验证过程。其中所述汉字与所述词组单元中的汉字存在语义关系。
在本实施例的技术方案中,建立单元801建立包含有多个词组单元的词库,建立索引单元802为所述词库中的各个词组单元分配索引号,建立各个词组单元与其所对应索引号之间的索引关系,所述索引关系为一一对应的映射关系。当接收到用户的验证码获取指令时,第一生成子单元803随机产生索引号,第二生成子单元804利用所述索引号及所述映射关系在所述词库中提取词组单元,将所述词组单元显示给用户。需要说明的是,用于提取词组单元的索引号是随机产生的,进而生成的验证码具有随机性,可以提高验证码的安全性。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本发明所提供的一种验证码生成方法及装置进行了详细介绍,对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种验证码生成方法,其特征在于,包括:
建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字;
当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
2.根据权利要求1所述的方法,其特征在于,所述建立包含有多个词组单元的词库包括:
获取多个词语单元;其中,所述词语单元中包含有至少两个汉字,且各个汉字间存在语义关系;
随机选取所述词语单元中任意一个汉字作为目标汉字;
将所述词语单元保存至词库中,其中,所述词语单元中的目标汉字保存为其所对应的汉语拼音;并保存所述目标汉字与其所对应汉语拼音的对应关系。
3.根据权利要求1所述的方法,其特征在于,所述建立包含有多个词组单元的词库包括:
获取多个词组单元;其中,所述词组单元中包含有至少一个汉语拼音和至少一个汉字;
在所述汉语拼音表示的汉字中,选取与所述词组单元中的汉字存在语义关系的目标汉字;
将所述词组单元保存至词库中,并保存所述目标汉字与所述汉语拼音的对应关系。
4.根据权利要求1至3任意一项所述的方法,其特征在于,还包括:
为所述词库中的各个词组单元分配索引号,建立各个词组单元与其所对应索引号之间的索引关系。
5.根据权利要求4所述的方法,其特征在于,所述当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户,包括:
当接收到用户的验证码获取指令时,随机产生索引号;
提取所述词库中与所述索引号对应的词组单元,将所述词组单元显示给用户。
6.一种验证码生成装置,其特征在于,包括:
建立单元,用于建立包含有多个词组单元的词库;其中,所述词组单元包含有至少一个汉语拼音和至少一个汉字;所述汉语拼音对应的汉字与所述词组单元中的汉字存在语义关系;所述语义关系用于使用户依据该语义关系输入与所述汉语拼音相对应的汉字;
生成单元,用于当接收到用户的验证码获取指令时,从所述词库中随机提取一词组单元,将所述词组单元显示给用户。
7.根据权利要求6所述的装置,其特征在于,所述建立单元包括:
第一获取子单元,用于获取多个词语单元;其中,所述词语单元中包含有至少两个汉字,且各个汉字间存在语义关系;
第一选取子单元,用于随机选取所述词语单元中任意一个汉字作为目标汉字;
第一保存子单元,用于将所述词语单元保存至词库中,其中,所述词语单元中的目标汉字保存为其所对应的汉语拼音;并保存所述目标汉字与其所对应汉语拼音的对应关系。
8.根据权利要求6所述的装置,其特征在于,所述建立单元包括:
第二获取子单元,用于获取多个词组单元;其中,所述词组单元中包含有至少一个汉语拼音和至少一个汉字;
第二选取子单元,用于在所述汉语拼音表示的汉字中,选取与所述词组单元中的汉字存在语义关系的目标汉字;
第二保存子单元,用于将所述词组单元保存至词库中,并保存所述目标汉字与所述汉语拼音的对应关系。
9.根据权利要求6至8任意一项所述的装置,其特征在于,还包括:
建立索引单元,用于为所述词库中的各个词组单元分配索引号,建立各个词组单元与其所对应索引号之间的索引关系。
10.根据权利要求9所述的装置,其特征在于,所述生成单元包括:
第一生成子单元,用于当接收到用户的验证码获取指令时,随机产生索引号;
第二生成子单元,用于提取所述词库中与所述索引号对应的词组单元,将所述词组单元显示给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310466695.8A CN103530541A (zh) | 2013-10-09 | 2013-10-09 | 一种验证码生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310466695.8A CN103530541A (zh) | 2013-10-09 | 2013-10-09 | 一种验证码生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103530541A true CN103530541A (zh) | 2014-01-22 |
Family
ID=49932545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310466695.8A Pending CN103530541A (zh) | 2013-10-09 | 2013-10-09 | 一种验证码生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103530541A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104765566A (zh) * | 2015-05-04 | 2015-07-08 | 集怡嘉数码科技(深圳)有限公司 | 一种用户设备解锁方法 |
CN104883351A (zh) * | 2015-03-13 | 2015-09-02 | 小米科技有限责任公司 | 多因子认证方法和装置 |
CN106709294A (zh) * | 2015-11-12 | 2017-05-24 | 北京搜狗科技发展有限公司 | 一种用户认证方法和装置 |
CN107241343A (zh) * | 2017-06-30 | 2017-10-10 | 环球智达科技(北京)有限公司 | 基于redis的数字验证码的获取方法 |
CN110990821A (zh) * | 2019-11-25 | 2020-04-10 | 泰康保险集团股份有限公司 | 一种身份类型验证方法、装置及存储介质 |
CN112231655A (zh) * | 2019-07-15 | 2021-01-15 | 阿里巴巴集团控股有限公司 | 一种数据处理方法、计算机设备、存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075507A (zh) * | 2010-07-30 | 2011-05-25 | 百度在线网络技术(北京)有限公司 | 一种用于基于词句验证图进行用户验证的方法与设备 |
-
2013
- 2013-10-09 CN CN201310466695.8A patent/CN103530541A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075507A (zh) * | 2010-07-30 | 2011-05-25 | 百度在线网络技术(北京)有限公司 | 一种用于基于词句验证图进行用户验证的方法与设备 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104883351A (zh) * | 2015-03-13 | 2015-09-02 | 小米科技有限责任公司 | 多因子认证方法和装置 |
CN104883351B (zh) * | 2015-03-13 | 2019-02-12 | 小米科技有限责任公司 | 多因子认证方法和装置 |
CN104765566A (zh) * | 2015-05-04 | 2015-07-08 | 集怡嘉数码科技(深圳)有限公司 | 一种用户设备解锁方法 |
CN106709294A (zh) * | 2015-11-12 | 2017-05-24 | 北京搜狗科技发展有限公司 | 一种用户认证方法和装置 |
CN106709294B (zh) * | 2015-11-12 | 2020-07-21 | 北京搜狗科技发展有限公司 | 一种用户认证方法和装置 |
CN107241343A (zh) * | 2017-06-30 | 2017-10-10 | 环球智达科技(北京)有限公司 | 基于redis的数字验证码的获取方法 |
CN112231655A (zh) * | 2019-07-15 | 2021-01-15 | 阿里巴巴集团控股有限公司 | 一种数据处理方法、计算机设备、存储介质 |
CN110990821A (zh) * | 2019-11-25 | 2020-04-10 | 泰康保险集团股份有限公司 | 一种身份类型验证方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103530541A (zh) | 一种验证码生成方法及装置 | |
CN102724191A (zh) | 一种图文结合的Web验证码安全防护方法及装置 | |
US9129100B2 (en) | Verification code generation and verification method and apparatus | |
CN102202067B (zh) | 动态随机密码登录方法 | |
WO2015161760A1 (zh) | 短信息验证码的驻留方法及装置 | |
CN107357824B (zh) | 信息处理方法、服务平台及计算机存储介质 | |
CN103177204A (zh) | 密码信息提示方法及装置 | |
Dulera et al. | Experimenting with the novel approaches in text steganography | |
CN103543980B (zh) | 数字数据处理的方法及装置 | |
US9613019B2 (en) | Techniques for automatically generating test data | |
US20170169211A1 (en) | One kind of website passwords generating method and apparatus | |
US10032015B2 (en) | Password input method based on a two-stage conversion and a system using thereof | |
Ivasenko et al. | Information Transmission Protection Using Linguistic Steganography With Arithmetic Encoding And Decoding Approach | |
CN104298905B (zh) | 一种基于两级转换的口令输入方法及系统 | |
US11163869B2 (en) | Identity authentication without entry of password | |
Lei | Image CAPTCHA technology research based on the mechanism of finger-guessing game | |
JP6084081B2 (ja) | パスワード生成装置 | |
CN105095732A (zh) | 移动终端的解锁方法和装置 | |
TWI652593B (zh) | Password setting method, login method and device | |
CN110543754A (zh) | 存储器、验证码实现方法、装置和设备 | |
JP2008005371A (ja) | 日本語パスワード変換装置及びその方法 | |
CN110324349B (zh) | 一种区块链大数据安全处理系统 | |
CN114281997A (zh) | 模型训练方法、文本处理方法、装置和电子设备 | |
JP2010102637A (ja) | 数字列変換装置、ユーザ認証システム、数字列変換方法、およびプログラム | |
CN103123572A (zh) | 一种输入字符的方法和电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20151221 Address after: Yuhang District, Hangzhou City, Zhejiang Province, 311121 West No. 1500 building 3 Room 305 Applicant after: Hangzhou City Shuneng technology limited company Address before: 312000 Zhejiang city of Shaoxing province Shaoxing Binhai Innovation Park Hai Zhen Ma Huanlu No. 398 Applicant before: SHAOXING SHUNENG NETWORK TECHNOLOGY DEVELOPMENT CO., LTD. |
|
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140122 |
|
RJ01 | Rejection of invention patent application after publication |