Open Source Licenses
Preface Open Source真是个好东西,减少重复开发,快速应用,有的还有社区支持。好处网上罗列了一大堆,比如10 Biggest Advantages。Open Source的项目在各大开源网站一大堆,但有句话讲“天下没有免费的午餐”,如果不认真甄别其使用的Open Source License,有可能会出大问题。比较有名的case如:FSF vs Cisco和MySQL ...
Preface Open Source真是个好东西,减少重复开发,快速应用,有的还有社区支持。好处网上罗列了一大堆,比如10 Biggest Advantages。Open Source的项目在各大开源网站一大堆,但有句话讲“天下没有免费的午餐”,如果不认真甄别其使用的Open Source License,有可能会出大问题。比较有名的case如:FSF vs Cisco和MySQL ...
Preface 大家都知道Linux User Space调用Kernel Space的function需要用到Syscall,其实在Secure World也是一样。今天就追踪下TA是如何调用OPTEE OS的function的。 注:因为博主用到的SoC都是基于ARM特别是ARMv8架构的,没有特别说明的话,博文也是基于ARMv8来做的解释和总结。比如这里Linux User...
最近IT搞了件很不专业的事情,在没有做备份的情况下,把AWS的service给terminate了,导致几个git repo都没了,是的没了。作为大头兵,只能默默的把git操作好好熟练下。 Introduction git是当今世界上使用最广泛的版本控制系统。在写这篇博文前,博主竟然不知道它竟然是Linus本尊开发的,那它是open sourced就很合理了。之前也用过不少其他的v...
CA调用TA的secure service之前,首先要创建一个连接,这个连接叫session。由于这个连接是从REE发起的,对session的安全性有一定的担忧,比如有需求要求某个TA只服务于特定CA。OPTEE其实提供了方案,但整个代码看下来,实在是比较鸡肋。接下来先分析代码,然后看怎么改进比较合适。 Note:本文中引用的代码版本如下: OPTEE: 4.0.0 Lin...
OPTEE OS提供TEE相关基础设施,TA(Trusted Application)则是Security需求具体实现的载体。如OPTEE Overview图中所示,OPTEE OS运行在Secure EL1,而TA则运行Secure EL0,ARM在TEE端和REE端(Linux OS运行在Kernel Space,Application运行在User Space)保持了一样的设计。关...
OPTEE开发的第一步是增加所使用SoC的支持。这里分两种情况,一种是已经有同类SoC的支持,只是做一些差异化配置,OPTEE叫做platform flavor;一种则是一个全新的platform。学会怎么增加一个platform,platform flavor自然不在话下。 增加一个全新的platform的支持,需要在[OPTEE root path]/core/arch/arm(...
关于OPTEE的build and run,官方文档写的很详细(OPTEE OS Building)。这里主要介绍输出的几个binary各有什么玄机。另外OPTEE OS的版本为4.0.0。 OPTEE build输出的文件是由link.mk决定的。当然在compile log里也有相应的体现,如下: LD out/arm/platform/platform_fla...
前段时间刚好做了一个关于OPTEE的PPT,最近打算写一些关于OPTEE的文章,这篇先起个头。 关于OPTEE的介绍,官方文档在这里(About OPTEE)。OPTEE主要是基于ARM TrustZone Technology基础上打造出的一个Trused Execution Environment,文档中虽然提及它已经兼容其他有isolation technology的SoC,比...
博客终于开张了,用一个开场白来恭喜自己吧!