commit | a8118d8ab947179e7b4879b4fb1d9b74c29b034b | [log] [tgz] |
---|---|---|
author | Etienne Carriere <etienne.carriere@linaro.org> | Wed Nov 08 15:37:04 2017 +0100 |
committer | Jérôme Forissier <jerome.forissier@linaro.org> | Fri Nov 10 09:46:13 2017 +0100 |
tree | 6efe0be98eaac513862e5dcf1ef0ca46d4dcddc4 | |
parent | d3cb276d95ae6b80dba07885993a511d0f78be7a [diff] |
AES ciphering APIs (setup operation, load key/iv, process ciphering) This change provides an example of a AES ciphering operation from a trusted application (TA) using the GPD TEE Core Internal API. AES TA implements the basics for setting a AES/CTR ciphering session using the TEE Core Internal API: - Opening a session toward the AES TA creates AES ciphering session. - A TA command allows to setup and allocate the ciphering resources. - A TA command allows to load the AES key. - A TA command allows to reset the initial vector. - A TA command allows to cipher an input buffer into an output buffer. The sample application creates an AES128-CTR encryption session, provides the AES key and and initial vector then request encryption of a data buffer. Then it sets up a decryption session, provide the same key and initial vector and request decryption of the encrypted content. Finally it checks clear and decoded data are the same. Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
This document describes the sample applications that are included in the OP-TEE, that aim to showcase specific functionality and use case.
For sake of simplicity, all OP-TEE example test application are prefixed with optee_example_
.
Directory hello_world/:
optee_example_hello_world
Directory random/:
TEE_GenerateRandom()
).optee_example_random
Directory aes/:
optee_example_aes