我的NPI项目之Android 安全系列 -- Android Strongbox 初识
从Android9(Pie)开始,Google强烈建议支持Strongbox. 具体描述如下:

一直到目前的Android14. 对应的内容也一并贴出来:

说人话就是Android开始通过独立于主SoC的单元进行密钥存储了。 通常,这样的单元就是我们通常称作的Secure Element(SE);
对于,Android中需要进行支付的应用通常会需要这样的一个SE,NFC的支付功能也必须有SE的支持。
那这里抛出一个问题,高通的TEE是不是一个SE呢? 见如下的一个Google的回答:

直译Google的意思就是,高通的TEE不是一个专用的安全处理器,对于StrongBox来说,需要的是一个专门的,安全处理器。这个处理起必须是独立于主SoC的。但是高通的TEE是运行在主SoC上的,只是软件上下文有所不同。
那么Secure Element具体有哪些芯片支持呢?有NXP的SE05系列/ ST的ST33K系列。
再回到Google的需求定义上来,以下三点比较重要:
如果一个设备的实现上支持StrongBox,必须满足以下设计需求:
C-1-1: 必需声明FEATURE_STRONGBOX_KEYSTORE;
C-1-2: 必需提供一个专有的硬件用来作为keystore的后端,安全用户授权。这个安全处理单元还可以同时用于其它功能。
C-1-3:必需用于专有的CPU,这个CPU不可以和主CPU共享缓存、内存、协处理器、、、
除了以上三点,其它需求请参照截图内容。
相关文章:
我的NPI项目之Android 安全系列 -- Android Strongbox 初识
从Android9(Pie)开始,Google强烈建议支持Strongbox. 具体描述如下: 一直到目前的Android14. 对应的内容也一并贴出来: 说人话就是Android开始通过独立于主SoC的单元进行密钥存储了。 通常,这样的单元就是我们通常称作的Secure Element(SE)&am…...
3、Kafka 线上集群部署方案怎么做?
文章目录 1、操作系统的选择1.1、I/O 模型的使用1.2、数据网络传输效率1.3、社区支持度 2、磁盘的选择3、磁盘容量的规划3.1、举例思考本问题:3.2、计算一下:3.3、规划磁盘容量时你需要考虑下面这几个元素: 4、带宽规划4.1、计算 总结 1、操作…...
【Oracle】常用数据库sql记录
文章目录 1、获取指定日期所在年份2、获取指定日期所在月份3、获取指定日期去年同期日期4、获取指定日期所在年份的总天数5、获取年初到指定日期的天数6、除法运算7、递归查询8、REPLACE函数9、DECODE 函数10、聚合函数11、窗口函数11.1 ROW_NUMBER函数11.2 RANK函数11.3 LEAD …...
在线监控网址源码/ 网站监控工具源码/ 网站监控系统源码/定时任务/网站网址URL状态监控神器
源码介绍: 在线监控网址源码、 网站监控工具源码,它作为网站监控系统源码,有定时任务,支持卡密充值,是网站网址URL状态监控神器。让数据库监控更加简单和专业。远程云中监控、实时邮件告警、丰富的指标和图表、分析和…...
【Mysql】myisam和innodb的区别?
0 回答 myisam引擎是5.1版本之前的默认引擎,支持全文检索、压缩、空间函数等,但是不支持事务和行级锁,所以一般用于有大量查询少量插入的场景来使用,而且myisam不支持外键,并且索引和数据是分开存储的。innodb是基于聚簇索引建立的,和myisam相反它支持事务、外键,并且通…...
vue 集成行政区域选择插件region和数据回显
故事:最近,项目需要进行行政区域围栏的绘制,由于老旧项目是利用js保存全国行政区域地址和编码,在选择器select进行匹配显示,但此方法复杂,因此选择集成区域插件region 步骤一:用命令安装region…...
The LINQ expression “xxx“ could not be translated
错误示例: var A B .GroupBy(item > item.id) .Select(groupedList > new { PlannerId groupedList.Key, RxList groupedList }); 解决方案: var A B .GroupBy(item > item.id) .Select(groupedList > new { PlannerId groupedList.…...
ubuntu下搜索文件的几种方法
一、whereis命令: whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。 whereis的命令格式: whereis [-bmsu] [BMS 目录名 -f ] 文…...
openCV图像SIFT特征
SIFT(尺度不变特征变换)是一种用于计算图像局部特征的算法,它对图像的尺度、旋转和亮度变化具有不变性。SIFT特征在计算机视觉领域被广泛应用于目标识别、图像配准、三维重建等任务中。 SIFT特征的计算包括以下几个步骤: 尺度空…...
黑豹程序员-axios+springmvc传递数组
问题 奇怪的现象,axios在往后台传递数组时,springmvc竟然接收不到 解决 尝试多次无果,突然看一篇文章写vue中的数组不是真正的数组需要强转转化JSON.stringify 将信将疑下测试了一把,还真的传递成功了。 不光要JSON.stringify…...
34.用过JavaConfig方式的spring配置吗?它是如何替代xml的?
用过JavaConfig方式的spring配置吗?它是如何替代xml的? 基于Java的配置,允许你在少量的Java注解的帮助下,进行你的大部分Spring配置而非通过XML文件。 以@Configuration 注解为例,它用来标记类可以当做一个bean的定义,被Spring IOC容器使用。 另一个例子是@Bean注解,它…...
解析Python的Lambda函数:【理解】与【运用】
目录 引言理解Lambda函数定义语法Lambda函数的特点 Lambda函数使用场景举例小结结束语 引言 在Python编程语言中,Lambda函数是一种特殊的函数形式,它以【简洁】、【快速】和【轻量级】而闻名。Lambda函数在需要短小函数的地方非常有用,比如在…...
C语言:实现字符串连接
在C语言中,字符串通常以字符数组的形式存储。连接两个或多个字符串是一项常见的任务。本博客将介绍如何使用C语言来实现字符串的连接。 库函数实现: strcat() 是C标准库中提供的一个函数,用于将一个字符串(源字符串)…...
物联网终端设备众多,为何遥测终端机备受瞩目?
遥测终端机是一种用于数据采集、远程传输、数据存储与处理的综合体设备,已逐渐成为现代智能物联领域的焦点。遥测终端机集成了多种传感器与通信模块,能够实时采集各种环境参数,如温度、湿度、压力、流量等,同时支持无线通信&#…...
Swagger快速上手
快速开始: 导入maven包 <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.7.0</version> </dependency><dependency><groupId>io.springfox<…...
1.1 Python的起源与发展
一、Python的起源 Python的起源可以追溯到1989年,当时荷兰计算机科学家Guido van Rossum在阿姆斯特丹的CWI(荷兰计算机科学研究所)工作。他曾参与开发过一门名为ABC的语言,然而这门语言并未能成为主流。因此,Guido va…...
springboot + thymeleaf + layui 初尝试
一、背景 公司运营的同事有个任务,提供一个数据文件给我,然后从数据库中找出对应的加密串再导出来给他。这个活不算是很难,但时不时就会有需求。 同事给我的文件有时是给excel表格,每一行有4列,逗号隔开,…...
2024年网络安全竞赛-Web安全应用
Web安全应用 (一)拓扑图 任务环境说明: 1.获取PHP的版本号作为Flag值提交;(例如:5.2.14) 2.获取MySQL数据库的版本号作为Flag值提交;(例如:5.0.22) 3.获取系统的内核版本号作为Flag值提交;(例如:2.6.18) 4.获取网站后台管理员admin用户的密码作为Flag值提交…...
【改进YOLOv8】车辆测距预警系统:融合空间和通道重建卷积SCConv改进YOLOv8
1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 研究背景与意义: 随着交通工具的普及和道路交通的不断增加,车辆安全问题日益凸显。特别是在高速公路等高速道路上,车辆之间的距离和速度差异较…...
YOLOv8改进 | 2023Neck篇 | 利用RepGFPN改进特征融合层(附yaml文件+添加教程)
一、本文介绍 本文给大家带来的改进机制是Damo-YOLO的RepGFPN(重参数化泛化特征金字塔网络),利用其优化YOLOv8的Neck部分,可以在不影响计算量的同时大幅度涨点(亲测在小目标和大目标检测的数据集上效果均表现良好涨点…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
Linux 内存管理实战精讲:核心原理与面试常考点全解析
Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...
rm视觉学习1-自瞄部分
首先先感谢中南大学的开源,提供了很全面的思路,减少了很多基础性的开发研究 我看的阅读的是中南大学FYT战队开源视觉代码 链接:https://github.com/CSU-FYT-Vision/FYT2024_vision.git 1.框架: 代码框架结构:readme有…...
