-
Notifications
You must be signed in to change notification settings - Fork 98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merging Mbed Crypto back into Mbed TLS #374
Comments
Building Mbed/PSA Crypto from the mbedtls repoThis comment explains how to build the Mbed Crypto library (the current The intended audience is users of Mbed Crypto or PSA Crypto who are currently Summary
When using the default config.hYou can just build as usual (using Alternatively, if you want to avoid building the X.509 and TLS libraries When starting from the default config.h and adapting it with config.pyIf you're using a custom Again, this will create empty files for the X.509 and TLS libraries, but not Unlike the case of using the default config, running When using a user config fileIf you're starting from the default Again, this will create empty files for the X.509 and TLS libraries, but not Unlike the case of using the default config, running When using a standalone config.hIf you're using a custom stand-alone Again, this will create empty files for the X.509 and TLS libraries, but not If you custom standalone |
Internal Jira reference: https://jira.arm.com/browse/IOTCRYPT-1049 |
…-unremoved-20200304 Merge of Mbed Crypto Merge Mbed Crypto back into Mbed TLS. See ARMmbed/mbed-crypto#374 for more details.
Mbed Crypto is now merged back into Mbed TLS (via Mbed-TLS/mbedtls#3085). |
It would be nice if the |
…ed-20200304 Merge of Mbed Crypto Merge Mbed Crypto back into Mbed TLS. See ARMmbed/mbed-crypto#374 for more details.
We are going to merge Mbed Crypto back into Mbed TLS. This means that there will be a single repository, https://github.com/ARMmbed/mbedtls, hosting both the cryptography part of the library and the X.509 and TLS parts. Mbed TLS will be the implementation of the
mbedtls_xxx
cryptography, X.509 and TLS APIs as well as the reference implementation of the PSA Cryptography API.Rationale
Mbed Crypto and Mbed TLS were separated to facilitate independent development of the two products. However this has had limited benefits, because the two products share most of their infrastructure (build and test scripts, continuous integration, etc.) and are maintained by the same team. Conversely, separating the product has costs: synchronizing changes between the two repositories adds maintenance overhead, building and testing is more complicated. Merging Mbed Crypto back into Mbed TLS avoids these overheads.
PSA Cryptography Implementation will continue to actively happen in Mbed TLS repository. In future, we intend to have a PSA Cryptography reference implementation as a separate product, without the legacy of the
mbedtls_xxx
cryptography APIs. Mbed Crypto as it currently is does not fulfill this purpose due to the need to maintain the existingmbedtls_xxx
APIs.Timeline
Note: all dates are tentative and subject to change.
mbedtls_xxx
APIs. Mbed TLS will retain somembedtls_xxx
cryptography APIs for backward compatibility duringa transition period.
Impact for users of Mbed TLS
You can keep using Mbed TLS as usual. If you clone the git repository, you won't need submodule support in your infrastructure anymore. The crypto part of the library will no longer be in the
crypto/
subdirectory.Impact for users of Mbed Crypto
You can build
libmbedcrypto
from the Mbed TLS repository (this has always been possible). If you want to build only the crypto library in its default configuration, runscripts/config.py crypto
before you build. For more details, see our guide on building Mbed/PSA Crypto from the Mbed TLS repository below.Impact for contributors to Mbed Crypto and Mbed TLS
During the transition period, we will keep merging pull requests in both repositories. However, there will be a short freeze on merging pull requests that make structural changes such as adding or removing files, or modify files that are shared between the two repositories. Changes that only affect crypto-only files can still be made in the Mbed Crypto repository, and changes that only affect X.509/TLS-only files can still be made in the Mbed TLS repository.
Once we merge the crypto files back into Mbed TLS, changes to crypto code will need to be made there. After this point, Mbed Crypto pull requests can be re-raised in Mbed TLS with few or nor modifications, since Mbed TLS will have the same file structure. If you have an open pull request in the Mbed Crypto repository at the cutover date, we'll let you know how to proceed.
The project remains committed to the continued development and maintenance of both Mbed TLS and PSA Cryptography API reference implementation. Merging Mbed Crypto back into Mbed TLS repository is to avoid the overheads in the short term as explained in Rationale Section above.
The text was updated successfully, but these errors were encountered: