X-Git-Url: https://git.distorted.org.uk/~mdw/secnet/blobdiff_plain/b7a5ecfcbac18c56d0b044975f6ed6835dd86ab4..ca028fbe875d9481d22c43eb9972fd854859a227:/x448.h diff --git a/x448.h b/x448.h index f1b0f2c..d16b64a 100644 --- a/x448.h +++ b/x448.h @@ -7,7 +7,26 @@ /*----- Licensing notice --------------------------------------------------* * - * This file is part of Catacomb. + * This file is part of secnet. + * See README for full list of copyright holders. + * + * secnet is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version d of the License, or + * (at your option) any later version. + * + * secnet is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * version 3 along with secnet; if not, see + * https://www.gnu.org/licenses/gpl.html. + * + * This file was originally part of Catacomb, but has been automatically + * modified for incorporation into secnet: see `import-catacomb-crypto' + * for details. * * Catacomb is free software; you can redistribute it and/or modify * it under the terms of the GNU Library General Public License as @@ -36,7 +55,8 @@ * * This is X448, as described in RFC7748, based on the elliptic curve defined * in Mike Hamburg, `Ed448-Goldilocks, a new elliptic curve', EUROCRYPT 2016, - * https://eprint.iacr.org/2015/625/. + * https://eprint.iacr.org/2015/625/. (The curve here is 4-isogenous to + * Hamburg's curve.) * * The RFC-specified operation is simpler than the Diffie--Hellman function * described in Hamburg's paper, since it doesn't involve the `Decaf' @@ -46,20 +66,7 @@ /*----- Header files ------------------------------------------------------*/ -#include - -#ifndef CATACOMB_KEY_H -# include "key.h" -#endif - -/*----- Key fetching ------------------------------------------------------*/ - -typedef struct x448_priv { key_bin priv, pub; } x448_priv; -typedef struct x448_pub { key_bin pub; } x448_pub; - -extern const key_fetchdef x448_pubfetch[], x448_privfetch[]; -#define X448_PUBFETCHSZ 3 -#define X448_PRIVFETCHSZ 6 +#include "fake-mLib-bits.h" /*----- Important constants -----------------------------------------------*/