我的NPI项目之Android 安全系列 -- Android Strongbox 使能(一)

这里借用Android14高通相关的技术文档作为基础文档,该文档描述的是基于NFC的secure element. NFC型号为SN220.

有些概念的说明

1. RoT

在我们目前的这个上下文中,首先RoT下几个内容,Bootinfo/ Additonal params(images hash) / security patch versions. 

在安全领域:RoT, root of trust, Root of Trust (RoT) is a source that can always be trusted within a cryptographic system. Because cryptographic security is dependent on keys to encrypt and decrypt data and perform functions such as generating digital signatures and verifying signatures, RoT schemes generally include a hardened hardware module.

重要性:https://www.design-reuse.com/articles/47992/rot-the-foundation-of-security.html

2. Attestation Key

简称证书。

3. 安装keybox的代码

Keybox中应该就是Google颁发的证书. Securemsm/keymaster_install_toolbox/.... 具体代码后面可以找机会看一下,目前我的项目中,新启动的设备都需要过gms认真,需要提前向Google提交申请keybox;

4. Strongbox hal 

The StrongBox Hardware Abstraction Layer (HAL) is a component in the Android operating system that provides an interface for interacting with hardware-backed secure storage, also known as the StrongBox Keymaster.

Keymaster is a trusted execution environment (TEE) component responsible for secure key storage, cryptographic operations, and hardware-backed security features. It ensures that sensitive cryptographic keys and operations are protected in a secure environment, isolated from the regular Android operating system.

The StrongBox HAL acts as a bridge between the Android framework and the StrongBox Keymaster. It allows the Android framework to utilize the hardware-backed security features provided by the StrongBox Keymaster, such as secure key storage and cryptographic operations.

By leveraging the StrongBox HAL, Android applications can benefit from enhanced security for cryptographic operations. For example, key material can be securely stored in the hardware-backed keystore, ensuring that sensitive keys are protected from unauthorized access and tampering.

The StrongBox HAL is specifically designed to work with hardware that meets the requirements for StrongBox Keymaster, including secure hardware modules or secure enclaves that provide the necessary security features.

可以这么理解,没有strongbox之前, Qualcomm提供了TEE,调用过程:

Application / Android Framework / Keymaster4.0(hal) / TEE. 

有了strongbox之后,

Application / Android Framework / Strongbox keymaster(keyminit) / TEE / Strongbox

 

5. TEE和TrustZone

Trusted Execution Environment,是指Qualcomm提供的一个可以执行安装操作的环境。Refers specifically to Qualcomm's implementation of the Trusted Execution Environment. It is a software-based component that operates within the Secure World of TrustZone-enabled Qualcomm processors. The Qualcomm TEE provides a secure environment for executing trusted applications, protecting sensitive data, and enabling secure services on Qualcomm-powered devices.

TrustZone is a hardware-based security feature implemented in many ARM-based processors, including those manufactured by Qualcomm. It provides a system-wide approach to secure the execution of trusted code and protects sensitive data on a device. TrustZone creates two separate execution environments: the Normal World and the Secure World. The Secure World, also known as the Secure World Monitor (SWM), runs trusted code isolated from the Normal World, which includes the regular operating system and applications.

6. 上一个RoT 创建和保存的过程

7. 预编译库文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/491991.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

曲线生成 | 图解B样条曲线生成原理(附ROS C++/Python/Matlab仿真)

目录 0 专栏介绍1 控制点计算之插值2 控制点计算之近似3 仿真实现3.1 ROS C实现3.2 Python实现3.3 Matlab实现 0 专栏介绍 🔥附C/Python/Matlab全套代码🔥课程设计、毕业设计、创新竞赛必备!详细介绍全局规划(图搜索、采样法、智能算法等)&a…

备考2024年小学生古诗文大会正当时:往届真题15题和独家解析

“一年之计在于春”,如何备考2024年小学生古诗文大会?我的建议是现在就开始,每天每周花点时间,夯实古诗文大会试题背后的知识,既能在比赛中取得不错的成绩,还能对语文学习有长远的促进。 我们今天来看15道往…

C# Onnx 使用onnxruntime部署夜间雾霾图像的可见度增强

目录 介绍 模型信息 效果 项目 代码 下载 C# Onnx 使用onnxruntime部署夜间雾霾图像的可见度增强 介绍 github地址:https://github.com/jinyeying/nighttime_dehaze [ACMMM2023] "Enhancing Visibility in Nighttime Haze Images Using Guided APSF a…

【Vue3】学习watch监视:深入了解Vue3响应式系统的核心功能(上)

💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢…

c++入门学习⑧——模板

目录 前言 基本介绍 什么是模板? 作用 特点 分类 函数模板 语法 使用方式 注意事项 函数模板和普通函数区别 普通函数和函数模板的调用规则 局限性 类模板 语法 类模板的成员函数创建时机 类模板实例化对象 类模板实例化对象做函数参数 类模板成…

JAVA工程师面试专题-《Mysql》篇

目录 一、基础 1、mysql可以使用多少列创建索引? 2、mysql常用的存储引擎有哪些 3、MySQL 存储引擎,两者区别 4、mysql默认的隔离级别 5、数据库三范式 6、drop、delete 与 truncate 区别? 7、IN与EXISTS的区别 二、索引 1、索引及索…

✅鉴权—cookie、session、token、jwt、单点登录

基于 HTTP 的前端鉴权背景cookie 为什么是最方便的存储方案,有哪些操作 cookie 的方式session 方案是如何实现的,存在哪些问题token 是如何实现的,如何进行编码和防篡改?jwt 是做什么的?refresh token 的实现和意义ses…

c# 广度优先搜索(Breadth-First Search,BFS)

在这篇文章中我将讨论用于树和图的两种遍历机制之一。将使用 C# 示例介绍广度优先搜索 (BFS)。图是最具挑战性和最复杂的数据结构之一。 广度优先搜索的工作原理:广度优先搜索 (BFS)是一种探索树或图的方法。在 BFS 中,您首先探索…

C# Onnx Yolov8-OBB 旋转目标检测

目录 效果 模型信息 项目 代码 下载 C# Onnx Yolov8-OBB 旋转目标检测 效果 模型信息 Model Properties ------------------------- date:2024-02-26T08:38:44.171849 description:Ultralytics YOLOv8s-obb model trained on runs/DOTAv1.0-ms.ya…

LabVIEW燃料电池船舶电力推进监控系统

LabVIEW燃料电池船舶电力推进监控系统 随着全球经济一体化的推进,航运业的发展显得尤为重要,大约80%的世界贸易依靠海上运输实现。传统的船舶推进系统主要依赖于柴油机,这不仅耗能高,而且排放严重,对资源和环境的影响…

WPF 开发调试比较:Visual Studio 原生和Snoop调试控制台

文章目录 前言运行环境简单的WPF代码实现一个简单的ListBoxVisual Studio自带代码调试热重置功能测试实时可视化树查找窗口元素显示属性 Snoop调试使用Snoop简单使用调试控制台元素追踪结构树Visual/可视化结构树Logical/本地代码可视化树AutoMation/自动识别结构树 WPF元素控制…

100天精通Python(实用脚本篇)——第117天:基于selenium实现反反爬策略之代码输入账号信息登录网站

文章目录 专栏导读1. 前言2. 实现步骤3. 基础补充4. 代码实战4.1 创建连接4.2 添加请求头伪装浏览器4.3 隐藏浏览器指纹4.4 最大化窗口4.5 启动网页4.6 点击密码登录4.7 输入账号密码4.8 点击登录按钮4.9 完整代码4.10 GIF动图展示 五、总结 专栏导读 🔥&#x1f5…