Commit 9a9a466e authored by Niels Möller's avatar Niels Möller

Define NETTLE_CURVE25519_RFC7748, and document it.

parent 9aafb117
2016-09-05 Niels Möller <nisse@lysator.liu.se>
* curve25519.h (NETTLE_CURVE25519_RFC7748): New preprocessor
constant.
* nettle.texinfo: Document it.
2016-09-03 Niels Möller <nisse@lysator.liu.se> 2016-09-03 Niels Möller <nisse@lysator.liu.se>
* config.make.in (.SUFFIXES): Delete no longer used .p$(OBJEXT). * config.make.in (.SUFFIXES): Delete no longer used .p$(OBJEXT).
......
...@@ -44,6 +44,9 @@ extern "C" { ...@@ -44,6 +44,9 @@ extern "C" {
#define CURVE25519_SIZE 32 #define CURVE25519_SIZE 32
/* Indicates that curve25519_mul conforms to RFC 7748. */
#define NETTLE_CURVE25519_RFC7748 1
void void
curve25519_mul_g (uint8_t *q, const uint8_t *n); curve25519_mul_g (uint8_t *q, const uint8_t *n);
......
...@@ -4337,6 +4337,20 @@ by @cite{RFC 7748}. Its the output is therefore well defined for ...@@ -4337,6 +4337,20 @@ by @cite{RFC 7748}. Its the output is therefore well defined for
@emph{all} possible inputs, no matter if the input string represents a @emph{all} possible inputs, no matter if the input string represents a
valid point on the curve or not. valid point on the curve or not.
Note that the curve25519 implementation in earlier versions from Nettle
deviates slightly from @cite{RFC 7748}, in that bit 255 of the @math{x}
coordinate of the point input to curve25519_mul was not ignored. The
@file{nette/curve25519.h} defines a preprocessor symbol
@code{NETTLE_CURVE25519_RFC7748} to indicate conformance with the
standard.
Nettle defines Curve 25519 in @file{<nettle/curve25519.h>}.
@defvr Constant NETTLE_CURVE25519_RFC7748
Defined to 1 in Nettle versions conforming to RFC 7748. Undefined in
earlier versions.
@end defvr
@defvr Constant CURVE25519_SIZE @defvr Constant CURVE25519_SIZE
The size of the strings representing curve25519 points and scalars, 32. The size of the strings representing curve25519 points and scalars, 32.
@end defvr @end defvr
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment