summaryrefslogtreecommitdiffstats
path: root/comm/third_party/botan/doc/roadmap.rst
diff options
context:
space:
mode:
Diffstat (limited to 'comm/third_party/botan/doc/roadmap.rst')
-rw-r--r--comm/third_party/botan/doc/roadmap.rst54
1 files changed, 54 insertions, 0 deletions
diff --git a/comm/third_party/botan/doc/roadmap.rst b/comm/third_party/botan/doc/roadmap.rst
new file mode 100644
index 0000000000..6a5808d562
--- /dev/null
+++ b/comm/third_party/botan/doc/roadmap.rst
@@ -0,0 +1,54 @@
+
+Development Roadmap
+========================================
+
+Near Term Plans
+----------------------------------------
+
+Here is an outline for the development plans over the next 12-18 months, as of
+June 2019.
+
+TLS Hardening/Testing
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Leverage TLS-Attacker better, for example using custom workflows. Add
+interop testing with OpenSSL as part of CI. Improve fuzzer coverage.
+
+Expose TLS at FFI layer
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Exposing TLS to C would allow for many new applications to make use of Botan.
+
+TLS v1.3
+^^^^^^^^^^^^^^^
+
+A complete implementation of TLS v1.3 is planned. DTLS v1.3 may or may not be
+supported as well.
+
+Botan 3.x
+----------------------------------------
+
+Botan 3 is currently planned for release in 2021. Botan 2 will remain
+supported for several years past that, to allow plenty of time for
+applications to switch over.
+
+This version will adopt C++17 and use new std types such as string_view,
+optional, and any, along with adopting memory span and guarded integer
+types. All deprecated features/APIs of 2.x (which notably includes TLS v1.0/v1.1
+support) will be removed. Beyond explicitly deprecated functionality, there
+should be no breaking API changes in the transition to 3.x
+
+Features currently targeted for Botan 3 include
+
+* New post-quantum algorithms: especially a CCA2 secure encryption scheme and a
+ lattice-based signature scheme are of interest.
+
+* Password Authenticated Key Exchanges: one or more modern PAKEs
+ (such as SPAKE2+ or OPAQUE) to replace SRP.
+
+* Elliptic Curve Pairings: useful in many interesting protocols.
+ BN-256 and BLS12-381 seem the most likely.
+
+* New ASN.1 library
+
+Some of these features may end being backported to Botan 2 as well.