CN103870740A - 图像验证码的实现方法和系统 - Google Patents
图像验证码的实现方法和系统 Download PDFInfo
- Publication number
- CN103870740A CN103870740A CN201210544331.2A CN201210544331A CN103870740A CN 103870740 A CN103870740 A CN 103870740A CN 201210544331 A CN201210544331 A CN 201210544331A CN 103870740 A CN103870740 A CN 103870740A
- Authority
- CN
- China
- Prior art keywords
- character
- pictorial element
- character string
- authentication code
- image authentication
- 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
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
- G06F21/36—User authentication by graphic or iconic representation
Abstract
本发一种图像验证码的实现方法和系统。所述方法包括:获取字符串,根据所述字符串进行处理得到所述字符串中字符对应的动作序列和位置;选取图像元素,根据所述字符对应的位置得到所述图像元素对应的运动轨迹;根据所述字符对应的位置融合所述字符串和图像元素得到图像验证码显示所述图像验证码,在所述显示的图像验证码中按照字符对应的动作序列和图像元素对应的运动轨迹进行字符和图像元素的逐帧播放。所述系统包括:字符处理模块、元素处理模块、融合模块和显示模块。采用本发明能提高抗破解能力。
Description
技术领域
本发明涉及网络安全技术,特别是涉及一种图像验证码的实现方法和系统。
背景技术
为降低网络安全风险,各大网站常常通过设置验证码对当前用户是人类用户还是机器用户进行区别,避免机器用户在网站中进行身份欺骗,恶意暴力破解密码、刷票、论坛灌水和刷页等行为。在网站中,通过成功解答提出的验证问题才会被认为是人类用户并继续享受服务。
各大网站常用的图像验证码实现方案是在网站界面中给出一张含有字符串的图像,要求用户输入字符串,并在输入的字符串与图像中字符串相一致时,当前用户才会被视为人类用户。
图像验证码包括静态图像验证码和动态图像验证码,然而,由于机器用户的破解能力起来越强大,静态图像验证码中所有内容均显示于一张图像中,机器用户可轻易破解得到静态图像验证码中的内容;而对于动态图像验证码而言,包括多张干扰帧和一张字符帧,在多帧图像循环播放的过程中,将快速播放干扰帧,长时间显示字符帧,因此,机器用户可分析每一帧的显示时长,得到长时间显示的字符帧,进而转换为静态图像验证码,实现动态图像验证码的成功破解。无论是静态图像验证码还是动态图像验证码均存在着抗破解能力低的缺陷,无法为网站准确地识别机器用户。
发明内容
基于此,有必要针对图像验证码抗破解能力低,无法为网站准确地识别机器用户的问题,提供一种能提高抗破解能力的图像验证码的实现方法。
此外,还有必要提供一种能提高抗破解能力的图像验证码的实现系统。
一种图像验证码的实现方法,包括:
获取字符串,根据所述字符串进行处理得到所述字符串中字符对应的动作序列和位置;
选取图像元素,根据所述字符对应的位置得到所述图像元素对应的运动轨迹;
根据所述字符对应的位置融合所述字符串和图像元素得到图像验证码
显示所述图像验证码,在所述显示的图像验证码中按照字符对应的动作序列和图像元素对应的运动轨迹进行字符和图像元素的逐帧播放。
一种图像验证码的实现系统,其特征在于,包括:
字符处理模块,用于获取字符串,根据所述字符串进行处理得到所述字符串中字符对应的动作序列和位置;
元素处理模块,用于选取图像元素,根据所述字符对应的位置得到所述图像元素对应的运动轨迹;
融合模块,用于根据所述字符对应的位置融合所述字符串和图像元素得到图像验证码;
显示模块,用于显示所述图像验证码,在所述显示的图像验证码中按照字符对应的动作序列和图像元素对应的运动轨迹进行字符和图像元素的逐帧播放。
上述图像验证码的实现方法和系统,获取字符串,并依据字符串得到字符串中每一字符对应的动作序列和位置,选取图像元素,根据字符对应的位置得到图像元素的运动轨迹,进而对字符串和图像元素进行融合得到图像验证码,显示图像验证码,在显示的图像验证码中按照动作序列和运动轨迹对字符和图像元素逐帧进行播放,对于字符串而言图像元素为干扰噪声,并且由于字符和图像元素在每一帧中的运动各不相同,图像元素在每一帧都阻挡了字符的不同部分,单独提取任何一帧都不能获得完整的字符,因此能够有效避免机器用户进行破解,与现有技术相比,有效地提高了抗破解能力。
附图说明
图1为一个实施例中图像验证码的实施方法的流程图;
图2为图1中获取字符串,根据字符串进行处理得到字符串中字符对应的动作序列和位置的方法流程图;
图3为一个实施例中字符串的动作序列的示意图;
图4为另一个实施例中字符串的动作序列的示意图;
图5为另一个实施例中字符串的动作序列的示意图;
图6为图1中选取图像元素,根据字符对应的位置得到图像元素对应的运动轨迹的方法流程图;
图7为一个实施例中图像元素的运动轨迹的示意图;
图8为一个实施例中通过联合方式进行字符串和图像元素的融合的示意图;
图9为一个实施例中通过组合方式进行字符串和图像元素的融合的示意图;
图10为一个实施例中通过相交方式进行字符串和图像元素的融合的示意图;
图11为一个实施例中通过剪除方式进行字符串和图像元素的融合的示意图;
图12为一个实施例中图像验证码的实现系统的结构示意图;
图13为图12中字符处理模块的结构示意图;
图14为图12中元素处理模块的结构示意图。
具体实施方式
如图1所示,在一个实施例中,一种图像验证码的实现方法,包括如下步骤:
步骤S110,获取字符串,根据字符串进行处理得到字符串中字符对应的动作序列和位置。
本实施例中,图像验证码中的内容以字符串的形式展示,该字符串包括但不限于数字、字母、汉字和数学公式等,也可以是特殊应用场景中的白名单字典中预设的字符,并通过预设的黑名单字典避免某些脏词出现。字符串中字符所对应的动作序列将指示该字符在每一帧所对应的动作,每一字符均有与之对应的动作序列,在获取了字符串之后,根据字符串中的字符将得到每一字符所对应的动作序列。
字符串中字符对应的位置即为该字符中图像中的位置,可根据图像尺寸随机确定,保证字符串在整体上不超出图像尺寸即可。
如图2所示,在一个实施例中,上述步骤S110包括:
步骤S111,从预设的字符候选集合中选取字符串,并根据字符串中的字符得到与图像尺寸相匹配的字体信息和动作序列。
本实施例中,预先设定了字符的字号范围、颜色等信息,该字号范围是与预设的图像尺寸相符的,因此,在选取了背景图像之后,将根据预先设定的字号范围和颜色等信息随机生成字体信息,另外,根据字符串中的字符即可直接得到相对应的动作序列,例如,字符的动作可以是钟摆动作,相应的动作序列可以是字符中每一帧中分别在设置的旋转中心按照不同的角度进行摆动。如图3所示,若字符串中的某一字符为“A”,相应动作序列所对应的帧数量为4帧,每一帧中不同旋转角度的字符“A”组成了字符“A”所对应的动作序列。其中,旋转中心和旋转角度是根据实际对应的字符设置的。
步骤S113,根据字体信息和图像尺寸分配字符所在的位置。
本实施例中,根据字体信息可以获知字符的字号和颜色等信息,进而根据字符的字号确定得到字符串所占据的区域,进而根据字符串所占据的区域得到字符在背景图像中的位置。
在另一个实施例中,上述步骤S110之前还包括:预先设置字符在每一帧对应的动作,形成字符对应动作序列。
本实施例中,对字符候选集合中的每一字符均预先设置每一帧对应的动作,进而由多个动作形成了该字符所对应的动作序列,其中,每一帧对应的动作可以是不同旋转角度的钟摆动作、某一方向上不同程度的拉伸动作或者某一方向上不同程度的压缩动作。
如图4所示,字符串的动作序列为竖直方向上的拉伸和压缩;如图5所示,字符以各种不同旋转角度的钟摆动作,并在水平方向上整体进行移动,从左侧移出字符串所占据的区域,并由右侧移入画面。
步骤S130,选取图像元素,根据字符对应的位置得到图像元素对应的运动轨迹。
本实施例中,任意选取图像元素,由于图像元素是作为用户识别字符的干扰噪声存在的,因此,图像元素应当是覆盖于字符之上的,根据字符的位置可确定图像元素所对应的运动轨迹,该运动轨迹用于指示每一帧中图像元素的运动情况。
如图6所示,在一实施例中,上述步骤S130包括:
步骤S131,随机从图像元素候选集合中选取图像元素。
本实施例中,预先设置了图像元素候选集合,其中图像元素候选集合中的图像元素可以是椭圆的、圆形的、方形的或者其它的一些任意形状。随机从预设的图像元素候选集合中选取若干个图像元素,其中,图像元素的数量可根据字符串所占据的区域随机确定,图像元素的形状也是随机选取的。
步骤S133,根据图像元素的数量和字符对应的位置分配选取的图像元素得到图像元素所在的初始位置。
本实施例中,根据图像元素的数量和字符在背景图像的位置对选取的图像元素进行分配,以得到每一元素所在的初始位置,该初始位置即为运动轨迹中的图像元素运动的初始位置。
在优选的实施例中,将图像元素均匀地分布于字符串在背景图像所占据的区域中。具体的,为准确分配图像元素,将获取图像元素的数量、尺寸和形状,从水平方向上将字符串在背景图像所占据的区域切分成与图像元素的数量相近的若干部分,将图像元素中心的水平位置放置于切分得到的某一部分中,并且不能够将多个图像元素放置于同一部分中,放置图像元素的竖起方向可在字符串在背景图像所占据的区域进行随机选择。
进一步的,为保证图像元素是均匀分布的,还将统计图像元素的面积和实际覆盖字符串在背景图像所在占的区域的面积之间的比例,进而对统计得到的比例进行校验,判定图像元素的分布是合适的。
进一步的,为保证图像元素的合理分布,还将限定图像元素的宽度和高度均不超过字符串在背景图像所占据的区域对应的宽度和高度的一半,以保证图像元素的初始位置能够均匀地分布于字符串在背景图像所占据的区域中。
步骤S135,根据初始位置和预设的运动方向得到图像元素的运动位置,图像元素的初始位置、运动位置和运动方向形成了对应的运动轨迹。
本实施例中,可对图像元素的运动方向进行随机设定,进而根据初始位置和设定的运动方向得到图像元素的运动位置,该图像元素的运动位置即为每一帧中图像元素按照设定的运动方向进行运动所得到的最终位置。
通过图像元素的初始位置、运动位置和运动方向即可确定图像元素在每一帧所进行的运动,因此,图像元素的初始位置、运动位置和运动方向所形成的运动轨迹将精确地控制图像元素在字符串中的运动。
例如,如图7所示,若图像元素为椭圆图形,运动轨迹中对应的帧数为4帧,则对应的如图7所示的4帧图像,对于左上角黑色的大椭圆而言,运动方向为水平向右,对于右上角黑色的小椭圆而言,运动方向为左下方向,大椭圆和小椭圆在运动了4帧之后均回到初始位置,再次重复往返运动。
步骤S150,根据字符对应的位置融合字符串和图像元素得到图像验证码。
本实施例中,将选取的字符串和图像元素进行融合,得到包含了字符串和图像元素的图像验证码。
由于字符串和图像元素均是分别从图像元素候选集合和字符候选集合中随机选取得到的,因此使得图像验证码中的字符串和图像元素是随机出现的,各种字符串和各种图像元素之间所融合得到的图像验证码数目众多,能有效提高机器用户破解图像验证码的难度,进一步提高了抗破解能力。
在一个实施例中,上述步骤S150包括:获取背景图像,按照字符对应的位置和图像元素所在的初始位置将字符串和图像元素融合并绘制到背景图像上得到图像验证码。
本实施例中,随机获取背景图像,根据图像元素所在的初始位置将图像元素和字符串融合之后,按照字符对应的位置将融合后的图像元素和字符串绘制到背景图像上得到图像验证码。
字符串和图像元素之间的融合方式包括联合、组合、相交和剪除等方式,其中,联合是将图像元素直接覆盖到字符串在背景图像所占据的区域,如图8所示;组合是将图像元素覆盖到字符串在背景图像所占据的区域上,并将字符串与图像元素重叠的部分进行反色处理,如图9所示;相交是将图像元素覆盖在字符串在背景图像所占据的区域上,将字符串与图像元素重叠的部分进行反色覆盖,将图像元素中与字符串重叠的部分丢弃,如图10所示;剪除是将图像元素覆盖于字符串在背景图像所占据的区域上,在覆盖之间将图像元素设置为底色,如图11所示。
步骤S170,显示图像验证码,在显示的图像验证码中按照字符对应的动作序列和图像元素对应的运动轨迹进行字符和图像元素的逐帧播放。
本实施例中,在网站的网页页面中显示图像验证码,按照字符对应的动作序列和图像元素对应的运动轨迹逐帧对字符和图像元素进行循环播放,即动作序列和运动轨迹中,最后一帧所对应的下一帧将是与重新开始播放的第一帧相同的。
例如,对于字符A,设定的旋转角度为M度,动作为钟摆动作,帧数量为4帧,因此,该字符A所对应的动作序列将包含了4张图像,在每一帧的图像中,字符A的旋转角度将各不相同,如图3所示,第一帧中字符A将逆时针旋转M度,第二帧中字符A将顺时针旋转到零度,第三帧中字符A将继续顺时针旋转到M度,最后一帧即第四帧中字符A将逆时针旋转回零度。
如图12所示,在一个实施例中,一种图像验证码的实现系统,包括字符处理模块110、元素处理模块130、融合模块150和显示模块170。
字符处理模块110,用于获取字符串,根据字符串进行处理得到字符串中字符对应的动作序列和位置。
本实施例中,图像验证码中的内容以字符串的形式展示,该字符串包括但不限于数字、字母、汉字和数学公式等,也可以是特殊应用场景中的白名单字典中预设的字符,并通过预设的黑名单字典避免某些脏词出现。字符串中字符所对应的动作序列将指示该字符在每一帧所对应的动作,每一字符均有与之对应的动作序列,字符处理模块110在获取了字符串之后,根据字符串中的字符将得到每一字符所对应的动作序列。
字符串中字符对应的位置即为该字符中图像中的位置,字符处理模块110可根据图像尺寸随机确定,保证字符串在整体上不超出图像尺寸即可。
如图13所示,在一个实施例中,上述字符处理模块110包括选取单元111和字符位置分配单元113。
选取单元111,用于从预设的字符候选集合中选取字符串,并根据字符串中的字符得到与图像尺寸相匹配的字体信息和动作序列。
本实施例中,预先设定了字符的字号范围、颜色等信息,该字号范围是与预设的图像尺寸相符的,因此,在选取了背景图像之后,选取单元111将根据预先设定的字号范围和颜色等信息随机生成字体信息,另外,根据字符串中的字符即可直接得到相对应的动作序列,例如,字符的动作可以是钟摆动作,相应的动作序列可以是字符中每一帧中分别在设置的旋转中心按照不同的角度进行摆动。
字符位置分配单元113,用于根据字体信息和图像尺寸分配字符所在的位置。
本实施例中,字符位置分配单元113根据字体信息可以获知字符的字号和颜色等信息,进而根据字符的字号确定得到字符串所占据的区域,进而根据字符串所占据的区域得到字符在背景图像中的位置。
在一个实施例中,上述图像验证码的实现系统还包括动作设置模块,该动作设置模块用于预先设置字符中每一帧对应的动作,形成字符对应的动作序列。
本实施例中,动作设置模块对字符候选集合中的每一字符均预先设置每一帧对应的动作,进而由多个动作形成了该字符所对应的动作序列,其中,每一帧对应的动作可以是不同旋转角度的钟摆动作、某一方向上不同程度的拉伸动作或者某一方向上不同程度的压缩动作。
元素处理模块130,用于选取图像元素,根据字符对应的位置得到图像元素对应的运动轨迹。
本实施例中,元素处理模块130任意选取图像元素,由于图像元素是作为用户识别字符的干扰噪声存在的,因此,图像元素应当是覆盖于字符之上的,根据字符的位置可确定图像元素所对应的运动轨迹,该运动轨迹用于指示每一帧中图像元素的运动情况。
如图14所示,在一个实施例中,上述元素处理模块130包括元素选取单元131、元素位置分配单元133和轨迹生成单元135。
元素选取单元131,用于随机从图像元素候选集合中选取图像元素。
本实施例中,预先设置了图像元素候选集合,其中图像元素候选集合中的图像元素可以是椭圆的、圆形的、方形的或者其它的一些任意形状。元素选取单元131随机从预设的图像元素候选集合中选取若干个图像元素,其中,图像元素的数量可根据字符串所占据的区域随机确定,图像元素的形状也是随机选取的。
元素位置分配单元133,用于根据图像元素的数量和字符对应的位置分配选取的图像元素得到图像元素所在的初始位置。
本实施例中,元素位置分配单元133根据图像元素的数量和字符在背景图像的位置对选取的图像元素进行分配,以得到每一元素所在的初始位置,该初始位置即为运动轨迹中的图像元素运动的初始位置。
在优选的实施例中,将元素位置分配单元133图像元素均匀地分布于字符串在背景图像所占据的区域中。具体的,为准确分配图像元素,元素位置分配单元133将获取图像元素的数量、尺寸和形状,从水平方向上将字符串在背景图像所占据的区域切分成与图像元素的数量相近的若干部分,将图像元素中心的水平位置放置于切分得到的某一部分中,并且不能够将多个图像元素放置于同一部分中,放置图像元素的竖起方向可在字符串在背景图像所占据的区域进行随机选择。
进一步的,为保证图像元素是均匀分布的,元素位置分配单元133还将统计图像元素的面积和实际覆盖字符串在背景图像所在占的区域的面积之间的比例,进而对统计得到的比例进行校验,判定图像元素的分布是合适的。
进一步的,为保证图像元素的合理分布,还将限定图像元素的宽度和高度均不超过字符串在背景图像所占据的区域对应的宽度和高度的一半,以保证图像元素的初始位置能够均匀地分布于字符串在背景图像所占据的区域中。
轨迹生成单元135,用于根据初始位置和预设的运动方向得到图像元素的运动位置,图像元素的初始位置、运动位置和运动方向形成了对应的运动轨迹。
本实施例中,轨迹生成单元135可对图像元素的运动方向进行随机设定,进而根据初始位置和设定的运动方向得到图像元素的运动位置,该图像元素的运动位置即为每一帧中图像元素按照设定的运动方向进行运动所得到的最终位置。
轨迹生成单元135通过图像元素的初始位置、运动位置和运动方向即可确定图像元素在每一帧所进行的运动,因此,图像元素的初始位置、运动位置和运动方向所形成的运动轨迹将精确地控制图像元素在字符串中的运动。
融合模块150,用于根据字符对应的位置融合字符串和图像元素得到图像验证码。
本实施例中,融合模块150将选取的字符串和图像元素进行融合,得到包含了字符串和图像元素的图像验证码。
由于字符串和图像元素均是分别从图像元素候选集合和字符候选集合中随机选取得到的,因此使得图像验证码中的字符串和图像元素是随机出现的,各种字符串和各种图像元素之间所融合得到的图像验证码数目众多,能有效提高机器用户破解图像验证码的难度,进一步提高了抗破解能力。
在一个实施例中,融合模块150还用于获取背景图像,按照字符对应的位置和图像元素所在的初始位置将字符串和图像元素融合并绘制到背景图像上得到图像验证码。
本实施例中,融合模块150随机获取背景图像,根据图像元素所在的初始位置将图像元素和字符串融合之后,按照字符对应的位置将融合后的图像元素和字符串绘制到背景图像上得到图像验证码。
字符串和图像元素之间的融合方式包括联合、组合、相交和剪除等方式,其中,联合是将图像元素直接覆盖到字符串在背景图像所占据的区域;组合是将图像元素覆盖到字符串在背景图像所占据的区域上,并将字符串与图像元素重叠的部分进行反色处理;相交是将图像元素覆盖在字符串在背景图像所占据的区域上,将字符串与图像元素重叠的部分进行反色覆盖,将图像元素中与字符串重叠的部分丢弃;剪除是将图像元素覆盖于字符串在背景图像所占据的区域上,在覆盖之间将图像元素设置为底色。
显示模块170,用于显示图像验证码,在显示的图像验证码中按照字符对应的动作序列和图像元素对应的运动轨迹进行字符和图像元素的逐帧播放。
本实施例中,显示模块170在网站的网页页面中显示图像验证码,按照字符对应的动作序列和图像元素对应的运动轨迹逐帧对字符和图像元素进行循环播放,即动作序列和运动轨迹中,最后一帧所对应的下一帧将是与重新开始播放的第一帧相同的。
上述图像验证码的实现方法和系统,获取字符串,并依据字符串得到字符串中每一字符对应的动作序列和位置,选取图像元素,根据字符对应的位置得到图像元素的运动轨迹,进而对字符串和图像元素进行融合得到图像验证码,显示图像验证码,在显示的图像验证码中按照动作序列和运动轨迹对字符和图像元素逐帧进行播放,对于字符串而言图像元素为干扰噪声,并且由于字符和图像元素在每一帧中的运动各不相同,图像元素在每一帧都阻挡了字符的不同部分,单独提取任何一帧都不能获得完整的字符,因此能够有效避免机器用户进行破解,与现有技术相比,有效地提高了抗破解能力。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种图像验证码的实现方法,包括:
获取字符串,根据所述字符串进行处理得到所述字符串中字符对应的动作序列和位置;
选取图像元素,根据所述字符对应的位置得到所述图像元素对应的运动轨迹;
根据所述字符对应的位置融合所述字符串和图像元素得到图像验证码
显示所述图像验证码,在所述显示的图像验证码中按照字符对应的动作序列和图像元素对应的运动轨迹进行字符和图像元素的逐帧播放。
2.根据权利要求1所述的图像验证码的实现方法,其特征在于,所述获取字符串,根据所述字符串进行处理得到所述字符串中字符对应的动作序列和位置的步骤包括:
从预设的字符候选集合中选取字符串,并根据所述字符串中的字符得到与图像尺寸相匹配的字体信息和动作序列;
根据所述字体信息和图像尺寸分配所述字符所在的位置。
3.根据权利要求1所述的图像验证码的实现方法,其特征在于,所述获取字符串,根据所述字符串进行处理得到所述字符串中字符对应的动作序列和位置的步骤之前还包括:
预先设置字符在每一帧对应的动作,形成所述字符对应的动作序列。
4.根据权利要求1所述的图像验证码的实现方法,其特征在于,所述选取图像元素,根据所述字符对应的位置得到所述图像元素对应的运动轨迹的步骤包括:
随机从图像元素候选集合中选取图像元素;
根据所述图像元素的数量和字符对应的位置分配选取的图像元素得到图像元素所在的初始位置;
根据所述初始位置和预设的运动方向得到所述图像元素的运动位置,所述图像元素的初始位置、运动位置和运动方向形成了对应的运动轨迹。
5.根据权利要求3所述的图像验证码的实现方法,其特征在于,所述根据所述字符对应的位置融合所述字符串和图像元素得到图像验证码的步骤包括:
获取背景图像,按照字符对应的位置和图像元素所在的初始位置将字符串和图像元素融合并绘制到背景图像上得到图像验证码。
6.一种图像验证码的实现系统,其特征在于,包括:
字符处理模块,用于获取字符串,根据所述字符串进行处理得到所述字符串中字符对应的动作序列和位置;
元素处理模块,用于选取图像元素,根据所述字符对应的位置得到所述图像元素对应的运动轨迹;
融合模块,用于根据所述字符对应的位置融合所述字符串和图像元素得到图像验证码;
显示模块,用于显示所述图像验证码,在所述显示的图像验证码中按照字符对应的动作序列和图像元素对应的运动轨迹进行字符和图像元素的逐帧播放。
7.根据权利要求6所述的图像验证码的实现系统,其特征在于,所述字符处理模块包括:
选取单元,用于从预设的字符候选集合中选取字符串,并根据所述字符串中的字符得到与图像尺寸相匹配的字体信息和动作序列;
字符位置分配单元,用于根据所述字体信息和图像尺寸分配所述字符所在的位置。
8.根据权利要求6所述的图像验证码的实现系统,其特征在于,还包括:
动作设置模块,用于预先设置字符中每一帧对应的动作,形成所述字符对应的动作序列。
9.根据权利要求6所述的图像验证码的实现系统,其特征在于,所述元素处理模块包括:
元素选取单元,用于随机从图像元素候选集合中选取图像元素;
元素位置分配单元,用于根据所述图像元素的数量和字符对应的位置分配选取的图像元素得到图像元素所在的初始位置;
轨迹生成单元,用于根据所述初始位置和预设的运动方向得到所述图像元素的运动位置,所述图像元素的初始位置、运动位置和运动方向形成了对应的运动轨迹。
10.根据权利要求8所述的图像验证码的实现系统,其特征在于,所述融合模块还用于获取背景图像,按照字符对应的位置和图像元素所在的初始位置将字符串和图像元素融合并绘制到背景图像上得到图像验证码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210544331.2A CN103870740B (zh) | 2012-12-14 | 2012-12-14 | 图像验证码的实现方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210544331.2A CN103870740B (zh) | 2012-12-14 | 2012-12-14 | 图像验证码的实现方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103870740A true CN103870740A (zh) | 2014-06-18 |
CN103870740B CN103870740B (zh) | 2017-10-24 |
Family
ID=50909265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210544331.2A Active CN103870740B (zh) | 2012-12-14 | 2012-12-14 | 图像验证码的实现方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103870740B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104657654A (zh) * | 2014-12-22 | 2015-05-27 | 河海大学 | 一种利用人眼视觉补偿原理的图片验证码生成方法 |
CN105205360A (zh) * | 2015-06-26 | 2015-12-30 | 维沃移动通信有限公司 | 密码的设置方法、验证方法及终端 |
CN106327547A (zh) * | 2015-06-23 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 一种验证码生成验证的方法和装置 |
CN107241327A (zh) * | 2017-06-06 | 2017-10-10 | 北京洋浦伟业科技发展有限公司 | 基于字符旋转检测的验证码验证方法和装置 |
CN109388932A (zh) * | 2017-08-07 | 2019-02-26 | 阿里巴巴集团控股有限公司 | 验证方法及终端设备、数据处理方法 |
CN110730162A (zh) * | 2019-09-16 | 2020-01-24 | 北京齐尔布莱特科技有限公司 | 一种页面的验证方法、移动终端、可读存储介质 |
CN110766839A (zh) * | 2018-11-01 | 2020-02-07 | 上海掌门科技有限公司 | 门禁装置及其使用方法 |
CN112417418A (zh) * | 2020-11-19 | 2021-02-26 | 刘一方 | 一种基于新型的验证码的验证方法 |
CN113821786A (zh) * | 2020-06-18 | 2021-12-21 | 中移(苏州)软件技术有限公司 | 一种验证码的获得及显示方法、相关装置 |
CN113821786B (zh) * | 2020-06-18 | 2024-05-10 | 中移(苏州)软件技术有限公司 | 一种验证码的获得及显示方法、相关装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183463A (zh) * | 2007-12-19 | 2008-05-21 | 腾讯科技(深圳)有限公司 | 一种图片验证码的生成方法和装置 |
CN101339666A (zh) * | 2008-08-12 | 2009-01-07 | 腾讯科技(深圳)有限公司 | 一种图片验证码的生成方法和装置 |
CN101488228A (zh) * | 2008-01-14 | 2009-07-22 | 联想(北京)有限公司 | 一种防机器识别的信息显示方法及装置 |
CN101739720A (zh) * | 2009-12-18 | 2010-06-16 | 武汉大学 | 三维动态验证码的生成方法及装置 |
-
2012
- 2012-12-14 CN CN201210544331.2A patent/CN103870740B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183463A (zh) * | 2007-12-19 | 2008-05-21 | 腾讯科技(深圳)有限公司 | 一种图片验证码的生成方法和装置 |
CN101488228A (zh) * | 2008-01-14 | 2009-07-22 | 联想(北京)有限公司 | 一种防机器识别的信息显示方法及装置 |
CN101339666A (zh) * | 2008-08-12 | 2009-01-07 | 腾讯科技(深圳)有限公司 | 一种图片验证码的生成方法和装置 |
CN101739720A (zh) * | 2009-12-18 | 2010-06-16 | 武汉大学 | 三维动态验证码的生成方法及装置 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104657654B (zh) * | 2014-12-22 | 2017-05-31 | 河海大学 | 一种利用人眼视觉补偿原理的图片验证码生成方法 |
CN104657654A (zh) * | 2014-12-22 | 2015-05-27 | 河海大学 | 一种利用人眼视觉补偿原理的图片验证码生成方法 |
CN106327547A (zh) * | 2015-06-23 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 一种验证码生成验证的方法和装置 |
CN105205360A (zh) * | 2015-06-26 | 2015-12-30 | 维沃移动通信有限公司 | 密码的设置方法、验证方法及终端 |
CN105205360B (zh) * | 2015-06-26 | 2018-03-20 | 维沃移动通信有限公司 | 密码的设置方法、验证方法及终端 |
CN107241327A (zh) * | 2017-06-06 | 2017-10-10 | 北京洋浦伟业科技发展有限公司 | 基于字符旋转检测的验证码验证方法和装置 |
CN107241327B (zh) * | 2017-06-06 | 2019-11-05 | 北京梆梆安全科技有限公司 | 基于字符旋转检测的验证码验证方法和装置 |
CN109388932B (zh) * | 2017-08-07 | 2022-09-16 | 阿里巴巴集团控股有限公司 | 验证方法及终端设备、数据处理方法 |
CN109388932A (zh) * | 2017-08-07 | 2019-02-26 | 阿里巴巴集团控股有限公司 | 验证方法及终端设备、数据处理方法 |
CN110766839A (zh) * | 2018-11-01 | 2020-02-07 | 上海掌门科技有限公司 | 门禁装置及其使用方法 |
CN110766839B (zh) * | 2018-11-01 | 2022-12-02 | 上海掌门科技有限公司 | 门禁装置及其使用方法 |
CN110730162A (zh) * | 2019-09-16 | 2020-01-24 | 北京齐尔布莱特科技有限公司 | 一种页面的验证方法、移动终端、可读存储介质 |
CN110730162B (zh) * | 2019-09-16 | 2022-03-18 | 北京齐尔布莱特科技有限公司 | 一种页面的验证方法、移动终端、可读存储介质 |
CN113821786A (zh) * | 2020-06-18 | 2021-12-21 | 中移(苏州)软件技术有限公司 | 一种验证码的获得及显示方法、相关装置 |
CN113821786B (zh) * | 2020-06-18 | 2024-05-10 | 中移(苏州)软件技术有限公司 | 一种验证码的获得及显示方法、相关装置 |
CN112417418A (zh) * | 2020-11-19 | 2021-02-26 | 刘一方 | 一种基于新型的验证码的验证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103870740B (zh) | 2017-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103870740A (zh) | 图像验证码的实现方法和系统 | |
CN104468531B (zh) | 敏感数据的授权方法、装置和系统 | |
CN101739720B (zh) | 三维动态验证码的生成方法及装置 | |
US20090232351A1 (en) | Authentication method, authentication device, and recording medium | |
CN104066003B (zh) | 视频中广告的播放方法和装置 | |
CN108108012B (zh) | 信息交互方法和装置 | |
CN101534195A (zh) | 认证方法、认证装置、信息处理程序及记录介质 | |
CN110135262A (zh) | 敏感数据防偷窥处理方法、装置、设备及存储介质 | |
TWI738717B (zh) | 基於驗證碼的驗證處理方法及裝置 | |
CN105872704A (zh) | 视频播放控制方法及装置 | |
CN103886243B (zh) | 动态验证码图片的生成方法和装置及验证方法和装置 | |
CN1998174A (zh) | 生成用于监视用户与计算机的交互的图像的方法和系统 | |
CN108229234A (zh) | 一种融合数字编码的可扫描图像生成方法 | |
CN105491443A (zh) | 图像处理、访问方法及装置 | |
CN107609372A (zh) | 指纹识别方法、装置、移动终端及存储介质 | |
CN106156237B (zh) | 信息处理方法、信息处理装置及用户设备 | |
CN103473824A (zh) | 一种基于二维码标签的考勤方法 | |
CN107370770A (zh) | 登录方法、装置及系统 | |
CN105357008A (zh) | 身份验证方法及装置 | |
CN105354481A (zh) | 网络验证方法和网络验证服务器 | |
CN106161020B (zh) | 一种身份认证的方法及装置 | |
CN106807089A (zh) | 游戏数据处理方法以及装置 | |
Gao et al. | Emerging-image motion captchas: Vulnerabilities of existing designs, and countermeasures | |
CN109388933A (zh) | 基于动态子图的验证方法、装置、用户设备及存储介质 | |
Powell et al. | A multibiometrics-based CAPTCHA for improved online security |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |