安卓指纹对称加密及登录功能的简单实现

对于指纹登录,先上效果图

设置指纹登录:

指纹登录:

一、概述

指纹识别这个名词听起来并不陌生,Google从Android6.0(api23)开始提供标准指纹识别支持,并对外提供指纹识别相关的接口。越来越多的应用支持指纹登录、认证、支付等功能。今天一起来研究一下。

二、指纹识别的对称加密

首先我们判断手机是否支持指纹识别,是否有相关的传感器,是否录入了相关指纹,然后才开始对指纹做出系列的操作;

这里初始化handle对应指纹识别完成后发送过来的消息

对称加密的主要实现步骤如下:

  1. 新建一个KeyStore密钥库,用于存放密钥;
  2. 获取KeyGenerator密钥生成工具,生成密钥;
  3. 通过密钥初始化Cipher对象,生成加密对象CryptoObject;
  4. 调用authenticate() 方法启动指纹传感器并开始监听。

1.新建一个KeyStore密钥库存放密钥:

2.获取KeyGenerator密钥生成工具,生成密钥:

3.通过密钥初始化Cipher对象,生成加密对象CryptoObject:

4.调用authenticate() 方法启动指纹传感器并开始监听:

最后我们在回调的类中监听指纹识别的结果:

好了,上面一直讲的是对称加密以实现指纹识别;

接下来写了一个使用指纹进行登录的demo及封装(这里没有使用加密..):

我们先来看下我总结的指纹登录流程

指纹识别一定会有成功、失败等各种情况,所以先定义一个回调监听

1、先封装了指纹工具类

指纹识别相关管理类当然是必须的了。

2、初始化它们

3、初始化系统的识别回调

4、开始识别

注意:ActivityCompat.checkSelfPermission必须在开始识别前执行,否则编译环境会报错...

5、取消识别

同时也少不了各种情况的判断

好了,指纹识别大概是这样了。

觉得好的话就点各赞,分享一下喽!

原文发布于微信公众号 - Android机动车(JsAndroidClub)

原文发表时间:2017-11-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ThoughtWorks

在项目中透明地引入特性开关

之前曾经推荐过崔立强的《使用功能开关更好地实现持续部署》,介绍Feature Toggle的实践。北京办公室的孟宇现在对这个问题有了新的思考,当我们抛却Spri...

42660
来自专栏更流畅、简洁的软件开发方式

使用了继承、多态还有工厂模式和反射,但是还是没有OO的感觉。[已经增加了实现的代码]

最近项目里遇到了一个问题,为了解决这个问题“动用了”继承、多态还有工厂模式和反射,但是还是没有OO的感觉。呵呵。 先说一下具体情况: 1、使用短信猫来接收短...

36180
来自专栏杂七杂八

使用python3爬取网易云音乐的评论

用过很多播放器,之前一直是酷我,偶尔QQ。但是网易云音乐出来后毅然变成了他的忠实用户。精确推荐和乐评都很赞!安利了不少人入坑。前些日子网易云音乐将精选用户评论...

36950
来自专栏FreeBuf

CTF中RSA题型解题思路及技巧

0x01 RSA算法简介 为了方便小白咀嚼后文,这里先对RSA密钥体制做个简略介绍(简略因为这不是本文讨论的重点) 选择两个大素数p和q,计算出模数N = p ...

1K60
来自专栏信安之路

CTF 玩转 Crypto 月度总结

两个越来,感谢老大哥们的照顾,自己学到挺多的简单的写下 Crypto 各类密码学和 misc 类流量分析的心得。菜鸡一个,不喜勿喷。

40300
来自专栏菩提树下的杨过

温故而知新:设计模式之工厂模式(Factory)

工厂模式:个人理解为主要用于创建"同一系列"的N个对象实例。(注意这里"同一系列"指这一系列对象均继承于某一个抽象类或均实现了某一个接口) 举例:(仍然来自李建...

210100
来自专栏一直在跳坑然后爬坑

Flutter 小练习

学Flutter也有一段时间了,一直在学习理论,还没怎么做过练习。想起以前初学Android的时候做过的一个练手小玩具,今天决定用Flutter去实现一下子。核...

33210
来自专栏FreeBuf

“DNS隧道”盗号木马分析

盗号木马相信大家都不陌生。随着网络越来越普及,网上的账号密码越来越重要,盗号木马的生命力也就越发的顽强了。 随着与杀毒软件的对抗,盗号木马也在不断的更新换代。Q...

230100
来自专栏信安之路

密码破解那些事

最近恰巧刚好搞到一批hash,所以就寻思着,要不顺手小结一点关于hash破解的东西吧,反正经常要用,就当留备忘了,顺便也分享给大家,主要还是希望大家都能在实际渗...

1.2K00
来自专栏FreeBuf

控制流程完整性:给大家介绍一种“另类”的Javascript反分析技术

写在前面的话 理解恶意软件的真实代码对恶意软件分析人员来说是非常有优势的,因为这样才能够真正了解恶意软件所要做的事情。但不幸的是,我们并不总是能够得到“真实”的...

33740

扫码关注云+社区

领取腾讯云代金券