summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2020-08-24 13:01:45 -0500
committerGitHub <noreply@github.com>2020-08-24 14:01:45 -0400
commitb9d26d2608aac4df9bac6ea914a8b01b5fed7df8 (patch)
tree881fbb4f83acd5a80faa7761723dbd4e3b77c739 /docs
parented3ded47e7764d52fbf1d9100ebfe7df38cb494b (diff)
downloadcryptography-b9d26d2608aac4df9bac6ea914a8b01b5fed7df8.tar.gz
add some words about separating ECDH and ECDSA (#5423)
* add some words about separating ECDH and ECDSA * Thomas Pornin wrote some good words about why you should try not to mix your ECDH and ECDSA keys.
Diffstat (limited to 'docs')
-rw-r--r--docs/hazmat/primitives/asymmetric/ec.rst9
1 files changed, 9 insertions, 0 deletions
diff --git a/docs/hazmat/primitives/asymmetric/ec.rst b/docs/hazmat/primitives/asymmetric/ec.rst
index 4232e31df..72768f833 100644
--- a/docs/hazmat/primitives/asymmetric/ec.rst
+++ b/docs/hazmat/primitives/asymmetric/ec.rst
@@ -47,6 +47,10 @@ Elliptic Curve Signature Algorithms
The ECDSA signature algorithm first standardized in NIST publication
`FIPS 186-3`_, and later in `FIPS 186-4`_.
+ Note that while elliptic curve keys can be used for both signing and key
+ exchange, this is `bad cryptographic practice`_. Instead, users should
+ generate separate signing and ECDH keys.
+
:param algorithm: An instance of
:class:`~cryptography.hazmat.primitives.hashes.HashAlgorithm`.
@@ -254,6 +258,10 @@ Elliptic Curve Key Exchange algorithm
key, derivation of multiple keys, and destroys any structure that may be
present.
+ Note that while elliptic curve keys can be used for both signing and key
+ exchange, this is `bad cryptographic practice`_. Instead, users should
+ generate separate signing and ECDH keys.
+
.. warning::
This example does not give `forward secrecy`_ and is only provided as a
@@ -972,3 +980,4 @@ Elliptic Curve Object Identifiers
.. _`EdDSA`: https://en.wikipedia.org/wiki/EdDSA
.. _`forward secrecy`: https://en.wikipedia.org/wiki/Forward_secrecy
.. _`SEC 1 v2.0`: https://www.secg.org/sec1-v2.pdf
+.. _`bad cryptographic practice`: https://crypto.stackexchange.com/a/3313