aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorAndreas Schultz <[email protected]>2013-10-31 14:19:59 +0100
committerAndreas Schultz <[email protected]>2014-01-13 13:00:24 +0100
commitd06e7d12d3e8d77348e0c7e93a44b060e07f7075 (patch)
tree6a21065e30c722fe257dab1f97eb0839dd61a82a /lib
parent8cfece9ba27a3a239f1d6e790f0713b2ad2e8086 (diff)
downloadotp-d06e7d12d3e8d77348e0c7e93a44b060e07f7075.tar.gz
otp-d06e7d12d3e8d77348e0c7e93a44b060e07f7075.tar.bz2
otp-d06e7d12d3e8d77348e0c7e93a44b060e07f7075.zip
ssl: add brainpool elliptic curves to TLS (RFC-7027)
Diffstat (limited to 'lib')
-rw-r--r--lib/ssl/src/tls_v1.erl15
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/ssl/src/tls_v1.erl b/lib/ssl/src/tls_v1.erl
index 2395e98642..b618675cce 100644
--- a/lib/ssl/src/tls_v1.erl
+++ b/lib/ssl/src/tls_v1.erl
@@ -368,8 +368,9 @@ finished_label(server) ->
%% list ECC curves in prefered order
ecc_curves(_Minor) ->
- [?sect571r1,?sect571k1,?secp521r1,?sect409k1,?sect409r1,
- ?secp384r1,?sect283k1,?sect283r1,?secp256k1,?secp256r1,
+ [?sect571r1,?sect571k1,?secp521r1,?brainpoolP512r1,
+ ?sect409k1,?sect409r1,?brainpoolP384r1,?secp384r1,
+ ?sect283k1,?sect283r1,?brainpoolP256r1,?secp256k1,?secp256r1,
?sect239k1,?sect233k1,?sect233r1,?secp224k1,?secp224r1,
?sect193r1,?sect193r2,?secp192k1,?secp192r1,?sect163k1,
?sect163r1,?sect163r2,?secp160k1,?secp160r1,?secp160r2].
@@ -399,7 +400,10 @@ oid_to_enum(?secp224r1) -> 21;
oid_to_enum(?secp256k1) -> 22;
oid_to_enum(?secp256r1) -> 23;
oid_to_enum(?secp384r1) -> 24;
-oid_to_enum(?secp521r1) -> 25.
+oid_to_enum(?secp521r1) -> 25;
+oid_to_enum(?brainpoolP256r1) -> 26;
+oid_to_enum(?brainpoolP384r1) -> 27;
+oid_to_enum(?brainpoolP512r1) -> 28.
enum_to_oid(1) -> ?sect163k1;
enum_to_oid(2) -> ?sect163r1;
@@ -425,7 +429,10 @@ enum_to_oid(21) -> ?secp224r1;
enum_to_oid(22) -> ?secp256k1;
enum_to_oid(23) -> ?secp256r1;
enum_to_oid(24) -> ?secp384r1;
-enum_to_oid(25) -> ?secp521r1.
+enum_to_oid(25) -> ?secp521r1;
+enum_to_oid(26) -> ?brainpoolP256r1;
+enum_to_oid(27) -> ?brainpoolP384r1;
+enum_to_oid(28) -> ?brainpoolP512r1.
sufficent_ec_support() ->
CryptoSupport = crypto:supports(),