This document declares what licenses have been used in the construction of Oberon PSA Crypto (incoming licenses) and what license is provided to you (outgoing license). For incoming licenses, it is distinguished whether specifications are licensed (i.e., APIs and their documentation) or actual software (i.e., API implementations).
Copies of incoming licenses are located in directory licenses-incoming
.
Dependencies and contributors are also listed in this document.
Oberon PSA Crypto is based on both the high-level PSA Certified Crypto API and the low-level PSA Crypto Driver API standards.
PSA Certified Crypto API: https://github.com/ARM-software/psa-api/blob/crypto-1.1.2/LICENSE.md
This specification is licensed under CC SA-BY 4.0.
PSA Crypto Driver API (Arm proposal): https://github.com/Mbed-TLS/mbedtls/blob/v3.6.0/docs/proposed/psa-driver-interface.md
This specification has been published as part of Mbed TLS and the same licenses apply, see below.
Oberon PSA Crypto includes crypto driver implementations that are based on the PSA Crypto Driver API and copyrighted by Oberon microsystems AG.
The high-level part of Oberon PSA Crypto (i.e., crypto core) is a fork of Arm's Mbed TLS: https://github.com/Mbed-TLS/mbedtls
Mbed TLS has been published under both an Apache and a GPL license since release 3.5.1: https://github.com/Mbed-TLS/mbedtls/blob/development/LICENSE
Some files that originate from Mbed TLS have been modified by Oberon microsystems AG. They contain the following notice:
NOTICE: This file has been modified by Oberon microsystems AG.
For certification testing against the PSA Certified APIs, Oberon PSA Crypto includes the PSA Certified APIs Architecture Test Suite: https://github.com/ARM-software/psa-arch-tests
The test suite has been published under the Apache License Version 2.0: https://github.com/ARM-software/psa-arch-tests/blob/main/LICENSE.md
Oberon PSA Crypto has one dependency: ocrypto.
The Oberon drivers within Oberon PSA Crypto require crypto primitives with file and function prefix ocrypto. They originate from the ocrypto library of Oberon microsystems AG. ocrypto is a dependency of Oberon PSA Crypto. Its source code is not included in this repo.
Sources of ocrypto are distributed by Oberon microsystems AG in a separate repository and require a suitable license.
Note: You don't need ocrypto if you provide your own drivers (e.g., hardware drivers) that come with their own implementations of crypto primitives.
All files that are under the copyright of Oberon microsystems AG and do not contain an Apache 2.0 header, including the markdown documentation files, may not be used except in compliance with the license agreement provided in LICENSE.
The following organizations have contributed to Oberon PSA Crypto software:
- Oberon microsystems AG (owner of all copyrights for Oberon PSA Crypto, except for the incoming items as stated above)
- Nordic Semiconductor ASA (contributor that kindly assigned its copyright to Oberon microsystems AG)