|
# Planning for GnuTLS 3.4 #
|
|
# Planning for GnuTLS 3.4 #
|
|
|
|
|
|
|
|
Date: Possible end of March 2015
|
|
|
|
|
|
## New Features
|
|
## New Features
|
|
### API:
|
|
### API:
|
|
* [x] **A simple API for AEAD ciphers**: The current API for AEAD ciphers does not take advantage of the inherent simplicity in AEAD ciphers (e.g., decryption + tag verification at the same step). Provide an API that simplifies usage of such ciphers. [The current API design.](https://gitorious.org/gnutls/gnutls/source/ce6389cb1fd3b641f14c0ccd57f17a51827cb2d3:lib/includes/gnutls/crypto.h#L67)
|
|
* [x] **A simple API for AEAD ciphers**: The current API for AEAD ciphers does not take advantage of the inherent simplicity in AEAD ciphers (e.g., decryption + tag verification at the same step). Provide an API that simplifies usage of such ciphers. [The current API design.](https://gitorious.org/gnutls/gnutls/source/ce6389cb1fd3b641f14c0ccd57f17a51827cb2d3:lib/includes/gnutls/crypto.h#L67)
|
... | @@ -11,11 +13,11 @@ |
... | @@ -11,11 +13,11 @@ |
|
* [x] **Transparent support for internationalized DNS names:** Add support for [RFC6125 recommendations](https://tools.ietf.org/html/rfc6125#section-6.4.2).
|
|
* [x] **Transparent support for internationalized DNS names:** Add support for [RFC6125 recommendations](https://tools.ietf.org/html/rfc6125#section-6.4.2).
|
|
|
|
|
|
### Protocol/Ciphers:
|
|
### Protocol/Ciphers:
|
|
* [ ] **[Chacha cipher + poly1305 MAC](http://tools.ietf.org/html/draft-mavrogiannopoulos-chacha-tls-02):** An AEAD combination of chacha with the poly1305 authenticator for performance in software implementations. A former variant of it is already being used by google's servers for communication between them and chrome. That in addition would allow the use of fast stream cipher in DTLS. Depends on having a new nettle release which updates to the latest draft of Chacha-poly1305.
|
|
* [#] **[Chacha cipher + poly1305 MAC](http://tools.ietf.org/html/draft-mavrogiannopoulos-chacha-tls-02):** An AEAD combination of chacha with the poly1305 authenticator for performance in software implementations. A former variant of it is already being used by google's servers for communication between them and chrome. That in addition would allow the use of fast stream cipher in DTLS. Depends on having a new nettle release which updates to the latest draft of Chacha-poly1305. **Postponed until Chacha-poly1305 is standardized by IETF**
|
|
|
|
|
|
* [x] **[AES-CCM](https://tools.ietf.org/html/rfc6655) and [AES-ECC-CCM](https://tools.ietf.org/html/rfc7251):** An alternative AES AEAD construction using CTR and CBC-MAC. Depends on porting to nettle 3.0.
|
|
* [x] **[AES-CCM](https://tools.ietf.org/html/rfc6655) and [AES-ECC-CCM](https://tools.ietf.org/html/rfc7251):** An alternative AES AEAD construction using CTR and CBC-MAC. Depends on porting to nettle 3.0.
|
|
|
|
|
|
* [ ] **Support for alternative to NIST elliptic curves:** There is a lot of hype around the curves defined by NIST and although there are many exaggerations, having alternatives is a good thing. Related drafts/RFCs: [http://tools.ietf.org/html/draft-josefsson-tls-curve25519-06](http://tools.ietf.org/html/draft-josefsson-tls-curve25519-06), [http://tools.ietf.org/html/rfc7027](http://tools.ietf.org/html/rfc7027)
|
|
* [#] **Support for alternative to NIST elliptic curves:** There is a lot of hype around the curves defined by NIST and although there are many exaggerations, having alternatives is a good thing. Related drafts/RFCs: [http://tools.ietf.org/html/draft-josefsson-tls-curve25519-06](http://tools.ietf.org/html/draft-josefsson-tls-curve25519-06), [http://tools.ietf.org/html/rfc7027](http://tools.ietf.org/html/rfc7027) **Postponed**
|
|
|
|
|
|
* [x] **[Disable SSL 3.0 by default](http://nmav.gnutls.org/2014/10/what-about-poodle.html)**
|
|
* [x] **[Disable SSL 3.0 by default](http://nmav.gnutls.org/2014/10/what-about-poodle.html)**
|
|
|
|
|
... | @@ -28,4 +30,4 @@ |
... | @@ -28,4 +30,4 @@ |
|
|
|
|
|
* [x] **Port to nettle 3.0:** Unfortunately nettle 3.0 breaks the API and we need to convert to it in order to use the new features of it. That switch should be combined with the chacha-poly1305 AEAD cipher inclusion. Status: port is done, but not merged yet.
|
|
* [x] **Port to nettle 3.0:** Unfortunately nettle 3.0 breaks the API and we need to convert to it in order to use the new features of it. That switch should be combined with the chacha-poly1305 AEAD cipher inclusion. Status: port is done, but not merged yet.
|
|
|
|
|
|
* [ ] **Drop the unbound dependency in libdane:** That dependency requires either openssl or nss; and both are unacceptable. The current plan is to convert libdane to a non-validating dnssec library that depends on a validating server running on localhost - e.g., unbound or dnsmasq. Such library currently does not exist, but there is [patch for c-ares](https://github.com/bagder/c-ares/pull/16). |
|
* [#] **Drop the unbound dependency in libdane:** That dependency requires either openssl or nss; and both are unacceptable. The current plan is to convert libdane to a non-validating dnssec library that depends on a validating server running on localhost - e.g., unbound or dnsmasq. Such library currently does not exist, but there is [patch for c-ares](https://github.com/bagder/c-ares/pull/16). **Postponed since there is no other DNSSEC library we could use** |