Security/Tizen 4.X TA SDK
The TA SDK is part if the Tizen Studio. It lets you develop, build and run TAs and CAs on a couple of TEE implementations supported by Tizen.
The SDK is available for download from here. You should find the TA SDK in the package manager (note that the TA SDK might be unavailable as of 17.11.2017).
Creation of TAs and CAs
Once you run the SDK, you can create CA and TA projects through File -> New -> Other -> CA-TA Project.
In order to create a CA project, select CA Project -> CA Project on the next screen. This will create a skeleton CA project with all files needed to make a CA (which at its core is just a binary executable linked to libteec).
While the same CA sources can be used to make a CA, you still need to select which TEE implementation you'd like to compile the CA for. You can make this choice in Properties -> C/C++ Build -> Settings -> Model, with 'Target' being a proprietary implementation, 'Simulator' being simulator and 'OpTEE Target' being OpTEE. You can also configure other build settings in this tab.
Creating a TA project depends on the type of TEE you want to build the TA for. Different TEE implementations have different ways to configure TA properties, offer different extensions and have different build processes. OpTEE TA build process, for example, differs substantially from simulator build process. Therefore you have two options when creating a TA project - either a TA Project (for proprietary TEE and Simulator) or an OpTEE TA Project. In both cases, select a 'TA Project' type to create a TA skeleton with all appropriate configuration files.
TA UUID modification
Simulator projects use XML files for TA configuration. If you need to modify the TA UUID, you can set it there. OpTEE TAs set their UUID in sources. Appropriate files are automatically generated by the SDK, you can set the UUID in project build settings.
Running the TAs
You can run the CA/TA pair on a Tizen device connected to your station. Use the Connection Explorer to see connected devices. In order to run CAs and TAs, you must first select which TAs are needed to run a particular CA. To to that, open CA Properties and navigate to Others -> Project references, selecting all TAs that the CA depends on. Before running the CA and TAs, ensure that all of them are set up to run for the same TEE implementation and that appropriate TA UUIDs match. To run the CA/TA pair, right-click on the CA and select Run as -> CA-TA Remote Application.