24小时论文定制热线

咨询电话

ASP.NETVC++MySQLPHP安卓JSPLinuxJava机械VBASP单片机模具汽车工程毕业设计Flash
您当前的位置:论文定制 > 毕业设计论文 >
快速导航
毕业论文定制
关于我们
我们是一家专业提供高质量代做毕业设计的网站。2002年成立至今为众多客户提供大量毕业设计、论文定制等服务,赢得众多客户好评,因为专注,所以专业。写作老师大部分由全国211/958等高校的博士及硕士生设计,执笔,目前已为5000余位客户解决了论文写作的难题。 秉承以用户为中心,为用户创造价值的理念,我站拥有无缝对接的售后服务体系,代做毕业设计完成后有专业的老师进行一对一修改与完善,对有答辩需求的同学进行一对一的辅导,为你顺利毕业保驾护航
代做毕业设计
常见问题

指纹识别在安卓系统中的实现

添加时间:2018/06/29
安卓系统软件运行在主处理芯片上, 所以如果想实现指纹识别功能, 需要基于安卓系统软件进行二次开发。根据安卓系统架构以及分层封装思想, 需要在主芯片软件的驱动层、硬件适配层、服务层、管理层以及锁屏程序中增加指纹识别功能。
  以下为本篇论文正文:
  摘 要:目前对用户信息安全保护的要求越来越高, 指纹识别作为生物识别中最重要的手段之一被大量的应用。安卓系统广泛应用于各种智能设备上, 所以在安卓系统中增加指纹识别功能具有重要的意义。本文设计了一种在安卓设备上增加指纹识别功能的方案。
  
  关键词:指纹识别; 安全保护; 安卓; 智能设备;
  


 
  Abstract: At present, with more and more requirements for user information security protection, fingerprint recognition is used prevalently as one of the most important means in biometrics. The Android system is widely used in various smart devices, so it is of great significance to implement the fingerprint recognition function in the Android system. A solution for adding fingerprint recognition to Android devices has been designed.
  
  Keyword: Fingerprint recognition; Security protection; Android; Smart device;
  
  1、 概述
  
  随着社交, 支付等应用广泛普及, 对用户信息安全保护的要求越来越高。目前通常的解决方案是通过用户名加密码的方式进行用户的身份认证, 以达到隔离用户信息、安全保护的作用。但是这种方案存在一些问题:一是密码容易被遗忘, 随着破解技术和运算能力的提高, 密码只有越来越长才能确保安全, 但是过长的密码易被遗忘。二是密码容易被盗取, 由于密码只是包含字母、数字等的一串符号, 随着破解技术和运算能力的提高, 密码越来越易被破解, 从而盗取了用户的信息。所以需要应用新的方法来进行身份认证。
  
  生物特征是每个个体唯一的可识别的生理特性或行为方式。通过生物特征来进行身份认证可以克服容易被遗忘和盗取等缺点, 所以得到了越来越广泛的使用。目前指纹、耳纹、容貌、虹膜等生物特征都可以作为一种可辨明身份的识别手段, 其中指纹识别又是生物识别技术中最为普及的一种。指纹是手指皮肤上因凸凹不平产生的纹路, 对于不同的人这些纹路在断点和交叉点等图案上各不相同, 因此可以通过指纹来识别验证个人的真实身份[1].目前从全球来看, 指纹识别占整个生物识别市场的近60%的市场份额。
  
  安卓是美国谷歌公司研发的移动设备上的操作平台。此平台基于嵌入式linux操作系统, 并增加了丰富的服务和接口, 方便了上层各种应用的开发[2].在安卓系统中各种支付、社交等应用需要保护用户信息, 因此在安卓系统中实现指纹识别技术有十分重要的意义。
  
  2、 指纹识别在安卓系统中的实现原理
  

  2.1、 指纹识别的基本方法
  
  目前, 主流的指纹识别的方法如图1所示。主要是通过摄像头、触摸屏等器件进行指纹采集, 并生成指纹图像, 然后将指纹图像进行预处理, 如边缘锐化、对比度增强等, 并在经过预处理的指纹图像中提取特征点, 最后和指纹库中样本进行匹配, 判断是否满足需求。
  
  图1 指纹识别的基本原理
  
  
  
  2.2、 指纹识别在安卓系统中的实现
  
  如果要在安卓系统中增加指纹处理功能, 需要在硬件和软件系统中增加新的部分。
  
  2.2.1、 硬件部分
  
  需要在硬件系统中增加装置以收集指纹, 还需增加传输接口 (如spi, i2c等) , 以便收集到的指纹数据传输到硬件系统的主处理芯片。
  
  2.2.2、 软件部分
  
  安卓系统软件运行在主处理芯片上, 所以如果想实现指纹识别功能, 需要基于安卓系统软件进行二次开发。根据安卓系统架构以及分层封装思想, 需要在主芯片软件的驱动层、硬件适配层、服务层、管理层以及锁屏程序中增加指纹识别功能。
  
  3、 实验和结果
  
  安卓智能设备上的指纹识别方案要从硬件部分和软件部分两方面实现。
  
  3.1、 硬件部分实现
  
  指纹识别方案的硬件框图如图2所示, 主处理芯片采用展讯的SC7731, 指纹收集模块为汇顶的GF816M, 二者通过SPI总线连接在一起。其中SC7731配置为SPI master, GF816M配置为SPI slave.
  
  图2 指纹识别硬件框图
  
  
  
  3.2、 软件部分实现
  
  指纹识别方案的软件流程框图如图3所示, SC7731芯片软件采用的安卓平台, 底层操作系统为Linux.
  
  图3 指纹识别软件流程框图
  
  
  
  进行二次开发的具体实现方法分为以下几个步骤:
  
  3.2.1、 在驱动层中增加软件, 来管理指纹收集装置, 以及与指纹收集装置进行传输。具体实现为在SC7731软件底层Linux系统中增加指纹识别模块GF816M的驱动。在驱动程序中先注册SPI接口, 再注册中断, 然后配置SPI的传输模式, 最后编写指纹数据通信函数接口程序, 来读取芯片中的指纹数据并提供给硬件适配层。
  
  3.2.2、 在硬件适配层中增加指纹识别功能的软件, 对驱动层得到的指纹信息进行处理, 并验证是否是已经保存的可信任的指纹, 然后将这部分软件封装成接口提供给上层调用。具体实现为在SC7731软件系统的硬件适配层增加指纹读取模块、指纹存储模块和指纹验证模块等。从驱动层读取指纹数据, 并将数据与存储的指纹进行比较, 然后将验证结果提供给指纹识别的服务器层。同时需要编写用于存储和检索指纹数据的程序, 并封装触发接口提供给指纹识别的服务层。
  
  3.2.3、 调用硬件适配层的接口并创建指纹识别服务。具体实现为在SC7731软件系统的安卓平台中添加指纹识别服务, 将硬件适配层得到的指纹验证结果提供给应用层。同时此服务中也需要把指纹数据管理接口提供给应用层, 触发硬件适配层存储指纹数据。此服务中还有查询软件版本、硬件信息等辅助功能。
  
  3.2.4、 利用指纹识别服务, 设计指纹管理应用, 进行指纹录入、更新、删除等。具体实现为在SC7731软件系统的安卓平台中增加指纹管理应用程序, 通过调用指纹识别服务层的接口, 进行指纹库录入、更新、删除等管理功能以及查询版本的功能。用户可以按照指示, 将特定的指纹放置在系统的指纹识别设备上, 进行指纹录入。这时指纹管理应用可以通过调用服务层接口触发硬件适配层的存储功能, 将此次录入的指纹存储下来。
  
  3.2.5 在需要安全认证的应用中, 通过调用指纹识别服务增加指纹验证处理。具体实现时可将指纹识别应用于屏幕解锁, 在SC7731软件系统安卓平台的指纹解锁应用中, 改写密码输入验证部分, 通过调用指纹识别服务层接口, 增加指纹验证功能。用户在解锁屏幕时不仅可以通过输入密码, 还可以通过指纹识别来完成验证。
  
  按照上述设计, 可成功的在SC7731芯片的安卓平台中增加了指纹识别功能。
  
  参考文献:
  
  [1]Sharath Pankanti, Salil Prabhakar, Anil K Jain.On the individuality of fingerprints, IEEE Transactions on PatternAnalysis and Machine Intelligence, 2002 (Vol.24 No.8) 1010-1025.
  [2]Rick Rogers.Android application development, 2009.
    相关内容
    好优论文定制中心主要为您提供代做毕业设计及各专业毕业论文写作辅导服务。
    所有论文、资料均源于网上的共享资源以及一些期刊杂志,所有论文仅免费供网友间相互学习交流之用,请特别注意勿做其他非法用途。
    如有侵犯您的版权或其他有损您利益的行为,请联系指出,论文定制中心会立即进行改正或删除有关内容!