[终端安全]-4 移动终端之硬件架构安全

news2024/11/23 12:16:54

1 移动终端硬件架构

上图图展示了典型移动终端硬件架构,包括应用处理器(AP)、基带处理器(BP)以及各类共享组件和外设,所有组件通过AXI总线(和APB桥)连接在一起。以下分别介绍基于整个硬件架构采取的核心安全技术。

2 安全可信根SE

详细介绍可参考笔者之前文章:[终端安全]-2 移动终端之硬件安全(SE)

安全元件(Secure Element, SE)是移动设备中高度安全的硬件模块,用于存储和处理敏感信息,如支付信息、加密密钥和身份认证数据;SE被认为是移动设备的安全可信根。

- 独立的处理能力:SE具有独立的处理器和存储器,能够执行加密运算和安全协议。

- 硬件隔离:SE与主处理器(AP)和基带处理器(BP)隔离,提供强大的物理安全保护。

- 安全启动:SE内置安全启动机制,确保其自身代码的完整性和真实性。

- 防篡改设计:SE设计中包含多种防篡改技术,如物理防护、检测传感器和自毁机制,以防止物理攻击。

基于SE的应用,主要围绕手机钱包服务场景展开:

- 移动支付:通过NFC(近场通信)技术,SE可以安全地进行支付交易。

- 公交卡:通过NFC,SE可以安全地提供公交或地铁刷卡支付服务。

- 数字钥匙:通过NFC/BLE/UWB,SE可以安全地与汽车、智能门锁安全认证提供控制服务。

- 加密密钥管理:SE安全存储加密密钥,用于加密和解密敏感数据。

3 AP和BP的TEE

详细介绍可参考笔者之前文章:[终端安全]-3 移动终端之硬件安全(TEE)

可信执行环境(Trusted Execution Environment, TEE)是一个独立的执行环境,提供比普通操作系统更高的安全性,通过硬件和软件相结合的方式保护敏感数据和代码。常见的实现方式包括Arm TrustZone技术,AP和BP一般都具备TEE:AP应用处理器使用TEE来保护应用层的敏感数据和代码,如支付应用和生物特征认证;BP基带处理器使用TEE来保护通信相关的敏感信息,如加密密钥和网络认证数据。

1)安全隔离

Arm TrustZone通过硬件机制(如MMU和页表等)创建安全和非安全两个世界来实现隔离。

- 安全世界:用于执行敏感操作和处理机密数据。

- 非安全世界:用于运行普通应用程序和操作系统。

2)安全启动

TEE从设备启动时就开始执行,确保启动过程的完整性和真实性。

3)安全服务

TEE提供安全服务,如加密运算、密钥管理和安全存储。备注:移动支付、生物信息鉴权(指纹、虹膜、人脸)等服务可能依托于TEE或者SE实现,取决于各家设备厂商不同的安全机制和策略。

4 安全启动技术

安全启动(Secure Boot)是一种防止恶意软件在设备启动时加载的技术,通过一系列验证步骤确保启动代码的完整性和真实性。

1)工作流程

- ROM代码启动:设备上电后首先执行ROM中引导代码,该代码是预先烧录且不可更改的。

- 验证引导加载程序:ROM代码验证引导加载程序Bootloader数字签名,确保其未被篡改。

- 加载和验证操作系统:引导加载程序加载操作系统,并验证其完整性。

- 启动操作系统:如果所有验证步骤都通过,操作系统开始启动并执行。

2)关键技术

- 数字签名:使用公钥加密技术对启动代码进行签名和验证,目前多用ECDSA算法。

- 硬件根密钥:设备中存储的不可更改的硬件密钥,用于验证启动代码的签名。

- 防篡改机制:保护引导加载程序和操作系统免受物理和软件攻击。

5 SIM卡安全联网

SIM卡(Subscriber Identity Module)是移动设备中用于身份认证和网络接入的安全模块,在网络接入和通信过程中使用多种安全技术来保护用户数据和通信内容。

1)安全功能

- 身份认证:SIM卡存储用户的身份信息(如IMSI)和认证密钥(如Ki),用于与移动网络的身份认证。

- 加密通信:SIM卡支持语音和数据通信的加密,使用加密算法(如A5/1、A5/2)保护通信内容。

- 密钥管理:SIM卡内置密钥生成和管理功能,用于生成和存储加密密钥。

2)安全技术

- 加密算法:SIM卡使用多种加密算法(如3DES、AES)保护存储和传输的数据。

- 防克隆技术:采用SE通过物理防护和防篡改设计,SIM卡能够抵御克隆和复制攻击。

- 认证协议:SIM卡与移动网络之间使用安全认证协议(如AKA协议)进行身份认证和密钥协商。

6 无线接口安全

1)蓝牙接口安全

- 配对和认证:使用安全配对机制,如PIN码或安全简单配对(Secure Simple Pairing, SSP),确保设备间连接的合法性。

- 加密通信:使用AES加密算法对蓝牙通信进行加密,保护数据传输的安全。

2)WiFi接口安全

- 加密协议:使用WPA2或WPA3协议进行通信加密,确保无线数据传输的安全性。

- 认证机制:使用802.1X认证机制,通过RADIUS服务器进行用户身份验证,确保只有合法用户能接入网络。

7 安全存储

安全存储是指加密存储在移动终端设备上的数据,以保护数据不被未经授权访问。此外,在移动终端硬件中,有许多种密钥和唯一ID需要安全存储,这些数据的存储方式和机制依赖于设备厂商的安全机制和策略可以各有不同。

1)硬件唯一密钥(Hardware Unique Key, HUK)

HUK用于设备唯一标识和加密密钥生成,通常存储在SE中,或在AP芯片的TEE中,或通过OTP熔丝机制实现。

2)设备根密钥(Device Root Key, DRK)

DRK用于设备管理和安全操作的根密钥,通常存储在SE中,以确保其高安全性。

3)身份验证密钥(Authentication Keys)

用于用户身份验证,如PIN码、指纹、面部识别等,一般存储在SE中,以确保身份验证过程的安全性。

4)加密密钥

用于数据加密和解密,保护存储数据和传输数据的安全,可以存储在AP芯片的TEE中或SE中。

5)签名密钥

用于数字签名和数据完整性验证,通常存储在SE中。

6)无线接口密钥(Wireless Interface Keys)

用于蓝牙、WiFi等无线通信的加密和认证,通常存储在AP芯片的TEE中或SE中。

7)SIM卡密钥

用于网络认证和加密通信,存储在SIM卡的SE中。

8)唯一设备标识(Unique Device Identifier, UDID)

UDID用于唯一标识设备,可以通过OTP熔丝机制实现,或存储在SE中。

小结如下:

SE:存储高度敏感的密钥和数据,如HUK、DRK、身份验证密钥和签名密钥。

AP芯片的TEE:存储需要高安全性但不如SE敏感的数据,如某些加密密钥和无线接口密钥。

OTP熔丝机制:存储不可变的设备标识和密钥,如UDID和HUK。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux进阶】文件系统6——理解文件操作

目录 1.文件的读取 1.1.目录 1.2.文件 1.3.目录树读取 1.4.文件系统大小与磁盘读取性能 2.增添文件 2.1.数据的不一致(Inconsistent)状态 2.2.日志式文件系统(Journaling filesystem) 3.Linux文件系统的运行 4、文件的删…

69.WEB渗透测试-信息收集- WAF、框架组件识别(9)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:68.WEB渗透测试-信息收集- WAF、框架组件识别(8) 有无waf存在&am…

秋招提前批面试经验分享(下)

⭐️感谢点开文章👋,欢迎来到我的微信公众号!我是恒心😊 一位热爱技术分享的博主。如果觉得本文能帮到您,劳烦点个赞、在看支持一下哈👍! ⭐️我叫恒心,一名喜欢书写博客的研究生在读…

【MySQL】4.MySQL 的数据类型

MySQL 的数据类型 一.数据类型分类在这里插入图片描述二.注意点1.char VS varchar2.datetime VS timestamp3.enum 和 set 的使用方法 一.数据类型分类 二.注意点 1.char VS varchar char 的意义是直接开辟固定大小的空间,浪费磁盘空间,但是效率高varcha…

解决GPT-4o耗电难题!DeepMind新算法训练效率提升13倍,能耗降低10倍!

目录 01 有更好的解决方案吗? 02 从“超级batch”中筛选数据 03 技术介绍 04 实验结果 生成可学习batch 谷歌DeepMind推出的新算法JEST,将LLM训练的迭代次数减少了13倍,计算量降低了10倍,有望重塑AI未来。GPT-4o早已成为耗能…

下载,连接mysql数据库驱动(最详细)

前言 本篇博客,我讲讲如何连接数据库?我使用mysql数据库举例。 目录 下载对应的数据库jar 包 百度网盘 存有8.4.0版本压缩包:链接:https://pan.baidu.com/s/13uZtXRmuewHRbXaaCU0Xsw?pwduipy 提取码:uipy 复制这…

使用Ubuntu 22.04安装Frappe-Bench【二】

系列文章目录 第一章 使用VMware创建Ubuntu 22.04【一】 文章目录 系列文章目录前言什么是Frappe-Bench?使用安装ERPNext能实现什么效果? 官网给了一个说明 一、使用Ubuntu 22.04安装Frappe-Bench一、安装要求二、安装命令三、 可能出现问题 总结 前言 …

GESP C++一级真题

PDF图片1-7 点赞❤️关注😍收藏⭐️ 互粉必回🙏🙏🙏

对BSV区块链的曼达拉网络通俗易懂的解释

​​发表时间:2023年6月15日 BSV区块链正在引入“曼达拉”升级,使BSV区块链网络的拓扑结构能够适配Teranode,适配这个可以大幅扩容的节点软件。BSV区块链上曼达拉网络的概念并不会改变整个系统的核心规则;相反,它能够引…

基于SSM+JSP的KTV点歌系统(带1w+文档)

基于SSMJSP的KTV点歌系统(带1w文档) 开发一个KTV点歌系统可以解决不利于线下点歌的问题,同时管理员可以利用网络对KTV点歌系统信息进行管理,设计的网站保证信息的完整安全,这样才能提高工作效率,保证系统安全正常的运行。 项目简介…

公众号文章阅读20w+?你猜腾讯给了我多少钱?

前两天写的一篇文章, 《1000T的文件怎么能快速从南京传到北京?最佳方案你肯定想不到》 一不小心被平台推荐,阅读量居然达到了20w(这篇收益在文章底部!)。 留言也是相当精彩 说来惭愧,这篇文章我…

【网络安全】实验三(基于Windows部署CA)

一、配置环境 打开两台虚拟机,并参照下图,搭建网络拓扑环境,要求两台虚拟的IP地址要按照图中的标识进行设置,并根据搭建完成情况,勾选对应选项。注:此处的学号本人学号的最后两位数字,1学号100…

Nestjs基础

一、创建项目 1、创建 安装 Nest CLI(只需要安装一次) npm i -g nestjs/cli 进入要创建项目的目录,使用 Nest CLI 创建项目 nest new 项目名 运行项目 npm run start 开发环境下运行,自动刷新服务 npm run start:dev 2、…

【Unity】RPG2D龙城纷争(八)寻路系统

更新日期:2024年7月4日。 项目源码:第五章发布(正式开始游戏逻辑的章节) 索引 简介一、寻路系统二、寻路规则(角色移动)三、寻路规则(角色攻击)四、角色移动寻路1.自定义寻路规则2.寻…

基于ROS的智能网联车远程交互软件,全UI无需记忆指令,剑指核心原理。

基于ROS的智能网联车远程交互软件,全UI无需记忆指令,剑指核心原理。 服务于中汽恒泰,伟大的项目,希望看官点赞,谢谢~~ 进程(节点)列表化,参数面板化,实现快速机器人配置…

52-5 内网代理2 - LCX端口转发(不推荐使用LCX)

环境搭建: 本地开3台虚拟机:kali(必须)、windows2012与2008 (可换成其他windows虚拟机) kali - 网络配置成桥接模式 windows2012 - 设置两个网卡,NAT与桥接模式 注意:windows2012要关闭防火墙,要不然其他主机ping不通 关闭防火墙后再开启远程桌面连接 windwos20…

计算机网络体系结构详解:协议与分层

在学习计算机网络时,理解网络协议与分层体系结构是至关重要的。本文将详细介绍这些概念,帮助基础小白快速入门。 1. 什么是网络协议 网络协议是计算机网络中用于数据交换的规则和标准。这些规则规定了数据格式、时序以及发送和接收数据时的动作。网络协…

【2024_CUMCM】数据预处理、数据分析、数据可视化

目录 2023-c题-问题1 问题分析 偏度 峰度 箱线图 读图 重采样、降采样、升采样 重采样 降采样 升采样 解题代码 2023-c题-问题1 问题分析 问题说白了就是探究品类和销售量这两个数据他们各自内在联系,根据题意,我们先进行数 据预处理&#…

归并排序的实现(递归与非递归)

概念 基本思想:归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide andConquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使…

【数据结构】经典链表题目详解集合(反转链表、相交链表、链表的中间节点、回文链表)

文章目录 一、反转链表1、程序详解2、代码 二、相交链表1、程序详解2、代码 三、链表的中间节点1、程序详解2、代码 四、回文链表1、程序详解2、代码 一、反转链表 1、程序详解 题目:给定单链表的头节点 head ,请反转链表,并返回反转后的链…