论文部分内容阅读
[摘 要]随着科技的迅猛发展,秘密对于个人、公司、国防工业来说变得越发重要,特别是在国防和商业方面,秘密直接关系到国家的安全和企业的生存发展。计算机密码时代经历了数字加字母阶段、物理验证阶段、物理验证加密码阶段,但在不断发展壮大的黑客面前却变得非常脆弱。指纹识别作为生理特征可以直接应用在计算机加密系统上,本文将指纹系统嵌入计算机系统,增加计算机加密系統的安全性,保护个人或公司隐私不被泄露。
[关键词]秘密 加密 生理特征 指纹识别
中图分类号:S812 文献标识码:A 文章编号:1009-914X(2018)29-0378-01
1、用户登陆系统设计
本文在用户管理环节设置了用户登陆系统,主要是对用户登录和密码验证部分做了重新设计,使其更能够适应单位或个人的保密要求,并减少验证时间和环节,提高验证的可靠性。
2、开机指纹验证原理
原理简单的说就是通过将个人的指纹录入到计算机的数据库中,通过指纹采集设备,才进行指纹识别。具体原理如下:
(1)在电脑里录入自己的指纹,每次只录入一个指纹。为了更好的实现保密建议每周录入一次新的指纹,旧的指纹一周后过期,旧的指纹识别器不与识别,这样就可以起到数据更新的目的。
(2)将U盘形状的指纹采集设备插在电脑的USB口上,便于操作。选择U盘形状的识别器是为了更好的替换当前使用的UKEY,这样既保留了以前的工作模式,又不做大的改动,保证了员工的正常工作环境,同时也节省了指纹识别设备的花费,便于工作。
(3)当需要使用计算机时,将U盘形状的识别器插于USB口,并将手指放在识别器上,当识别通过后进入下一步用户密码阶段;如果使用途中有事离开电脑旁,或者“注销”、“休眠”时不用将指纹识别器拔掉(目前使用的UKEY,单位要求离开电脑时拔掉,待再使用时再插上),再使用电脑时直接将手指重新识别即可进入下一步用户密码阶段。相对与以前UKEY的使用方法及能起到保密,又提供了便利,节省了时间。
2.1 指纹的采集与录入
获取指纹的过程是一个数字化采集的过程,同时也是将采集的数字化指纹输入到计算机里面的一个过程。这个过程涉及到两方面的技术,一个是成像技术,一个是模数转换技术。在微电子以及固态成像CCD的快速发展过程中,指纹采集设备的成本越来越少,所以慢慢向贫民化普及,随着时代的发展,以后将成为计算机的必备器件。
2.2 图像二值化
本文将采用脊线分析的二值化方法来处理指纹,之后在利用过滤器虑噪。
如下所述:
(1)将背影或者不能恢复的部分设为“0”值。
(2)对前景指纹的像素,分析后设为“1”,或者“0”值。
(3)把灰度点作为中心,将该中心点放在图片的平行位置,并统计所有灰度的个数,选择7*9的方式,我们就可以得到9个和的矢量。
(4)用像素灰度的和来乘9,得到的乘积C再与9个和A来比较,假如C大于A,则设该点为“0”,相反就设置为“1”。
(5)由于指纹在滤波之后仍带有一些噪声,所以需要第二次进行滤波。这时
候需要采用加权中值的方法来滤波,其主要运用了指纹图与模糊算法来滤波。图片经过加权滤波以后,其指纹图片上的孔、小缺口等模糊处,基本就消除掉了,其结果看起来纹路清楚,这样就对我们下一步处理打好了了基础。
2.3 图像的分割
通常在采集指纹结束后,我们进行的下一步就是图像的分割,该部分的主要内容是将指纹图像分割成两部分,一部分是指纹区,另一部分是非指纹区。分成两个区的目的就是将纯指纹提取出来,再将剩余的部分与指纹部分分割开,主要是为了以后处理的时候能更加真实和有效。这样做不仅仅可以提高指纹的一些特征图样,提高识别的精度,同时也可以很大程度上减少指纹图像的处理时间。
3、系统设计
本次设计的系统主要是利用C/S的结构设计,主要包括了指纹图像的注册以及验证这两部分,谈到注册必须讲到服务器,其主要是指服务器部分,主要是指个人指纹的采集、加密并处理、指纹数据入库等,其指纹图像验证过程主要是客户端,其环节主要有指纹图像的采集、处理、与指纹库中存储的指纹相匹配等等功能,之后注册完成后或是验证通过后都必须要能给出信息。
3.1 指纹采集及注册
指纹的采集我们可以规定为3次,其中分别分别获取3个临时性的模板进行融合,输入的过程中采集仪会比对上一次输入的模板,若临时的模板没有匹配上,就要重新进行输入,假如在合成的过程中出现了错误,则要再次重新采集3次指纹分别输入。最后会生成一个模板数据入库,这样就完成了指纹数据的采集。
3.2 验证过程
通常在已经录入了正确的指纹后就开始验证,这个过程可以描述成,首先我们将对指纹图像的信息进行获取,之后待指纹信息获取成功之后再自动对比和匹配指纹库里的信息模板,假如获取的指纹信息与数据库的指纹信息匹配不上,那么就会提醒说信息查不到。假如获取的指纹信息与数据库里录入的信息经过比对以后发现是一致的,那么解锁通过,执行下一步。
3.3 数据采集和匹配过程
指纹的匹配或者说识别,其实就是将指纹的具体信息的一个对比的一个流程。在通过自己软件的编译后,可以按照自己需要的指纹信息来提取指纹信息,从而生成一些特殊的加密编码,每个指纹都有不同的信息,不同的编码,最后再将这些指纹信息分别存于指纹的数据库中。匹配主要是将当前所提取的指纹信息与之前就存储在指纹数据库中的指纹信息进行对比和认证,从而来验证当前的这个指纹是否已经被存在数据库,是否与指纹数据库中的指纹相同,相同则表示两个指纹一致,不相同则表示不一致。
这时候可以看到,在通过一步步的比测后,最后的结果可以看出来,编译系统能对指纹数据进行1:1的对比,或者说是1:N个指纹的对比,编译时考虑到了单位的人数,按照单位有1000人来计算,需要达到的指纹识别率能〈1‰的精度。 3.4 数据库设计
按照设计系统的规划,系统基于B/S进行设计,还要有IIS的服务,同时还要安装所需要的软件才能运行编译程序,而C/S的指纹输入和指纹比对系统则是由VC++编译而成。
指纹识别程序中录入部分和指纹比对系统是用VC++编译,主要是B/S需要涉及到加载进库出库等功能,因此C#编译的语言将比较轻松的来实现我们将要实现的功能,同时它也能比较容易的与后台运行的其他程序的代码相匹配。假如需要重新设计指纹识别界面,也可以运用HTML来实现,同时Dreamweaver也能比较直观的设计或者修改我们需要的界面。
指纹识别设备在运行时,需要我们安装一些驱动软件,同时需要注册OCX和DLL等文件;与此同时还要安装IIS。还需要安装VisualStudio,作为修改程序使用,主要功能是修改、纠错、编译和查询。
4、系统测试
白盒测试也有自己突出的优点,它可以检测到一级代码,可以比较早的发现软件当中的问题,而且起到的效果也是比较好的。主要测试方法就是,当进入到代码的内部进行检测,并按照编译人员对程序的了解程度,按照需求对需要编译的部分进行软件编译,而编译人员根据自己对软件的理解进行软件的检测。
这一检测的过程主要是以编译人员为主,通常是在JAVA平台上用Xunit软件来进行检测,Xunit主要是每个类都要和该类进行对比检测。
5、结论
通过使用白盒测试方法测试后,测试结果为合格,可以正常使用。这次指纹
识别系统的软件开发,在编译的时候采用了识别器的开发包进行二次開发,是的整个编译过程即便捷又容易实现。总的来说软件的难点在于识别这一块儿,有了开发包我们可以进行二次开发,相对来说会顺利一些,该系统还需要进一步验证优化,因为将指纹识别作为计算机加密系统的一部分是可行的,为计算机安全提供了可用的参考。
参考文献
[1] 汤子赢.计算机操作系统.西安:西安电子科技大学出版社,2001.
[2] 袁翔.VisualC++实践与提高系列丛书.北京:人民铁道出版社,2001.
[3] 张宏林.VisualC++6.0程序设计与开发技术大全.北京:人民邮电出版社,2004.
[关键词]秘密 加密 生理特征 指纹识别
中图分类号:S812 文献标识码:A 文章编号:1009-914X(2018)29-0378-01
1、用户登陆系统设计
本文在用户管理环节设置了用户登陆系统,主要是对用户登录和密码验证部分做了重新设计,使其更能够适应单位或个人的保密要求,并减少验证时间和环节,提高验证的可靠性。
2、开机指纹验证原理
原理简单的说就是通过将个人的指纹录入到计算机的数据库中,通过指纹采集设备,才进行指纹识别。具体原理如下:
(1)在电脑里录入自己的指纹,每次只录入一个指纹。为了更好的实现保密建议每周录入一次新的指纹,旧的指纹一周后过期,旧的指纹识别器不与识别,这样就可以起到数据更新的目的。
(2)将U盘形状的指纹采集设备插在电脑的USB口上,便于操作。选择U盘形状的识别器是为了更好的替换当前使用的UKEY,这样既保留了以前的工作模式,又不做大的改动,保证了员工的正常工作环境,同时也节省了指纹识别设备的花费,便于工作。
(3)当需要使用计算机时,将U盘形状的识别器插于USB口,并将手指放在识别器上,当识别通过后进入下一步用户密码阶段;如果使用途中有事离开电脑旁,或者“注销”、“休眠”时不用将指纹识别器拔掉(目前使用的UKEY,单位要求离开电脑时拔掉,待再使用时再插上),再使用电脑时直接将手指重新识别即可进入下一步用户密码阶段。相对与以前UKEY的使用方法及能起到保密,又提供了便利,节省了时间。
2.1 指纹的采集与录入
获取指纹的过程是一个数字化采集的过程,同时也是将采集的数字化指纹输入到计算机里面的一个过程。这个过程涉及到两方面的技术,一个是成像技术,一个是模数转换技术。在微电子以及固态成像CCD的快速发展过程中,指纹采集设备的成本越来越少,所以慢慢向贫民化普及,随着时代的发展,以后将成为计算机的必备器件。
2.2 图像二值化
本文将采用脊线分析的二值化方法来处理指纹,之后在利用过滤器虑噪。
如下所述:
(1)将背影或者不能恢复的部分设为“0”值。
(2)对前景指纹的像素,分析后设为“1”,或者“0”值。
(3)把灰度点作为中心,将该中心点放在图片的平行位置,并统计所有灰度的个数,选择7*9的方式,我们就可以得到9个和的矢量。
(4)用像素灰度的和来乘9,得到的乘积C再与9个和A来比较,假如C大于A,则设该点为“0”,相反就设置为“1”。
(5)由于指纹在滤波之后仍带有一些噪声,所以需要第二次进行滤波。这时
候需要采用加权中值的方法来滤波,其主要运用了指纹图与模糊算法来滤波。图片经过加权滤波以后,其指纹图片上的孔、小缺口等模糊处,基本就消除掉了,其结果看起来纹路清楚,这样就对我们下一步处理打好了了基础。
2.3 图像的分割
通常在采集指纹结束后,我们进行的下一步就是图像的分割,该部分的主要内容是将指纹图像分割成两部分,一部分是指纹区,另一部分是非指纹区。分成两个区的目的就是将纯指纹提取出来,再将剩余的部分与指纹部分分割开,主要是为了以后处理的时候能更加真实和有效。这样做不仅仅可以提高指纹的一些特征图样,提高识别的精度,同时也可以很大程度上减少指纹图像的处理时间。
3、系统设计
本次设计的系统主要是利用C/S的结构设计,主要包括了指纹图像的注册以及验证这两部分,谈到注册必须讲到服务器,其主要是指服务器部分,主要是指个人指纹的采集、加密并处理、指纹数据入库等,其指纹图像验证过程主要是客户端,其环节主要有指纹图像的采集、处理、与指纹库中存储的指纹相匹配等等功能,之后注册完成后或是验证通过后都必须要能给出信息。
3.1 指纹采集及注册
指纹的采集我们可以规定为3次,其中分别分别获取3个临时性的模板进行融合,输入的过程中采集仪会比对上一次输入的模板,若临时的模板没有匹配上,就要重新进行输入,假如在合成的过程中出现了错误,则要再次重新采集3次指纹分别输入。最后会生成一个模板数据入库,这样就完成了指纹数据的采集。
3.2 验证过程
通常在已经录入了正确的指纹后就开始验证,这个过程可以描述成,首先我们将对指纹图像的信息进行获取,之后待指纹信息获取成功之后再自动对比和匹配指纹库里的信息模板,假如获取的指纹信息与数据库的指纹信息匹配不上,那么就会提醒说信息查不到。假如获取的指纹信息与数据库里录入的信息经过比对以后发现是一致的,那么解锁通过,执行下一步。
3.3 数据采集和匹配过程
指纹的匹配或者说识别,其实就是将指纹的具体信息的一个对比的一个流程。在通过自己软件的编译后,可以按照自己需要的指纹信息来提取指纹信息,从而生成一些特殊的加密编码,每个指纹都有不同的信息,不同的编码,最后再将这些指纹信息分别存于指纹的数据库中。匹配主要是将当前所提取的指纹信息与之前就存储在指纹数据库中的指纹信息进行对比和认证,从而来验证当前的这个指纹是否已经被存在数据库,是否与指纹数据库中的指纹相同,相同则表示两个指纹一致,不相同则表示不一致。
这时候可以看到,在通过一步步的比测后,最后的结果可以看出来,编译系统能对指纹数据进行1:1的对比,或者说是1:N个指纹的对比,编译时考虑到了单位的人数,按照单位有1000人来计算,需要达到的指纹识别率能〈1‰的精度。 3.4 数据库设计
按照设计系统的规划,系统基于B/S进行设计,还要有IIS的服务,同时还要安装所需要的软件才能运行编译程序,而C/S的指纹输入和指纹比对系统则是由VC++编译而成。
指纹识别程序中录入部分和指纹比对系统是用VC++编译,主要是B/S需要涉及到加载进库出库等功能,因此C#编译的语言将比较轻松的来实现我们将要实现的功能,同时它也能比较容易的与后台运行的其他程序的代码相匹配。假如需要重新设计指纹识别界面,也可以运用HTML来实现,同时Dreamweaver也能比较直观的设计或者修改我们需要的界面。
指纹识别设备在运行时,需要我们安装一些驱动软件,同时需要注册OCX和DLL等文件;与此同时还要安装IIS。还需要安装VisualStudio,作为修改程序使用,主要功能是修改、纠错、编译和查询。
4、系统测试
白盒测试也有自己突出的优点,它可以检测到一级代码,可以比较早的发现软件当中的问题,而且起到的效果也是比较好的。主要测试方法就是,当进入到代码的内部进行检测,并按照编译人员对程序的了解程度,按照需求对需要编译的部分进行软件编译,而编译人员根据自己对软件的理解进行软件的检测。
这一检测的过程主要是以编译人员为主,通常是在JAVA平台上用Xunit软件来进行检测,Xunit主要是每个类都要和该类进行对比检测。
5、结论
通过使用白盒测试方法测试后,测试结果为合格,可以正常使用。这次指纹
识别系统的软件开发,在编译的时候采用了识别器的开发包进行二次開发,是的整个编译过程即便捷又容易实现。总的来说软件的难点在于识别这一块儿,有了开发包我们可以进行二次开发,相对来说会顺利一些,该系统还需要进一步验证优化,因为将指纹识别作为计算机加密系统的一部分是可行的,为计算机安全提供了可用的参考。
参考文献
[1] 汤子赢.计算机操作系统.西安:西安电子科技大学出版社,2001.
[2] 袁翔.VisualC++实践与提高系列丛书.北京:人民铁道出版社,2001.
[3] 张宏林.VisualC++6.0程序设计与开发技术大全.北京:人民邮电出版社,2004.