在OPTEE+AOSP下编写原生Android安全程序

本文档详细记录了如何将OPTEE的HelloWorld示例移植为Android应用的过程。首先确保OPTEE和AOSP正确编译并烧录到开发板上,然后在Android Studio中创建新工程,利用JNI调用安全世界中的TA程序。通过声明本地方法并生成C语言头文件,开始实现Android应用与TA间的交互功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

此博客按我的编写过程记录将optee example 中的helloworld程序移植为android APP的过程
在正确编译及烧写optee+asop,启动开发板,进入控制台可以成功运行xtest 以及实例程序。对应的客户端程序在/vendor/bin下,对应的TA程序*.ta在/vendor/lib/optee_armtz。(当时找这个找了好久)。在控制台下运行客户端程序例如xtest optee_example_helloworld, 会与对应的ta程序会话完成ta中相应的功能,并获得ta返回的结果。如下:
运行实例的helloworld程序,在安全世界里将传入的42增加后传回非安全世界
如果要编写android下的程序实现上述的功能,则android app就对应非安全世界的程序,即控制台界面下的optee_example_hello_world 程序,android app与对应的ta程序会话,获取安全世界的执行结果。
移植过程:
1 在Android Studio下新建一个工程,这里我取名为Jniteeeest(因为调用本地接口需要使用jni) 一切使用默认的配置,选择添加一个空的Activity, 并为该Activity创建布局文件,修改布局文件,为textview增加id属性:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值