专利名称:一种基于计算机系统的在线笔迹认证方法
技术领域:
本发明涉及生物特征身份认证技术领域,特别涉及一种基于计算机系统的在线笔迹认证方法。
背景技术:
在线笔迹认证利用专门的手写笔、手写板等手写输入设备实时采集书写信号,并提取其中蕴含的行为特征用于实现身份鉴别。目前,这方面的研究都是基于传统笔迹认证方法。Rejean Plamondon 等在文献《Automatic signature verification and writer
identification---The state of the art)) (Pattern Recognition, 1989)中指出在线
笔迹认证系统的设计需要解决数据采集、预处理、特征提取、匹配决策和性能评估这五类问题,并提供了笔迹认证系统的数据流图。Anil K. Jain等在文献《On-line signature verification)) (Pattern Recognition, 2002)中也详细说明了在线笔迹认证系统的功能模块。目前,传统在线笔迹认证方法包括注册和认证两个阶段首先为注册阶段,包括数据获取、预处理、特征提取、分类器训练、数据存入数据库,具体的,用户首先借助手写输入设备书写并提交若干个注册笔迹样本,系统对获取到的若干个注册笔迹样本进行预处理以去除噪声干扰,然后通过特征提取和特征选择算法得到由代表用户书写风格并且具有较高鉴别力的特征组成的最优特征子集,最后基于提交的若干个注册笔迹样本的最优特征子集所对应的特征值数据训练分类器,并根据系统为用户分配的唯一身份识别号,将最优特征子集以及训练后得到分类器存入数据库;其次是认证阶段,包括数据获取、预处理、特征提取和分类器决策,具体的,用户首先向系统提交声称身份识别号,同时借助手写输入设备书写并提交一个测试笔迹样本,系统对测试笔迹样本进行预处理操作以去除噪声干扰,然后根据数据库中与声称身份识别号对应的最优特征子集,通过特征提取算法得到测试笔迹样本的最优特征子集所对应的特征值数据,最后采用数据库中与声称身份识别号对应的分类器判别测试笔迹样本的真伪,从而判断用户是否为声称身份识别号所对应的用户。在对上述现有技术进行分析后,发明人发现传统在线笔迹认证方法的安全保障主要源于两点①笔迹内容是保密的,现有方法可以排除书写内容不一致的伪造笔迹;②不同书写者笔迹中蕴涵的个性化特征是不同的,即使攻击者获取了笔迹内容,也很难书写出真实笔迹具有的个性化特征。然而,实际应用中这两个条件很难满足①攻击者可以通过偷看、中途截取、攻击模板库等方式获取笔迹内容;②学者贾志辉等人研究发现,伪造笔迹的摹仿相似程度与练习时间是正相关的,练习时间越长,相似性越高,而传统笔迹认证系统中用户的笔迹内容通常是不变的,为攻击者提供了充足的模仿时间。为解决传统在线笔迹认证方法存在的缺陷,一种行之有效的在线笔迹认证方法应充分利用手写笔迹的两个显著特点①笔迹内容的可更改性,笔迹的个性化特征蕴含在书写过程中,用户书写的不同内容的笔迹具有相同的个性化特征,因此,用户可注册多组内容不同的笔迹用于认证;②书写的主动性,笔迹的书写过程能充分体现笔迹者的主观意愿,它是书写人有意识的行为,为充分利用这一点,系统必须能抵挡重放攻击,也就是认证阶段获取到的笔迹必须是用户即时提交的。
发明内容
本发明所要解决的技术问题即目的是针对手写笔迹的主动性和笔迹内容的可更改性这两个特点,提出一种基于计算机系统的在线笔迹认证方法,以解决传统在线笔迹认证方法在实际应用中面临的挑战。本发明的技术方案是一种基于计算机系统的在线笔迹认证方法,特别是在注册阶段,用户借助手写输入设备书写并提交若干组注册笔迹,同时为提交的每组注册笔迹指定一个注册笔迹样本作为该组注册笔迹的显示笔迹,计算机系统将用户提交的每组注册笔迹所对应的显示笔迹的二维静态字形位置信息存入数据库,并按照传统在线笔迹认证方法的注册流程完成对每组注册笔迹的笔迹注册;在认证阶段,用户向计算机系统提交声称身份识别号,计算机系统根据声称身份识别号,从声称身份识别号所对应的用户在注册阶段提交的若干组注册笔迹中随机选取多组注册笔迹,得到由随机选取的多组注册笔迹所对应的显示笔迹组成的显示笔迹集合,并将显示笔迹集合中每个显示笔迹的二维静态字形位置信息呈现给用户,用户在指定时间内一次性提交与显示笔迹集合对应的测试笔迹集合,计算机系统按照传统在线笔迹认证方法的认证流程完成对测试笔迹集合中每个测试笔迹的认证,根据所有测试笔迹的认证结果进行综合决策,最终完成对用户身份的鉴别,方法包括提交若干组注册笔迹;笔迹注册;呈现显示笔迹集合;提交测试笔迹集合;笔迹认证;提交若干组注册笔迹,具体包括第一次使用计算机系统的用户需要提交自己的书写信息,因此进入注册阶段,用户借助手写输入设备书写并提交若干组注册笔迹,考虑到计算机系统的安全性和用户使用的方便性,需要对用户在注册阶段提交注册笔迹的组数的最小取值进行预先设定,即用户在实际注册阶段提交注册笔迹的组数不应小于预先设定的在注册阶段提交注册笔迹的组数的最小取值,特别地,提交的每组注册笔迹是由若干个内容一致的注册笔迹样本组成的注册笔迹样本集合,进一步的,用户为每组注册笔迹提交注册笔迹样本的数目可以不同但不少于两个,更进一步的,要求用户提交的不同组注册笔迹内容不同。其中,笔迹样本是指用户书写的一个笔迹,以中文为例,笔迹由一组有序的笔划构成,笔划是指汉字的基本构成单位,诸如横、竖、撇、捺、折、点、钩、提等。其中,内容一致是指构成笔迹的笔划以及笔划出现的前后顺序是一致的,内容不同是指不满足内容一致定义的情况。笔迹注册,具体包括用户借助手写输入设备书写并提交若干组注册笔迹后,从提交的每组注册笔迹的注册笔迹样本集合中指定一个注册笔迹样本作为该组注册笔迹的显示笔迹,根据计算机系统为用户分配的唯一身份识别号,将用户提交的每组注册笔迹所对应的显示笔迹的二维静态字形位置信息存入数据库,然后,计算机系统按照传统在线笔迹认证方法的注册流程完成对每组注册笔迹的笔迹注册。其中,显示笔迹是指用户在注册阶段从提交的每组注册笔迹中指定一个注册笔迹样本,提取其二维静态字形位置信息作为字形模板,用于认证阶段呈现给用户作为书写参考;由于显示笔迹只包含二维静态字形位置信息,用户从显示笔迹不能推测出书写过程中的力和速度等动态信息。呈现显示笔迹集合,具体包括用户欲登录计算机系统,需提交笔迹以验证身份,因此进入认证阶段,用户向系统提交声称身份识别号,计算机系统根据声称身份识别号,从声称身份识别号所对应的用户在注册阶段提交的若干组注册笔迹中随机选取多组注册笔迹,然后,计算机系统从数据库中提取随机选取的多组注册笔迹所对应的显示笔迹,组成显示笔迹集合,最后,通过显示界面将显示笔迹集合中的每个显示笔迹的二维静态字形位置信息呈现给用户。其中,随机选取的多组注册笔迹的组数小于声称身份识别号所对应的用户在注册阶段提交注册笔迹的组数,且随机选取的多组注册笔迹的组数的具体取值需要综合考虑系统的安全性以及用户使用的方便性进行预先设定,特别地,由于多组注册笔迹的选取是随机的,因此用户每次登录时,计算机系统随机选取多组注册笔迹的结果不同;提交测试笔迹集合,具体包括通过显示界面将显示笔迹集合中的每个显示笔迹的二维静态字形位置信息呈现给用户后,用户借助手写输入设备,按照每个显示笔迹的显示顺序依次书写与对应显示笔迹内容一致的测试笔迹,其中,需要书写并提交的测试笔迹的总数目与显示笔迹集合中显示笔迹的总数目相同,特别地,用户必须在指定时间内完成所有测试笔迹的书写并一次性提交,从而,计算机系统得到与显示笔迹集合对应的测试笔迹集合。其中,测试笔迹是指用户在认证阶段提交的,与显示笔迹集合中某个显示笔迹内容一致的一个测试笔迹样本。笔迹认证,具体包括用户提交测试笔迹集合后,计算机系统采用传统在线笔迹认证方法的认证流程完成对测试笔迹集合中的每个测试笔迹的认证,通过判断测试笔迹集合中通过认证的测试笔迹的总数目与测试笔迹集合中测试笔迹的总数目之间的关系进行决策,最终完成笔迹认证,设Qa。。表示测试笔迹集合中通过认证的测试笔迹的总数目,M表示测试笔迹集合中测试笔迹的总数目,即通过判断测试笔迹集合中通过认证的测试笔迹的总数目Qa。。与测试笔迹集合中测试笔迹的总数目M之间的关系,判断用户是否为声称身份识别号所对应的用户。本发明方法还提供一种手写输入设备,包括手写输入模块、信号采集模块、信号处理模块、显示模块,其中手写输入模块向用户提供一块手写区域,用户可以在该手写区域内自由书写,或按照计算机系统给定的形状进行书写;同时,计算机系统通过手写输入模块来接收用户的手写输入信息;
6
信号采集模块当用户在手写输入模块进行书写时,会产生手写输入信息,通过与手写输入模块相连的信号采集模块可感知并采集手写过程中产生的手写信息,例如,可采集手写信息中的位置信息、力信息、倾角信息等;信号处理模块当完成采集手写过程中产生的手写信息后,手写处理模块需要对采集的手写信息进行分析和处理,以根据计算机系统的需求实现相应的功能,并将处理的结果输出到显不I旲块;显示模块当信号处理模块完成对采集到的手写信处理后,会将处理的结果输出到显示模块,显示模块根据处理的结果,同时驱动相应的显示元件来完成对处理结果的显示功能。作为对现有技术的进一步改进,本发明的有益效果是相对于现有技术,本发明的方法步骤为提交若干组注册笔迹、笔迹注册、呈现显示笔迹集合、提交测试笔迹集合和笔迹认证。本发明提供的在线笔迹认证方法有效地解决了现有在线笔迹认证方法存在的两个缺陷①依赖笔迹内容的保密笔迹内容是不变的, 为攻击者提供了充分的摹仿时间。在注册阶段,用户借助手写输入设备书写并提交若干组注册笔迹,并为提交的每组注册笔迹指定一个注册笔迹样本作为该组注册笔迹的显示笔迹,按照传统在线笔迹认证方法的注册流程完成对每组注册笔迹的笔迹注册。在认证阶段, 计算机系统从注册阶段用户提交的若干组注册笔迹中随机选取多组注册笔迹,将选取的每组注册笔迹的显示笔迹的二维静态字形位置信息呈现给用户,用户在指定时间内书写并一次性提交与显示笔迹内容一致的测试笔迹,按照传统在线笔迹认证方法的认证流程完成对每个测试笔迹的认证,根据所有测试笔迹的认证结果进行综合决策,最终完成笔迹认证流程。本发明的方法充分利用了手写笔迹的两个特性,具有如下优点①在某段时间内要求用户书写的笔迹均不同,因此可抵挡重放攻击;②将书写内容二维静态字形位置信息呈现给用户,通过对真实用户书写方式加以约束,从而控制其书写活动随时间的变化性;③呈现给用户的只有笔迹二维静态字形位置信息,攻击者无法据此推测出书写过程中的力和速度等动态信息;④要求用户在指定时间内一次性提交所有的测试笔迹,限制了摹仿时间从而增加摹仿者的攻击难度;⑤具有主动防御的功能,当采用本发明方法的计算机系统发现用户提交的测试笔迹的书写相似性达到一定程度但仍未被计算机系统接受,可立即增加测试笔迹数量,同时以邮件、短信等方式提醒真实用户更新注册阶段提交的笔迹内容。本发明方法还提供的手写输入设备,包括手写输入模块、信号采集模块、信号处理模块、显示模块,用于实现对手写签名的获取、计算和输出,但本发明的方法不仅仅局限于手写输入设备,凡是带有手写输入功能,或外接有手写输入设备的计算装置或仪器,如 PDA、手写输入手机、Tablet PC、服务器等均可以采用本发明的方法进行在线笔迹认证。
图I为本发明在线笔迹认证处理的计算机系统结构图2为本发明笔迹注册的流程示意图;图3为本发明采用传统在线笔迹认证方法的注册流程对用户提交的一组注册笔迹进行注册的流程示意图;图4为本发明笔迹认证的流程示意图;图5为本发明采用传统在线笔迹认证方法的认证流程对用户提交的一个测试笔迹进行认证的流程示意图。
具体实施例方式下面结合附图对本发明的实施方式作进一步解释图I为本发明在线笔迹认证处理的计算机系统结构图;具体包括手写输入设备I 和在线笔迹认证方法流程。手写输入设备I具体包括手写输入模块11、信号采集模块12、信号处理模块13、 显示模块14,其中手写输入模块11是手写输入模块向用户提供一块手写区域,用户可以在该手写区域内自由书写,或按照计算机系统给定的形状进行书写;同时,计算机系统通过手写输入模块11来接收用户的手写输入信息。信号采集模块12是当用户在手写输入模块11进行书写时,会产生手写输入信息, 通过与手写输入模块11相连的信号采集模块12可感知并采集手写过程中产生的手写信息,例如,可采集手写信息中的位置信息、力信息、倾角信息等。信号处理模块13是当完成采集手写过程中产生的手写信息后,手写处理模块13 需要对采集的手写信息进行分析和处理,以根据计算机系统的需求实现相应的功能,并将处理的结果输出到显示模块14。显示模块14是当信号处理模块13完成对采集到的手写信处理后,会将处理的结果输出到显示模块14,显示模块14根据处理的结果,同时驱动相应的显示元件来完成对处理结果的显示功能。其中在线笔迹认证方法流程具体包括步骤100 :提交若干组注册笔迹;具体的,第一次使用计算机系统的用户需要提交自己的书写信息,因此进入注册阶段,用户借助手写输入设备I书写并提交若干组注册笔迹,考虑到计算机系统的安全性和用户使用的方便性,需要对用户在注册阶段提交注册笔迹的组数的最小取值进行预先设定,即用户在实际注册阶段提交注册笔迹的组数不应小于预先设定的在注册阶段提交注册笔迹的组数的最小取值,特别地,提交的每组注册笔迹是由若干个内容一致的注册笔迹样本组成的注册笔迹样本集合,进一步的,用户为每组注册笔迹提交注册笔迹样本的数目可以不同但不少于两个,更进一步的,要求用户提交的不同组注册笔迹内容不同。其中,笔迹样本是指用户书写的一个笔迹,以中文为例,笔迹由一组有序的笔划构成,笔划是指汉字的基本构成单位,诸如横、竖、撇、捺、折、点、钩、提等。其中,内容一致是指构成笔迹的笔划以及笔划出现的前后顺序是一致的,内容不同是指不满足内容一致定义的情况。SNmin表示用户在注册阶段提交注册笔迹的组数的最小取值,Nmin ^ 2,Nfflin的具体取值需要综合考虑计算机系统的安全性以及用户使用的方便性进行预先设定,N表示用户U在注册阶段提交注册笔迹的组数,要求N彡Nfflin ;集合R =取,R2, . . .,Rn}表示用户U在注册阶段提交的N组注册笔迹的集合,且I,2,. . .,N表示用户U在注册阶段提交的N组注册笔迹所对应的组编号。其中尺表示用户U在注册阶段提交的第i组注册笔迹,i的取值范围为1,2,...,N,其中<表示用户U在注册阶段提交的第i组注册笔迹中的第b个注册笔迹样本,b的取值范围为1,2,. . .,Xi, Xi表示用户U在注册阶段提交的第i组注册笔迹中所包含注册笔迹样本的总数目,取值范围为Xi > 2,即用户U借助手写输入设备I书写并提交N组注册笔迹,得到用户U在注册阶段提交的N组注册笔迹的集合R = (R1, R2, , RJ。步骤200 :笔迹注册;具体的,用户借助手写输入设备I书写并提交若干组注册笔迹后,从提交的每组注册笔迹的注册笔迹样本集合中指定一个注册笔迹样本作为该组注册笔迹的显示笔迹,根据计算机系统为用户分配的唯一身份识别号,将用户提交的每组注册笔迹所对应的显示笔迹的二维静态字形位置信息存入数据库,然后,计算机系统按照传统在线笔迹认证方法的注册流程完成对每组注册笔迹的笔迹注册。其中,显示笔迹是指用户在注册阶段从提交的每组注册笔迹中指定一个注册笔迹样本,提取其二维静态字形位置信息作为字形模板,用于认证阶段呈现给用户作为书写参考,由于显示笔迹只包含二维静态字形位置信息,用户从显示笔迹不能推测出书写过程中的力和速度等动态信息。其中,传统在线笔迹认证方法的注册流程包括数据获取、预处理、特征提取、分类器训练、数据存入数据库,具体的,通过数据获取得到每组注册笔迹包含的若干个注册笔迹样本,计算机系统对获取到的若干个注册笔迹样本进行预处理以去除噪声干扰,通过特征提取和特征选择算法得到由代表用户书写风格并且具有较高鉴别力的特征组成的最优特征子集,基于获取到的若干个注册笔迹样本的最优特征子集所对应的特征值数据训练分类器,根据计算机系统为用户分配的唯一身份识别号,将每组笔迹所对应的最优特征子集以及训练后得到分类器存入数据库。步骤300 :呈现显示笔迹集合;具体的,用户欲登录计算机系统,需提交笔迹以验证身份,因此进入认证阶段,用户向系计算机统提交声称身份识别号,计算机系统根据声称身份识别号,从声称身份识别号所对应的用户在注册阶段提交的若干组注册笔迹中随机选取多组注册笔迹,同时得到随机选取的多组注册笔迹所对应的组编号集合,然后,计算机系统根据随机选取的多组注册笔迹,从数据库中提取随机选取的多组注册笔迹所对应的显示笔迹,并组成显示笔迹集合,最后,通过显示界面将显示笔迹集合中的每个显示笔迹的二维静态字形位置信息呈现给用户。其中,随机选取的多组注册笔迹的组数小于声称身份识别号所对应的用户在注册阶段提交注册笔迹的组数,且随机选取的多组注册笔迹的组数的具体取值需要综合考虑计算机系统的安全性以及用户使用的方便性进行预先设定,此外,由于多组注册笔迹的选取是随机的,因此用户每次登录时,计算机系统随机选取多组注册笔迹的结果不同,同时得到的随机选取的多组注册笔迹的组编号集合也不同。设集合R =取,R2, . . .,RJ表示用户U在注册阶段提交的N组注册笔迹的集合, 集合S = {Si,S2,. . .,SN}表示用户U在注册阶段提交的N组注册笔迹所对应的显示笔迹集合,集合= {^v A2,…,Am}表示从用户U在注册阶段提交的N组注册笔迹中随机选取的M 组注册笔迹的集合,集合& = {\,,…,}表示从用户U在注册阶段提交的N组注册笔迹中随机选取的M组注册笔迹所对应的显示笔迹集合,Uid表示用户提交的用户U的身份识别号。其中Ri表示用户U在注册阶段提交的第i组注册笔迹,i的取值范围为1,2,...,
N0其中Si表示用户U在注册阶段提交的第i组注册笔迹Ri所对应的显示笔迹,i的取值范围为1,2, ... ,N0其中A7表示从用户U在注册阶段提交的N组注册笔迹中随机选取的M组注册笔迹中第j组注册笔迹,同时也表示为用户U在注册阶段提交的N组注册笔迹中第I组注册笔迹,j取值范围为1,2, ,M,Ji取值范围为1,2,... ,N0其中表示从用户U在注册阶段提交的N组注册笔迹中随机选取的M组注册笔迹中第j组注册笔迹所对应的显示笔迹,同时也表示为用户U在注册阶段提交的N组注册笔迹中第Ji组注册笔迹所对应的显示笔迹,j取值范围为1,2,. . .,M,Ji取值范围为1,2,..., N;其中N表示用户U在注册阶段提交注册笔迹的组数,M表示从用户U在注册阶段提交的N组注册笔迹中随机选取的注册笔迹的组数,I <M<N,7 rc7 ,声称身份识别号为Uid的用户欲登录计算机系统,计算机系统从用户U在注册阶段提交的N组注册笔迹的集合R= (R1, R2, ...,RJ中随机选取M组注册笔迹,得到随机选取的用户U的M组注册笔迹集合=,…,AM}所对应的显示笔迹集合 5> = {\,&2,...,5^},同时得到随机选取的用户u的M组注册笔迹集合1 =
在N组注册笔迹集合R = (R1, R2, ...,RJ中所对应的组编号集合IJ1, J2, , JmI,并通过显示界面将得到的显示笔迹集合& = {\,&2,...,5^}中的每个显示笔迹的二维静态字形位置信息呈现给声称身份识别号为Uid的用户。步骤400 :提交测试笔迹集合;具体的,通过显示界面将显示笔迹集合中的每个显示笔迹的二维静态字形位置信息呈现给用户后,用户借助手写输入设备1,按照显示笔迹的显示顺序依次书写与对应显示笔迹内容一致的测试笔迹,其中,需要书写并提交的测试笔迹的总数目与显示笔迹集合中显示笔迹的总数目相同,特别地,用户必须在指定时间内完成所有测试笔迹的书写并一次性提交,从而计算机系统得到与显示笔迹集合对应的测试笔迹集合。其中,测试笔迹是指用户在认证阶段提交的,与显示笔迹集合中某个显示笔迹内容一致的一个测试笔迹样本。设集合R =取,R2, . . .,RJ表示用户U在注册阶段提交的N组注册笔迹的集合, 集合S = (S1, S2, , SJ表示用户U在注册阶段提交的N组注册笔迹所对应的显示笔迹集合,集合& = {\,&2,…,&M}表示从用户U在注册阶段提交的N组注册笔迹中随机选取的 M组注册笔迹所对应的显示笔迹集合,集合「= {^,...,匕}表示声称身份识别号为Uid的用户提交的M组测试笔迹集合;其中Ri表示用户U在注册阶段提交的第i组注册笔迹,i的取值范围为1,2,...,
其中Si表示用户U在注册阶段提交的第i组注册笔迹Ri所对应的显示笔迹,i的取值范围为1,2,...,N;其中表示从用户U在注册阶段提交的N组注册笔迹中随机选取的M组注册笔迹中第k组注册笔迹所对应的显示笔迹,同时也表示为用户U在注册阶段提交的N组注册笔迹中第Jk组注册笔迹所对应的显示笔迹,k取值范围为1,2,...,M,Jk取值范围为1,2,..., N;其中匕表示声称身份识别号为Uid的用户提交的M组测试笔迹集合中的第k组测试笔迹,同时也表示从用户U在注册阶段提交的N组注册笔迹中第Jk组注册笔迹所对应的显示笔迹的测试笔迹,k取值范围为1,2,...,M,Jk取值范围为1,2,...,N;其中,Uid表示用户提交的用户U的身份识别号;即声称身份识别号为Uid的用户根据系统呈现的M组注册笔迹的显示笔迹集合 = {\,&2,...,&%}中的每个显示笔迹的二维静态字形位置信息,书写并提交M个测试笔
迹,得到声称身份识别号为Uid的用户提交的与显示笔迹集合s = {\,&2,...,Xm}对应的测试笔迹集合,...,&}。步骤500 :笔迹认证;具体的,用户提交测试笔迹集合后,计算机系统采用传统在线笔迹认证方法的认证流程完成对测试笔迹集合中的每个测试笔迹的认证,统计测试笔迹集合中通过认证的测试笔迹的总数目,通过判断测试笔迹集合中通过认证的测试笔迹的数目与测试笔迹集合中测试笔迹的总数目之间的关系进行决策,最终完成笔迹认证,设Qa。。表示测试笔迹集合中通过认证的测试笔迹的总数目,M表示测试笔迹集合中测试笔迹的总数目,即通过判断测试笔迹集合中通过认证的测试笔迹的总数目Qa。。与测试笔迹集合中测试笔迹的总数目M之间的关系,判断用户是否为声称身份识别号所对应的用户;其中,传统在线笔迹认证方法的认证流程具体包括数据获取、预处理、特征提取、 分类器决策,具体的,计算机系统首先获取用户提交的一个测试笔迹,对测试笔迹进行预处理操作以去除噪声干扰,然后根据数据库中与声称身份识别号以及测试笔迹组编号对应的某组注册笔迹的最优特征子集,通过特征提取算法得到测试笔迹的最优特征子集所对应的特征值数据,最后采用数据库中与声称身份识别号以及测试笔迹组编号对应的某组注册笔迹的分类器判别测试笔迹的真伪,从而判断测试笔迹是否通过认证。图2为本发明笔迹注册的流程示意图;其步骤具体包括步骤210 :开始;具体的,表示开始执行笔迹注册操作流程。步骤220 :获取一组注册笔迹;具体的,用户借助手写输入设备I书写并提交若干组注册笔迹后,从用户提交的若干组注册笔迹集合中提取一组注册笔迹作为当前组注册笔迹,且每从用户提交的若干组注册笔迹集合中提取一组注册笔迹作为当前组注册笔迹后, 就将该组注册笔迹对应的组编号从用户提交的若干组注册笔迹集合的组编号集合中删除。设集合R =取,R2, . . .,RJ表示用户U在注册阶段提交的N组注册笔迹的集合, 其中N表示用户U在注册阶段提交注册笔迹的组数,1,2, ...,N表示用户U在注册阶段提交的N组注册笔迹中每一组注册笔迹对应的组编号,其中N ^ 2,则有
从用户U在注册阶段提交的N组注册笔迹的集合R = (R1, R2, , RJ中任意取出一组注册笔迹Ri,完成笔迹获取,其中i取值范围为I,2,...,N,此外,将该组注册笔迹Ri 所对应的组编号i从N组注册笔迹的组编号集合中删除。步骤230 :指定显示笔迹;具体的,从用户提交的若干组注册笔迹集合中提取一组注册笔迹作为当前组注册笔迹后,用户从当前组注册笔迹的注册笔迹样本集合中指定一个注册笔态字形位置信息存入数据库。其中,显示笔迹是指用户在注册阶段从提交的每组注册笔迹中指定一个注册笔迹样本,提取其二维静态字形位置信息作为字形模板,用于认证阶段呈现给用户作为书写参考,由于显示笔迹只包含二维静态字形位置信息,用户从显示笔迹不能推测出书写过程中的力和速度等动态信息。设G表示当前组注册笔迹的组编号,Uid表计算机示系统为用户U分配的唯一身份识别号,集合&={ ,...,亡}表示用户U在注册阶段提交的N组注册笔迹中第 G组注册笔迹的注册笔迹样本集合,Sg表示用户U指定的第G组注册笔迹的显示笔迹, 且用户U指定的第G组注册笔迹的显示笔迹Sg是第G组注册笔迹的注册笔迹样本集合 &={ ,...,rf}中的一个注册笔迹样本。其中<表示用户U在注册阶段提交的N组注册笔迹中第G组注册笔迹中的第b个注册笔迹样本,b的取值范围为1,2,. . .,\,Xtj表示用户U在注册阶段提交的N组注册笔迹中第G组注册笔迹的注册笔迹样本集合中注册笔迹样本数目,取值范围为Xtj > 2,G的取值范围为1,2,...,N。即从用户U在注册阶段提交的N组注册笔迹中提取第G组注册笔迹Rtj作为当前组注册笔迹后,从第G组注册笔迹Rtj的注册笔迹样本集合&={ ,...,☆沖得到用户U指定的第G组注册笔迹的显示笔迹$,根据计算机系统为用户U分配的唯一身份识别号Uid, 将用户U指定的第G组注册笔迹的显示笔迹Sg的二维静态字形位置信息存入数据库。步骤240 :注册;具体的,计算机系统按照传统在线笔迹认证方法的注册流程完成对每组注册笔迹的注册。其中,传统在线笔迹认证方法的注册流程包括数据获取、预处理、特征提取、分类器训练、数据存入数据库;具体的,通过数据获取得到当前组注册笔迹包含的若干个注册笔迹样本,计算机系统对获取到的若干个注册笔迹样本进行预处理以去除噪声干扰,通过特征提取和特征选择算法得到由代表用户书写风格且具有较高鉴别力的特征组成的最优特征子集,基于提交的若干个注册笔迹样本的最优特征子集所对应的特征值数据训练分类器,根据计算机系统为用户分配的唯一身份识别号,将最优特征子集以及训练后得到分类器存入数据库。步骤250 :判断用户提交的若干组注册笔迹集合是否为空?如果是,跳到步骤 260,结束笔迹注册流程,如果否,跳到步骤220,获取用户提交的注册笔迹集合中的下一组注册笔迹;具体的,每从用户在注册阶段提交的若干组注册笔迹集合中提取一组注册笔迹作为当前组注册笔迹后,就将该组注册笔迹对应的组编号从用户在注册阶段提交的若干组注册笔迹集合的组编号集合中删除,则当用户在注册阶段提交的若干组注册笔迹集合的组编号集合为空时,即表示用户在注册阶段提交的若干组注册笔迹都完成笔迹注册,此时笔迹注册流程结束,否则,继续获取用户在注册阶段提交的注册笔迹集合中的下一组注册笔迹用于笔迹注册。步骤260 :结束;具体的,表示笔迹注册操作流程完成。图3为本发明采用传统在线笔迹认证方法的注册流程对用户提交的一组注册笔迹进行注册的流程示意图;其步骤具体包括步骤241 :开始;具体的,表示开始执行采用传统在线笔迹认证方法的注册流程对用户提交的一组注册笔迹进行注册操作流程。步骤242 :数据获取;具体的,从用户提交的若干组注册笔迹集合中提取一组注册笔迹作为当前组注册笔迹后,获取当前组注册笔迹内的所有注册笔迹样本;步骤243 :预处理;具体的,由于手写输入设备I的精度、书写环境等因素使获取的注册笔迹样本中存在噪声,通过预处理步骤对注册笔迹样本进行重采样、滤波、归一化等操作,去除噪声干扰以提高认证准确性。步骤244 :特征提取;具体的,通过特征提取算法得到代表用户书写风格的各类笔迹特征,采用特征选择算法从这些笔迹特征中选取具有较高鉴别力的特征组成相应的最优特征子集,根据最优特征子集得到当前组注册笔迹的若干个注册笔迹样本的最优特征子集所对应的特征值数据。步骤245 :分类器训练;具体的,当完成对当前组注册笔迹的注册笔迹样本集合中每个注册笔迹样本的特征提取后,分类器基于当前组注册笔迹的若干个注册笔迹样本的最优特征子集所对应的特征值数据进行学习,训练后得到当前组注册笔迹的分类器。步骤246 :数据存入数据库;具体的,基于获取到的当前组注册笔迹的所有注册笔迹样本进行特征提取和分类器训练后,根据计算机系统为用户分配的唯一身份识别号,将最优特征子集以及训练后得到的当前组注册笔迹的分类器存入数据库。步骤247 :结束;具体的,表示采用传统在线笔迹认证方法的注册流程对用户提交的一组注册笔迹进行注册操作流程完成。图4为本发明笔迹认证的流程示意图;其步骤具体包括步骤510 :开始;具体的,表示开始执行笔迹认证操作流程。步骤520:获取测试笔迹;具体的,用户提交测试笔迹集合后,计算机系统需对测试笔迹集合中的每个测试笔迹分别进行认证,此外,每从测试笔迹集合中提取一个测试笔迹,就将该测试笔迹对应的组编号从测试笔迹集合的组编号集合中删除。其中,测试笔迹是指用户在认证阶段提交的,并与显示笔迹集合中某个显示笔迹内容一致的测试笔迹样本。设集合厂={匕,匕,…,匕^表示声称身份识别号为Uid的用户提交的M组测试笔迹集合,其中匕表示声称身份识别号为Uid的用户提交的M组测试笔迹集合中的第k组测试笔迹,k取值范围为1,2,...,M,Jk取值范围为1,2,...,N,N表示用户U在注册阶段提交注册笔迹的组数,M表示声称身份识别号为Uid的用户在认证阶段提交的测试笔迹的组数, M < N,Uid表示用户提交的用户U的身份识别号,即声称身份识别号为Uid的用户提交测试笔迹集合厂={匕,匕.尤%}后,计算机系统从声称身份识别号为Uid的用户提交的测试笔迹集合厂={匕尤2,...尤%}中选取一个测试笔迹匕,同时将测试笔迹匕所对应的组编号Jk从声称身份识别号为Uid的用户提交的测试笔迹集合厂=(K1,K2,…,Km }所对应的组编号集合中删除。步骤530 :判断是否通过认证?如果是,跳到步骤540,更新通过认证的测试笔迹数,如果否,跳到步骤550,判断测试笔迹集合是否为空?;具体的,从测试笔迹集合中提取一个测试笔迹后,采用传统在线笔迹认证方法的认证流程对该测试笔迹进行认证,从而判断该测试笔迹是否通过认证。其中,传统在线笔迹认证方法的认证流程具体包括数据获取、预处理、特征提取、 分类器决策,具体的,计算机系统首先获取用户提交的一个测试笔迹,对测试笔迹进行预处理操作以去除噪声干扰,然后根据数据库中与声称身份识别号以及测试笔迹组编号对应的某组注册笔迹的最优特征子集,通过特征提取算法得到测试笔迹的最优特征子集所对应的特征值数据,最后采用数据库中与声称身份识别号以及测试笔迹组编号对应的某组注册笔迹的分类器判别测试笔迹的真伪,从而判断测试笔迹是否通过认证。设集合R= (R1, R2, , RJ表示用户U在注册阶段提交的N组注册笔迹的集合, 集合S = (S1, S2,. . .,SN}表示用户U在注册阶段提交的N组注册笔迹所对应的显示笔迹集合,集合& = {\,&2,…,&M}表示从用户U在注册阶段提交的N组注册笔迹中随机选取的M 组注册笔迹所对应的显示笔迹集合,集合Z = ,…,Gm }表示在认证阶段声称身份识别号为Uid的用户提交的M组测试笔迹集合,Uid表示用户提交的用户U的身份识别号。其中Ri表示用户U在注册阶段提交的第i组笔迹,i的取值范围为1,2,. . .,N ;其中Si表示用户U在注册阶段提交的第i组笔迹Ri所对应的显示笔迹,i的取值范围为 1,2, . . . , N ;其中表示从用户U在注册阶段提交的N组注册笔迹中随机选取的M组注册笔迹中第k组注册笔迹所对应的显示笔迹,同时也表示为用户U在注册阶段提交的N组注册笔迹中第Jk组注册笔迹所对应的显示笔迹,k取值范围为1,2,...,M,Jk取值范围为1,2,...,
N0其中匕表示声称身份识别号为Uid的用户提交的M组测试笔迹集合中的第k组测试笔迹,同时也表示从用户U在注册阶段提交的N组注册笔迹中第Jk组注册笔迹所对应的显示笔迹的测试笔迹,k取值范围为1,2,...,M,Jk取值范围为1,2,... ,N5BP 从声称身份识别号为Uid的用户在认证阶段提交的M组测试笔迹集合中,选取一个测试笔迹匕,根据用户提交的身份识别号Uid在数据库中查找相应的用户U,然后根据测试笔迹G/万对应的组编号Jk提取相应的用户U在注册阶段提交的N组注册笔迹中第Jk组注册笔迹所对应的最优特征子集和分类器,最后根据提取到的最优特征子集和分类器完成对测试笔迹^^的认证。步骤540 :更新通过认证的测试笔迹数;具体的,从测试笔迹集合中提取一个测试笔迹后,根据传统在线笔迹认证方法的认证流程对该测试笔迹的认证结果,来决定是否更新通过认证的测试笔迹数。设Num表示通过认证的测试笔迹数,初始情况下Num = 0,取值范围为0,1,2,..., M, M表示测试笔迹集合中测试笔迹的总数目,则采用传统在线笔迹认证方法对选取的测试笔迹进行认证,当认证结果为否时,通过认证的测试笔迹数Num维持上次数值;当认证结果为真时,更新通过认证的测试笔迹数,即对通过认证的测试笔迹数Num进行加I操作。步骤550 :判断测试笔迹集合是否为空?如果是,跳到步骤560,判断通过认证的测试笔迹的总数目是否等于测试笔迹集合中测试笔迹的总数目?,如果否,跳到步骤520, 继续获取测试笔迹;具体的,计算机系统需对测试笔迹集合中的每个测试笔迹分别进行认证,每从测试笔迹集合中提取一个测试笔迹,就将该测试笔迹的编号从测试笔迹集合所对应的编号集合中删除;然后,判断测试笔迹集合是否为空,即为判断测试笔迹集合所对应的编号集合是否为空,当测试笔迹集合所对应的编号集合为空时,表明测试笔迹集合中的所有测试笔迹均已完成认证步骤,否则,继续从测试笔迹集合中提取测试笔迹用于认证。步骤560 :判断通过认证的测试笔迹的总数目是否等于测试笔迹集合中测试笔迹的总数目?如果是,跳到步骤570,判定笔迹认证通过,如果否,跳到步骤580,判定笔迹认证失败;具体的,当测试笔迹集合中的所有测试笔迹均已完成认证步骤后,得到测试笔迹集合中通过认证的测试笔迹的总数目,通过判断测试笔迹集合中通过认证的测试笔迹的总数目与测试笔迹集合中测试笔迹的总数目之间的关系,进行笔迹认证决策;设Qacx表示测试笔迹集合中通过认证的测试笔迹的总数目,M表示测试笔迹集合中测试笔迹的总数目,Uid表示用户提交的用户U的身份识别号,通过判断测试笔迹集合中通过认证的测试笔迹的总数目Qa。。与测试笔迹集合中测试笔迹的总数目M之间的关系,判断声称身份识别号为Uid的用户是否为用户U,即当测试笔迹集合中通过认证的测试笔迹的总数目Qa。。等于测试笔迹集合中测试笔迹的总数目M成立时,判定笔迹认证通过,即判定声称身份识别号为Uid的用户是用户U,当测试笔迹集合中通过认证的测试笔迹的总数目Qa。。小于测试笔迹集合中测试笔迹的总数目 M成立时,判定笔迹认证失败,即判定声称身份识别号为Uid的用户不是用户U。步骤570 :判定笔迹认证通过;具体的,当通过认证的测试笔迹的总数目等于测试笔迹集合中测试笔迹的总数目时,表示笔迹认证通过,即表示用户是声称身份识别号所对应的用户。步骤580 :判定笔迹认证失败;具体的,当通过认证的测试笔迹的总数目小于测试笔迹集合中测试笔迹的总数目时,表示笔迹认证失败,即表示用户不是声称身份识别号所对应的用户。步骤590 :结束;具体的,表示笔迹认证操作流程完成。图5为本发明采用传统在线笔迹认证方法的认证流程对用户提交的一个测试笔迹进行认证的流程示意图;其步骤具体包括步骤531 :开始;具体的,表示开始执行采用传统在线笔迹认证方法的认证流程对用户提交的一个测试笔迹进行认证操作流程。步骤532 :数据获取;具体的,当计算机系统获得测试签名集合后,从测试笔迹集合中提取一个测试笔迹。步骤533 :预处理;具体的,由于手写输入设备I的精度、书写环境等因素使获取的测试笔迹中存在噪声,通过预处理步骤对测试笔迹进行重采样、滤波、归一化等操作,去除噪声干扰以提高认证准确性。步骤534 :特征提取;具体的,当完成对测试笔迹的预处理后,根据数据库中与声称身份识别号以及测试笔迹组编号对应的某组注册笔迹的最优特征子集,通过特征提取算
15法得到测试笔迹的最优特征子集所对应的特征值数据。步骤535 :分类器决策;具体的,当完成对测试笔迹的特征提取后,采用数据库中与声称身份识别号对应的数据库中与声称身份识别号以及测试笔迹组编号对应的某组注册笔迹的分类器判别笔迹样本的真伪,从而判断测试笔迹是否通过认证。步骤536 :结束;具体的,表示采用传统在线笔迹认证方法的认证流程对用户提交的一个测试笔迹进行认证操作流程完成。从以上说明书附图的详细解释得知,本发明的实施例即是当用户以某一声称身份识别号进入计算机系统时,需要在指定时间内通过手写输入设备I完成所有测试笔迹的书写并一次性提交一组测试笔迹,然后经过本发明提供的一种基于计算机系统的在线笔迹认证方法,便得到该用户是否为声称身份识别号所对应的真实用户。
权利要求
1.一种基于计算机系统的在线笔迹认证方法,包括通过手写输入设备(I)实时采集书写信号,其特征在于所述在线笔迹认证方法包括提交若干组注册笔迹,笔迹注册,呈现显示笔迹集合,提交测试笔迹集合和笔迹认证,方法步骤是A、提交若干组注册笔迹用户借助手写输入设备(I)书写并提交若干组注册笔迹,需要对用户在注册阶段提交注册笔迹的组数的取值进行预先设定,提交的每组注册笔迹是由若干个内容一致的注册笔迹样本组成的注册笔迹样本集合,用户为每组注册笔迹提交注册笔迹样本的数目为两个,并且要求用户提交的不同组注册笔迹内容不同;B、笔迹注册包括获取一组注册笔迹、指定显示笔迹、注册、判断用户提交的若干组注册笔迹集合是否为空?具体是a:获取一组注册笔迹;用户借助手写输入设备(I)书写并提交若干组注册笔迹后,从用户提交的若干组注册笔迹集合中提取一组注册笔迹作为当前组注册笔迹,将该组注册笔迹对应的组编号从用户提交的若干组注册笔迹集合的组编号集合中删除;b :指定显示笔迹;用户从当前组注册笔迹的注册笔迹样本集合中指定一个注册笔迹样本作为显示笔迹,根据计算机系统为用户分配的唯一身份识别号,将显示笔迹的二维静态字形位置信息存入数据库;c :注册;计算机系统按照传统在线笔迹认证方法的注册流程完成对每组注册笔迹的注册,具体包括数据获取、预处理、特征提取、分类器训练,数据存入数据库;d :判断用户提交的若干组注册笔迹集合是否为空?如果是,结束笔迹注册流程,如果否,跳到步骤a,获取用户提交的注册笔迹集合中的下一组注册笔迹;C、呈现显示笔迹集合用户向计算机系统提交声称身份识别号,计算机系统根据声称身份识别号所对应的用户在注册阶段提交的若干组注册笔迹随机选取多组注册笔迹,计算机系统从数据库中提取随机选取的多组注册笔迹所对应的显示笔迹,组成显示笔迹集合, 通过显示界面将显示笔迹集合中的每个显示笔迹的二维静态字形位置信息呈现给用户,随机选取的多组注册笔迹的组数小于声称身份识别号所对应的用户在注册阶段提交注册笔迹的组数,且随机选取的多组注册笔迹的组数的具体取值,需要综合考虑计算机系统的安全性以及用户使用的方便性进行预先设定;D、提交测试笔迹集合通过显示界面将显示笔迹集合中的每个显示笔迹的二维静态字形位置信息呈现给用户后,用户借助手写输入设备(I),按照每个显示笔迹的显示顺序依次书写与对应显示笔迹内容一致的测试笔迹,其中,需要书写并提交的测试笔迹的总数目与显示笔迹集合中显示笔迹的总数目相同,特别地,用户必须在指定时间内完成所有测试笔迹的书写并一次性提交,计算机系统得到与显示笔迹集合对应的测试笔迹集合;E、笔迹认证a :获取测试笔迹;用户提交测试笔迹集合后,计算机系统需对测试笔迹集合中的每个测试笔迹分别进行认证,每从测试笔迹集合中提取一个测试笔迹,将该测试笔迹对应的组编号从测试笔迹集合的组编号集合中删除;b :判断是否通过认证?包括数据获取、预处理、特征提取、分类器决策;如果是,更新通过认证的测试笔迹数,如果否,判断测试笔迹集合是否为空?从测试笔迹集合中提取一个测试笔迹后,采用传统在线笔迹认证方法的认证流程对该测试笔迹进行认证,从而判断该测试笔迹是否通过认证;c :更新通过认证的测试笔迹数;从测试笔迹集合中提取一个测试笔迹后,根据传统在线笔迹认证方法的认证流程对该测试笔迹的认证结果,决定是否更新通过认证的测试笔迹数;d :判断测试笔迹集合是否为空?如果是,判断通过认证的测试笔迹的总数目是否等于测试笔迹集合中测试笔迹的总数目?如果否,继续获取测试笔迹;计算机系统需对测试笔迹集合中的每个测试笔迹分别进行认证,每从测试笔迹集合中提取一个测试笔迹,将该测试笔迹的编号从测试笔迹集合所对应的编号集合中删除,判断测试笔迹集合是否为空,即为判断测试笔迹集合所对应的编号集合是否为空,当测试笔迹集合所对应的编号集合为空时,表明测试笔迹集合中的所有测试笔迹均已完成认证步骤,否则,继续从测试笔迹集合中提取测试笔迹用于认证;e :判断通过认证的测试笔迹的总数目是否等于测试笔迹集合中测试笔迹的总数目? 如果是,判定笔迹认证通过,如果否,判定笔迹认证失败,结束。
2.根据权利要求I所述一种基于计算机系统的在线笔迹认证方法,其特征是所述通过手写输入设备(I)采集手写签名数据,其中手写输入设备(I)包括手写输入模块(11)、信号采集模块(12)、信号处理模块(13)和显示模块(14)。
3.根据权利要求2所述一种基于计算机系统的在线笔迹认证方法,其特征是所述通过手写输入设备(I)或为外接有手写输入设备的计算装置或仪器,或为PDA、手写输入手机、Tablet PC、服务器。
全文摘要
一种基于计算机系统的在线笔迹认证方法,用户借助手写输入设备书写并提交若干组注册笔迹,将其所对应的显示笔迹的二维静态字形位置信息存入数据库,并按照传统在线笔迹认证方法完成笔迹注册。计算机系统测试时,用户提交声称身份识别号,从对应的用户在注册阶段提交的若干组注册笔迹中随机选取多组注册笔迹,并将其显示笔迹的二维静态字形位置信息呈现给用户。用户需在指定时间内一次性提交与其对应的测试笔迹集合,按照基于计算机系统的在线笔迹认证方法完成测试笔迹认证,综合决策完成对用户身份的鉴别。本方法具有抵挡重放攻击,不易被模仿者攻击和主动防御的优点,有效地解决了现有在线笔迹认证方法忽略的依赖笔记保密和易被模仿的缺陷。
文档编号G06K9/68GK102592152SQ20121000260
公开日2012年7月18日 申请日期2012年1月5日 优先权日2012年1月5日
发明者吴仲城, 林秋诗, 申飞, 罗健飞, 邹杰 申请人:中国科学院合肥物质科学研究院