android 13 指纹整理
术语
缩略语 | 英文全名 | 中文解释 |
---|---|---|
TEE | Trusted Execution Environment | 可信执行环境,存在于主 CPU 中的一块安 全运行环境。 |
CA | Client Application | 客户端应用,通常指运行在 REE 的应用 |
TA | Trusted Application | 可信应用,通常指运行在 TEE 环境的应 用 |
REE | Rich Execution Environment | 富执行环境,普通 Android 运行环境,与 TEE 相对应 |
HAL | Hardware Abstract Layer | 硬件抽象层 |
RPMB | Replay Protected Memory Block | (重放保护内存块) 的简称,是eMMC中的一个具有安全特性的分区 |
HIDL | HAL interface definition language | 是用于指定 HAL 和其用户之间的接口的一种接口描述语言 (IDL) |
AIDL | The Android Interface Definition Language | 是一种让用户抽象出 IPC 的工具。给定一个接口(在.aidl 文件中指定),各种构建系统使用aidl 二进制文件来构建 C++ 或 Java 绑定,以便该接口可以跨进程使用,而不管那里的运行时或位数如何 |
指纹初始化过程
- 指纹 CA 程序,由 TEE 加载并执行
- [email protected] 加载指纹 HAL 库,初始化,提供服务
- kernel 加载硬件驱动,如:goodix_fp 一般驱动非常简单,采用 SPI 或 I2C 连接到指纹模块,注册硬件中断号,和 input 事件,如 wakeup 系统,提供 ioctl 接口,供指纹 HAL 库控制硬件
- 指纹录入、识别时的原始数据信息,由 TEE 存储在 RPMB 加密分区中,对安卓系统不可见,即使有 system 、root 权限。
指纹移值适配
- kernel 驱动添加
- kernel 配置 设备树文件
- 将 HAL 库打包到系统中
- 添加厂家 硬件初始化服务到 rc 文件(也可能没有)
- 添加配置 selinux 规则
- 测试
屏下指纹
Udfps (Under display finger print scanner) 代表屏下指纹扫描仪
以前指纹传感器采用独立外置元器件,如:背部指纹、侧键指纹、HOME 键指纹。三星 AMOLED 屏幕做的比较薄,可以采用屏下指纹方案。在屏幕的下面放置一个超声波或光线的指纹传感器。
在 systemUI中添加了 UdfpsController.java 的实现,功能就是控制在屏幕上显示一个指纹的图标,可以向 [email protected] 发送指纹按下、抬起的动作。
标签:13,HAL,TEE,接口,硬件,指纹,android From: https://www.cnblogs.com/ningci/p/17755738.html