CN107609389B - 一种基于图像内容相关性的验证方法及系统 - Google Patents
一种基于图像内容相关性的验证方法及系统 Download PDFInfo
- Publication number
- CN107609389B CN107609389B CN201710736858.8A CN201710736858A CN107609389B CN 107609389 B CN107609389 B CN 107609389B CN 201710736858 A CN201710736858 A CN 201710736858A CN 107609389 B CN107609389 B CN 107609389B
- Authority
- CN
- China
- Prior art keywords
- verification
- correlation
- user
- options
- words
- 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
Abstract
本发明公开了一种基于图像内容相关性的验证方法及系统。该方法首先建立动态标签词库;然后计算词语间的相关度,创建词库对应的语义关系图;再从动态标签词库中选择关键词,在语义关系图上进行随机游走生成与关键词对应的验证问题的选项;接着设置通过验证码测试的及格线,生成验证问题;最后根据用户基于验证问题的选项计算用户选项的得分,判断是否通过验证,若通过,则完成验证,否则重新生成验证问题。本发明提高了验证码的随机性,降低了暴力破解验证码的可能性。
Description
技术领域
本发明涉及图灵测试和网络安全验证技术,具体是涉及一种基于图像内容相关性的验证方法及系统。
背景技术
随着互联网日新月异的发展,验证码在网络防护和信息安全方面有着广泛的应用。同时,由于网络攻击手段的提升,现有的大部分文本验证码和图像验证码已经不足以抵御采用了模式识别和机器学习技术的攻击。
现有的基于图像内容的验证方法通常依赖于固定的图像数据库,一方面庞大的图像数据库生成耗时耗力,难以大量产生图像验证码,无法大规模使用;另一方面,图像验证码的正确答案与问题关键词的语义是“相等”的,例如,12306验证码要求用户点击图片中的“跑步机”,即要求用户识别出所有表示“跑步机”的图片,这类图像验证码本质上是对图片中的对象进行识别。近年来,机器学习算法已在图像识别和分类上获得显著成效,如果利用ImageNet等图像识别算法对每次新出现的图像进行识别和标记,采用相等语义关系和固定数据库的图像验证码很容易被攻破。除此之外,现有的图像验证码通常使用固定的答案模式,即一个验证问题的正确答案是固定的。例如,对一个有8个选项1个正确答案的验证码进行猜测攻击,则有的概率答对问题,这使得验证码的解空间过小。因此,现有的图像验证方法具有依赖于固定图像数据库、使用固定答案模式、易被图像识别算法攻破的缺陷。
发明内容
本发明的目的在于提供一种基于图像内容相关性的验证方法及系统,提高了验证码的随机性,降低了暴力破解验证码的可能性。
实现本发明目的的技术方案为:一种基于图像内容相关性的验证方法,包括以下步骤:
步骤1、抓取网络热搜词和常见词,建立一个动态标签词库;
步骤2、对动态标签词库使用互信息公式计算词语间的相关度,创建词库对应的语义关系图;
步骤3、从动态标签词库中选择关键词,以关键词为起点在语义关系图上进行随机游走,生成一个基于相关性的标签序列,作为与关键词对应的验证问题的选项;
步骤4、计算标签序列中的词语与关键词相关度之和的最大值,设置通过验证码测试的及格线存入session;
步骤5、利用搜索引擎在线获取与各个标签对应的图像,将关键词和图像展示在验证页面上,完成一个验证问题的生成;
步骤6、验证码服务器接收用户基于验证问题的选项,计算用户选项的得分并判断是否通过验证,若通过,则完成验证,否则返回步骤3重新生成一个验证问题。
一种基于图像内容相关性的验证系统,包括语义关系图生成模块、验证码生成模块、评分模块,其中:
语义关系图生成模块动态标签词库建立词语间的相关度,生成语义关系图;
验证码生成模块根据动态标签词库的关键词和语义关系图得到基于相关性的标签序列和各个标签对应的图像,生成验证问题;
评分模块根据标签序列中的词语与动态标签词库的关键词,设置验证码测试的及格线,根据用户基于验证问题的选项计算用户选项的得分,判断是否通过验证。
本发明与现有技术相比,其显著优点是:1)本发明的图片标签库由生活中的常见词和热词组成,词语间的相关性具有时效性,通过定期更新词库增强了词库的鲁棒性;2)本发明在生成验证码时,通过在语义关系图上的随机游走选出图像标签,避免了验证码的问题和答案之间形成固定的关联模式,提高了验证码的随机性,降低了暴力破解验证码的可能性;3)本发明所使用的图像都来自实时在线搜索,无需在本地存储图像,即生成了一个动态的在线图像资源库,有效解决了传统图像验证码存在的容量有限、易受机器学习算法攻击等问题,节省了服务器资源;4)本发明使用弹性的验证评分机制,只要用户的验证得分达到预先设定的及格线,即可通过测试,不需要关心用户具体提交的选项,使得验证码答案多样化,极大地降低了验证码被穷举破解的可能性;5)本发明将用户选择答案的先后顺序作为验证结果判断的因素之一,按照点击的先后顺序给予选项由高到低的权重,能够使得真实用户与机器的答案得分有显著差异,从而进行更准确地人机区分。
附图说明
图1是本发明系统框架示意图。
图2是本发明语义关系图示意图。
图3是本发明验证页面示意图。
图4是本发明验证码生成流程示意图。
图5是本发明用户验证流程图。
图6是本发明系统业务流程图。
具体实施方式
下面结合附图和具体实施例进一步阐述本发明方案。
一种基于图像内容相关性的验证方法,包括如下步骤:
步骤1、抓取网络热搜词和常见词,建立一个动态标签词库,对其更新和扩展:在网络上抓取常用词与时下的热点词语,同时根据搜索引擎的搜索推荐,抓取相关词语,对词语的长度进行过滤(如规定词语长度小于16字节),再对词语进行词性标记,选取名词、动词、形容词等有实际语义的词语,将得到的词语加入词库,如:“汽车”、“汽油”、“自行车”;
步骤2、对动态标签词库使用互信息公式计算词语间的相关度,创建词库对应的语义关系图:首先,计算标签词语间的语义相关度,将动态标签词库中的标签关联起来,例如,计算词wi和wj的相关度。首先,使用搜索引擎搜索词wi获得搜索结果数c(wi),搜索词wj获得搜索结果数c(wj),有序搜索词wi和wj获得搜索结果数c(wi,j),搜索词wj和wi获得搜索结果数c(wj,i)。然后使用互信息公式计算wi和wj的互信息值,即语义相关度MI(wi,wj),计算公式为:其中,N为可变参数,根据实际情况进行调整,使得MI值在一个合理范围内,并规定标签词语与自己的相关度为0。例如,MI("汽车","汽油")的值为10,MI("自行车","汽油")的值为-5,MI("汽油","汽油")的值为0。
然后将动态标签词库中的标签关联起来构建语义关系图,刻画整个动态标签词库的语义关系网络。语义关系图由表示标签的节点和表示标签间相关度的边组成,整个语义关系图采用三元组(wi,wj,MI(wi,wj))的形式存储,该语义关系图为无向图。遍历动态标签词库的标签,每个标签是语义关系图上的一个顶点,如果两个顶点标签之间的相关度大于一定的阈值simThr,则这两个点是连通的(强相关),其边的权值为相关度值,语义关系图如图1所示。
步骤3、从动态标签词库中随机选择一个词语作为验证码的关键词。然后,以这个词为起点,在语义关系图上进行随机游走,生成一个基于相关性的标签序列,作为与关键词对应的验证问题的选项。约定待生成的验证码有C个选项,相关度之和的阈值为confidence,则随机游走终止条件为步数S不大于C,且每一步选择的顶点与起点之间的相关度之不小于阈值confidence,如果随机游走已经结束,相关度之和仍没有达到confidence,则重新进行游走;如果相关度之和已经达到confidence,且随机游走的步数S小于C,则从词库中选择(C-S)个与起点非强相关的词语作为混淆选项。
随机游走的选择算法为:基于语义关系图建立邻接矩阵Ann,n为语义关系图上顶点的个数,Aij表示节点i到节点j的边的权值,Aii值为0,且Aij=Aji;求出矩阵i行的度,建立度矩阵Di=∑iAim,m∈[0,n];求出概率转移矩阵M=(Pij),其中当进行第t步随机游走时,概率转移矩阵的计算公式为Pt=(M)t。
步骤4、根据所有验证问题的选项与关键词的相关度之和的最大值作为满分值fm设置及格线pm:pm=α×fm,a∈(0,1),其中fm=maxi(∑iMI(k,i)),i∈{answers},a为比例系数,k为关键词,answers为验证问题的选项,MI(k,i)为k与i的相关度。通过改变α的大小可以调整验证方法的强度和对用户的容错率,α越大,则验证方法的强度越高、容错率越低。将pm存入session,等待验证结果判断。
步骤5、以验证问题的选项的标签为关键词在图片搜索引擎上搜索与标签对应的图片,抓取搜索结果,提取图片的URL,过滤掉无效的和响应时间过长的URL,再进行一次随机化处理,选出每个标签对应的一个图片URL。然后使用扭曲、模糊等方法生成关键词文本的图片。将关键词图片和所有URL传递到验证页面,以供用户选择。验证码的生成流程如图4所示,验证码实例如图3所示,用户需要选出与关键词“机场”相关的图片。
步骤6、使用ajax将选项的勾选状态实时传递到验证码服务器端,记录用户的点击顺序,并由高到低赋予选项权重。然后根据权重计算用户得分um:um=∑j(γ-(β÷n)×lj)×MI(k,j),j∈{user_answers},lj∈{1,2,…n},其中,n(n<=C)为用户提交的选项个数,C为验证问题的选项个数,user_answers为用户提交的选项,k为关键词,MI(k,j)为k与j的相关度,lj表示选项j被用户选择的序次。β、γ为参数,例如验证问题的选项个数C为8,β为0.8,γ为1.4。
最后将um与pm比较,若um的值低于pm,则判定为没有通过验证测试,返回步骤3重新生成验证问题进行验证,否则,通过测试。用户验证流程如图5所示。
如图6所示,本发明的使用方法为:
(1)网站开发者后台通过调用验证方法接口获取验证码的js(javascript)地址。
(2)把获取到的js地址回传给网页客户端。
(3)客户端依据js地址加载验证码。
(4)用户提交验证答案传到验证码服务器。
(5)验证码服务器判断用户是否通过验证。
(6)通过验证则反馈给开发者服务器,跳转页面。
(7)未通过验证则刷新验证码,返回(4)。
Claims (9)
1.一种基于图像内容相关性的验证方法,其特征在于,包括如下步骤:
步骤1、抓取网络热搜词和常见词,建立一个动态标签词库;
步骤2、对动态标签词库使用互信息公式计算词语间的相关度,创建词库对应的语义关系图;
步骤3、从动态标签词库中选择关键词,以关键词为起点在语义关系图上进行随机游走,生成一个基于相关性的标签序列,作为与关键词对应的验证问题的选项;
步骤4、计算标签序列中的词语与关键词相关度之和的最大值,设置通过验证码测试的及格线存入session;
步骤5、利用搜索引擎在线获取与各个标签对应的图像,将关键词和图像展示在验证页面上,完成一个验证问题的生成;
步骤6、验证码服务器接收用户基于验证问题的选项,计算用户选项的得分并判断是否通过验证,若通过,则完成验证,否则返回步骤3重新生成一个验证问题;
步骤1抓取词语长度不超过16字节,抓取的词语词性为名词、形容词、动词。
2.根据权利要求1所述的一种基于图像内容相关性的验证方法,其特征在于,步骤2约定相关度大于某一阈值simThr的两个词语是强相关的,其中simThr为自定义阈值,以词语为顶点,强相关的两个词语间有边,边的权重为词语间的相关度,创建词库对应的语义关系图。
4.根据权利要求1中所述的一种基于图像内容相关性的验证方法,其特征在于,步骤3中约定待生成的验证问题有C个选项,相关度之和的阈值为confidence,则随机游走终止条件为步数S不大于C,且每一步选择的顶点与起点之间的相关度之和不小于阈值confidence,如果随机游走已经结束,相关度之和仍没有达到confidence,则重新进行游走;如果相关度之和已经达到confidence,且随机游走的步数S小于C,则从词库中选择(C-S)个与起点非强相关的词语作为混淆选项。
7.根据权利要求1中所述的一种基于图像内容相关性的验证方法,其特征在于,步骤6使用ajax将选项的勾选状态和勾选顺序实时传递到验证码服务器端,并由高到低赋予选项权重,然后根据权重计算用户得分um:um=∑j(γ-(β÷n)×lj)×MI(k,j),j∈user_answers},lj∈{1,2,…n},其中,n(n<=C)为用户提交的选项个数,C为验证问题的选项个数,user_answers为用户提交的选项,γ为参数,MI(k,j)为关键词k与选项j的相关度,lj表示选项j被用户选择的序次。
8.根据权利要求1中所述的一种基于图像内容相关性的验证方法,其特征在于,步骤6将用户得分um与session中验证码的及格线pm比较,如果用户得分达到及格线则通过本次验证,否则未通过本次验证。
9.一种基于图像内容相关性的验证系统,其特征在于,采用权利要求1-8任一项所述的方法进行图像内容相关性的验证,包括语义关系图生成模块、验证码生成模块、评分模块,其中:
语义关系图生成模块动态标签词库建立词语间的相关度,生成语义关系图;
验证码生成模块根据动态标签词库的关键词和语义关系图得到基于相关性的标签序列和各个标签对应的图像,生成验证问题;
评分模块根据标签序列中的词语与动态标签词库的关键词,设置验证码测试的及格线,根据用户基于验证问题的选项计算用户选项的得分,判断是否通过验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710736858.8A CN107609389B (zh) | 2017-08-24 | 2017-08-24 | 一种基于图像内容相关性的验证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710736858.8A CN107609389B (zh) | 2017-08-24 | 2017-08-24 | 一种基于图像内容相关性的验证方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107609389A CN107609389A (zh) | 2018-01-19 |
CN107609389B true CN107609389B (zh) | 2020-10-30 |
Family
ID=61065787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710736858.8A Active CN107609389B (zh) | 2017-08-24 | 2017-08-24 | 一种基于图像内容相关性的验证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107609389B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110543754A (zh) * | 2018-05-29 | 2019-12-06 | 武汉极意网络科技有限公司 | 存储器、验证码实现方法、装置和设备 |
CN110033862B (zh) * | 2019-04-12 | 2022-05-17 | 南京中医药大学 | 一种基于加权有向图的中医量化诊断系统及存储介质 |
CN110472405B (zh) * | 2019-08-16 | 2021-03-16 | 中原工学院 | 一种免输入式动态验证码实现方法 |
CN112364332B (zh) * | 2020-11-10 | 2023-01-31 | 西安热工研究院有限公司 | 一种基于语义转换的安全图形验证码的实现方法 |
CN112380508B (zh) * | 2020-11-16 | 2022-10-21 | 西安电子科技大学 | 基于常识知识的人机验证方法 |
CN116383797B (zh) * | 2023-05-31 | 2023-08-22 | 北京顶象技术有限公司 | 一种无缺口滑动验证码及其生成方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101398814A (zh) * | 2007-09-26 | 2009-04-01 | 北京大学 | 一种同时抽取文档摘要和关键词的方法及系统 |
CN102103670A (zh) * | 2009-12-22 | 2011-06-22 | 迪斯尼实业公司 | 通过上下文图像化可视公共图灵测试的人类验证 |
CN103544246A (zh) * | 2013-10-10 | 2014-01-29 | 清华大学 | 互联网多种情感词典构建方法及系统 |
CN104899499A (zh) * | 2015-05-29 | 2015-09-09 | 南京理工大学 | 基于互联网图片搜索的Web验证码生成方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120232907A1 (en) * | 2011-03-09 | 2012-09-13 | Christopher Liam Ivey | System and Method for Delivering a Human Interactive Proof to the Visually Impaired by Means of Semantic Association of Objects |
US10319363B2 (en) * | 2012-02-17 | 2019-06-11 | Microsoft Technology Licensing, Llc | Audio human interactive proof based on text-to-speech and semantics |
-
2017
- 2017-08-24 CN CN201710736858.8A patent/CN107609389B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101398814A (zh) * | 2007-09-26 | 2009-04-01 | 北京大学 | 一种同时抽取文档摘要和关键词的方法及系统 |
CN102103670A (zh) * | 2009-12-22 | 2011-06-22 | 迪斯尼实业公司 | 通过上下文图像化可视公共图灵测试的人类验证 |
CN103544246A (zh) * | 2013-10-10 | 2014-01-29 | 清华大学 | 互联网多种情感词典构建方法及系统 |
CN104899499A (zh) * | 2015-05-29 | 2015-09-09 | 南京理工大学 | 基于互联网图片搜索的Web验证码生成方法 |
Non-Patent Citations (1)
Title |
---|
基于随机游走的语义重叠社区发现算法;辛宇 等;《计算机研究与发展》;20150228;第52卷(第2期);第504-505页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107609389A (zh) | 2018-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107609389B (zh) | 一种基于图像内容相关性的验证方法及系统 | |
US11017178B2 (en) | Methods, devices, and systems for constructing intelligent knowledge base | |
JP6161679B2 (ja) | 検索エンジン及びその実現方法 | |
CN112800170A (zh) | 问题的匹配方法及装置、问题的回复方法及装置 | |
CN108009135B (zh) | 生成文档摘要的方法和装置 | |
CN110781460A (zh) | 版权认证方法、装置、设备、系统及计算机可读存储介质 | |
CN106354856B (zh) | 基于人工智能的深度神经网络强化搜索方法和装置 | |
CN110956038B (zh) | 图文内容重复判断方法及装置 | |
CN110990683A (zh) | 一种基于地域与情感特征的微博谣言集成识别方法及装置 | |
CN113988314A (zh) | 一种选择客户端的分簇联邦学习方法及系统 | |
CN111708942B (zh) | 多媒体资源推送方法、装置、服务器及存储介质 | |
CN112149410A (zh) | 语义识别方法、装置、计算机设备和存储介质 | |
CN111415167A (zh) | 网络欺诈交易检测方法及装置、计算机存储介质和终端 | |
CN111008329A (zh) | 基于内容分类的页面内容推荐方法及装置 | |
CN108763221B (zh) | 一种属性名表征方法及装置 | |
CN113569118A (zh) | 自媒体推送方法、装置、计算机设备及存储介质 | |
CN113821587A (zh) | 文本相关性确定方法、模型训练方法、装置及存储介质 | |
CN106778568B (zh) | 基于web页面的验证码的处理方法 | |
CN110162535B (zh) | 用于执行个性化的搜索方法、装置、设备以及存储介质 | |
CN116431912A (zh) | 用户画像推送方法及装置 | |
US20220253694A1 (en) | Training neural networks with reinitialization | |
CN112380508B (zh) | 基于常识知识的人机验证方法 | |
CN110851560B (zh) | 信息检索方法、装置及设备 | |
CN114357203A (zh) | 多媒体检索方法、装置及计算机设备 | |
CN112132367A (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 |