
【Security】
林知共创
【林知共创】记录和分享个人好文
展开
-
【Widevine L1】MTK平台基于Trustonic TEE方案widevine keybox异常log
E TLCWidevineMdw: TLCMdw_InitKeybox: no valid keybox to init...Bad Level 1 Root of Trust. Falling back to L3原创 2022-06-17 09:56:46 · 2555 阅读 · 1 评论 -
基于trustonic tee使能MTK Widevine L1(SVP)
本文记录MTK芯片在Android S(Android 12)大版本上基于trustonic tee方案来开启Widevine L1方案整个移植过程。MTK平台支持Widevine L1情况G系列中高端平台,G70/G80/G85/G88对应mt6769平台,G90/G95对应mt6785平台,G96对应mt6781平台软件宏设置情况"preloader":[ ["MTK_TEE_SUPPORT", "yes"], ["MICROTRUST_TEE_SUPPORT", "no"].原创 2021-10-27 12:26:41 · 6626 阅读 · 3 评论 -
Security | 数字签名和数字证书
原创 2021-10-20 16:42:41 · 903 阅读 · 0 评论 -
Security | TEE为什么更加安全?
TEE(Trusted Execution Environment,可信执行环境)是通过软硬件隔离出来的安全世界,只有授信的软件才访问。原创 2021-10-14 10:55:40 · 1698 阅读 · 2 评论 -
Security | RSA2048私钥存在小于256byte(比如255byte)
最近搞TEE里面Crypto模块,遇到RSA2048 Private key(d因子)只有255byt而在解密的时候我直接使用长度为256bit而出现解密失败(原因是末尾补零导致公私钥不匹配)解决方法要么使用255bit,要么高位补零(比256小都需要高位补零)TEE_GetObjectBufferAttribute(key, attributeID, d, &dL);uint32_t cnt = 256 - dL;if (cnt > 0) { char tmp[5原创 2021-08-23 20:14:54 · 1841 阅读 · 0 评论 -
【TEE】GP接口操作文件的文件名不能超过64byte
原创 2021-08-04 15:28:17 · 912 阅读 · 0 评论 -
ECDSA私钥der格式
原创 2021-07-16 16:10:30 · 1318 阅读 · 0 评论 -
openssl ecdsa操作命令
生成一个prime256v1的私钥文件prime256v1-key.pem:openssl ecparam -name prime256v1 -genkey -noout -out prime256v1-key.pem将私钥转换成 DER 格式:openssl ec -in prime256v1-key.pem -out prime256v1-key.der -outform der将私钥转换成data格式(包含因子和pem内容):openssl ec -in prime256v原创 2021-07-15 15:30:37 · 1948 阅读 · 0 评论 -
RSA2048 public key der格式结构
RSA因子->der格式(按照一定格式组合)->ASN.1格式(base64)->pem或crt格式(添加头尾信息)原创 2021-06-23 11:38:05 · 1581 阅读 · 0 评论 -
RSA2048 private key der格式结构
RSA因子->der格式(组合)->ASN.1格式(base64)->pem格式(添加头尾信息)原创 2021-06-16 20:35:33 · 1458 阅读 · 0 评论 -
【ARM】Linaro Security module
Linaro Security官网:https://www.linaro.org/security/安全不再是一种选择,它是保护知识产权、通信、银行账户、个人数字财产等一个重要因素。OP-TEE(Open Portable Trusted Execution Environment)OP-TEE是一个开源的可信执行环境(TEE),实施了Arm TrustZone technology。OP-TEE已经被移植到许多 Arm 设备和平台 上。最初,它是由圣爱立信公司开发的一种专利TEE解决方案,后来被转移翻译 2021-03-31 15:33:29 · 1750 阅读 · 0 评论 -
【OP-TEE】安全存储
背景OP-TEE中的安全存储是根据 GlobalPlatform 的 TEE 内部核心 API(这里称为可信存储)中定义的内容来实现的。本规范规定,应该可以存储通用数据和关键材料,以保证所存储数据的机密性和完整性以及修改存储的操作的原子性(这里的原子性意味着整个操作要么成功完成,要么不写)。目前,OP-TEE中有两种安全存储实现:第一个依赖于普通世界(REE)文件系统,默认实现。它在编译时通过 CFG_REE_FS=y 启用。 第二种方法利用eMMC设备的重放保护内存块(RPMB)分区,通过设原创 2020-12-23 11:30:52 · 5985 阅读 · 1 评论 -
HMAC(Hash-based Message Authentication Code,散列消息认证码)
HMAC(Hash-based Message Authentication Code,散列消息认证码)是一种使用单向散列函数同时结合一个加密密钥,通过特别计算方式来构造消息认证码(MAC)的方法。HMAC中所使用的单向散列函数并不仅限于一种,任何高强度的单向散列函数都可以被用于HMAC,如果将来设计出新的单向散列函数,同样也可以使用。使用SHA-256、MD5、RIPEMD-160所构造的HMAC,分别称为HMAC-SHA-256、HMAC-MD5和HMAC-RIPEMD-160。HMAC可以用来原创 2020-12-17 19:09:43 · 2352 阅读 · 0 评论 -
eMMC安全方案—RPMB(Replay Protected Memory Block)
信息安全的三个基本目标是机密性、完整性和可用性:机密性意味着应该保密的信息只能被授权的实体阅读和理解。其他未经访问授权不能阅读或理解机密信息。完整性是指能够确保信息不受未经授权的更改、修改或删除的能力。信息的完整性包括信息的来源、完整性和正确性(使用标识和身份验证等方法)。可用性意味着信息始终可供授权用户使用eMMC安全方案eMMC设备包含多种数据保护和安全功能,包括:写保护、密码锁定/解锁和RPMB。这些特性经过多年的发展,并随着eMMC规范的每个版本而不断改进。eMMC分区划原创 2020-12-17 16:43:32 · 10604 阅读 · 2 评论 -
介绍TEE和ARM TrustZone
TEE可信执行环境(TEE)是一种环境,其中执行的代码和访问的数据在机密性(没有人可以访问数据)和完整性(没有人可以更改代码及其行为)方面被隔离和保护。TEE的必要性软件越来越复杂,像Linux内核和Android开源项目(AOSP)这样的大型项目有数百万行代码,这意味着会有很多bugs。在修复某个漏洞时,有时还会造成新的bug,虽然我们可以防止某些类型的错误,但软件中总是会有错误。其中一些漏洞可能会暴露安全漏洞,更糟糕的是,如果bug在内核中,整个系统就会受到损害。那么如何解决这个问题呢?原创 2020-12-16 15:05:57 · 7053 阅读 · 4 评论 -
终端安全缩略语
TEETrusted Execution Environment,可信执行环境(ARM架构)SGXSoftware Guard Extension,软件保护扩展(Intel架构)SESecure Element,安全元件eSEEmbedded Secure Element,嵌入式安全单元inSEIntegrated Secure Element,集成安全单元eSIMEmbedded-SIM,嵌入式SIM卡TSMTrusted Service Manager原创 2020-12-15 19:25:01 · 483 阅读 · 0 评论 -
RSA非对称加密算法
RSA算法公式RSA密钥对生成原理RSA加解密原理密钥格式ASN.1 - 抽象语法标记ASN.1抽象语法标记(Abstract Syntax Notation One) ASN.1是一种 ISO/ITU-T 标准,描述了一种对数据进行表示、编码、传输和解码的数据格式。它提供了一整套正规的格式用于描述对象的结构,而不管语言上如何执行及这些数据的具体指代,也不用去管到底是什么样的应用程序。DER编码格式ASN.1有一套关联的编码规则,这些编码规则用来规定如何用二进制来表示原创 2020-12-14 17:29:38 · 599 阅读 · 0 评论 -
安全算法应用
安全算法种类安全维度原创 2020-12-14 14:17:48 · 259 阅读 · 0 评论