下冰雹 · 2022年01月04日

全志R329Tina下几种安全存储实现有何区别?

请问全志R329Tina下几种安全存储实现有何区别呢

1 个回答 得票排序 · 时间排序
极术小姐姐 · 2022年01月04日
本回答来源全志R329Tina下几种安全存储实现有何区别?

Tina上目前支持三种安全存储,分别是keybox、optee secure storage与dm-crypt。

keybox
keybox是全志实现的一种安全存储方法,keybox使用flash区域是特意预留的,该区域未映射到逻辑扇区,通常的数据操作无法访问,具有量产不擦除特性。

keybox上保存的数据都是通过optee中进行加解密的。

注:
只有使用nand与emmc介质的方案才支持keybox,nor介质的方案不支持。
keybox最多支持31个key烧写,每个key最大支持3KB数据。设计之初主要目的是存放密钥、证书等小数据对象。
可以通过DragonSN与控制台命令方式,烧写数据到keybox上。

optee secure storage
OPTEE Secure Storage是optee提供的根据GP TEE Internal API规范实现的一种安全存储技术。它将数据发送到Secure OS进行加密,然后保存到Linux端的文件系统(/data/tee)或者RPMB中。

注:
保存的数据大小没有限制,最大可以为optee os的堆大小。optee官方提到设计的目的主要是用于存放密钥、hash值以及计数器等小数据对象。
客户需要开发相关的NA与TA来使用optee secure storage功能,全志有提供一个参考demo,位于package/security/optee-secure-storage目录。

dm-crypt
dm-crypt 是Linux内核提供的一种基于加密API框架和设备映射器(device mapper)子系统的安全存储技术。dm-crypt是对整个文件系统进行加密,在初始化好后,可以直接读写该文件系统,内核自动对数据进行加解密。

注:
dm-crypt的密钥需要保存在安全域,在初始化时,从安全域读取,配置给Linux内核。从flash上看,该分区数据是经过加密的,但是Linux端可以直接明文访问。
由于是一个文件系统,所以这种方式可以保存大数据对象,用户数据分区常采用这种安全机制。

你的回答
关注数
2
收藏数
0
浏览数
2252
极术小姐姐 最狂的风与最静的海
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息