乾坤一笑 阅读(5653) 评论(9)
原以为使用了Linux就和指纹识别无缘了呢,没想到是我错误低估了黑客们的能量。:p 现在sourceforge上有一个开源的项目叫做Thinkfinger (外链网址已屏蔽thinkfinger.sourceforge.net/)就是专门针对Thinkpad指纹识别系统的做的驱动,我试了一下,很好用。:) 目前,Thinkfinger已经发布到了0.3版本,由于我比较懒,所以选用了别人做成rpm的0.2.2版本来安装,这样比较简单,不需要编译了。

1) 对于SUSE用户,下载对应于你系统的版本(以前总用32位的系统,不太关注这个问题,现在换64位的,时时刻刻都要提醒自己不要装错了。:p);对于其他用户,也请找到对应的安装文件,或者自己去sourceforge下载源码编译:
下面是一个源,其他地方的源也可以:
外链网址已屏蔽download.opensuse.org/distribution/SL-OSS-factory/inst-source/suse/
下载并安装:libthinkfinger-0.2.3-3.i586.rpm
下载并安装:pam_thinkfinger-0.2.3-3.i586.rpm

2)安好后su到root,让我来测试一下:
a) tf-tool --acquire
测试是否正常获取指纹数据,需要正确的刷3遍即可通过。通过后会在/tmp下创建一个test.bir文件
b) tf-tool --verify
测试能否正确验证指纹,需要正确的刷1遍即可通过。(Result: Fingerprint does match.)

如果通过前两步的测试,那么让我们开始吧:
c) mkdir -p /etc/pam_thinkfinger
创建需要的目录,保险起见做一下这一步。因为我安装后/etc/pam_thinkfinger是已经自动给创建了的。
d) tf-tool --add-user USER_NAME
加入你需要调用指纹认证模块的用户名,USER_NAME就是你想登录进系统的登录名。
做了这一步,thinkfinger会在你/etc/pam_thinkfinger目录下创建一个USER_NAME.bir文件,这就是你的指纹信息了。

上面两步正常之后,就让我们把整个指纹跟系统的安全认证联系起来吧:
e) 修改/etc/pam.d/common-auth文件,在pam_unix2.so这一行的前面加入pam_thinkfinger.so 例如我的就是:
auth required pam_env.so
auth sufficient pam_thinkfinger.so
auth required pam_unix2.so

注意:如果把pam_thinkfinger.so放在pam_unix2.so这一行后面,那就变成了先输入密码,再输入指纹的双重验证了;而我们期望的是类似于Windows下输入指纹或者输入密码的验证方式。也不要把pam_unix2.so这一行注释掉,不然你会死的很惨的,哈哈。

注:我的机器配置:Thinkpad X60-BS8 (Centrino Duo)

-------------
乾坤一笑 写于2007年4月8日 转载请标明出处和原文链接

评论列表
hatemath
re: Linux下的Thinkpad指纹识别系统
关注。笑笑你说我能不能在sourceforge上你说的驱动程序中找到指纹特征提取和匹配的源码?
乾坤一笑
hatemath\\re: Linux下的Thinkpad指纹识别系统
如果有源码自然是有的,不过我估计对于指纹的处理算法用硬件实现的可能性会更大。:)
hatemath
re: Linux下的Thinkpad指纹识别系统
用硬件应该速度很快,不过现在管不了那么多啦,我当下的任务是写出(或者别的方式搞到)实现指纹特征提取和匹配的源代码。
周星星
re: Linux下的Thinkpad指纹识别系统
:)笑笑多写此类的文章,以普及linux知识
乾坤一笑
to 周星星//re: Linux下的Thinkpad指纹识别系统
8过,本文纯属笔记性质,感谢在此问题上陪我熬夜帮助我的netman 。:)
笑不出来
re: Linux下的Thinkpad指纹识别系统
我T60P装了10多次都没成功
能否说说源码安装的具体步骤
我是UBUNTU7.04
一笑
to 笑不出来 //re: Linux下的Thinkpad指纹识别系统
源码安装就是sudu ./configure & make & make install阿。很简单的,你看看源码目录下的readme和INSTALL这两个文档,应该能找到很多帮助你定位的信息。

发表评论
切换编辑模式