From: Bart Polot Date: Mon, 27 Apr 2015 19:14:55 +0000 (+0000) Subject: - due to incompatibilities in the representation of the ECC public key for ECDH and... X-Git-Tag: initial-import-from-subversion-38251~2022 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=631731a9fd4372553be5b32a67855d17ea57fbae;p=oweals%2Fgnunet.git - due to incompatibilities in the representation of the ECC public key for ECDH and EdDSA, peers must provide en explicit ECDH key and sign it with theis EdDSA ID. --- diff --git a/src/cadet/cadet_protocol.h b/src/cadet/cadet_protocol.h index d866e20d3..ecc31a01d 100644 --- a/src/cadet/cadet_protocol.h +++ b/src/cadet/cadet_protocol.h @@ -122,14 +122,31 @@ struct GNUNET_CADET_AX_KX struct GNUNET_MessageHeader header; /** - * Sender's ephemeral public ECC key (always for NIST P-521) encoded in a + * An EdDSA signature of the permanent ECDH key with the Peer's ID key. + */ + struct GNUNET_CRYPTO_EddsaSignature signature; + + /** + * Information about what is being signed (@a permanent_key). + */ + struct GNUNET_CRYPTO_EccSignaturePurpose purpose; + + /** + * Sender's permanent_key public ECC key encoded in a + * format suitable for network transmission, as created + * using 'gcry_sexp_sprint'. + */ + struct GNUNET_CRYPTO_EcdhePublicKey permanent_key; + + /** + * Sender's ephemeral public ECC key encoded in a * format suitable for network transmission, as created * using 'gcry_sexp_sprint'. */ struct GNUNET_CRYPTO_EcdhePublicKey ephemeral_key; /** - * Sender's next ephemeral public ECC key (always for NIST P-521) encoded in a + * Sender's next ephemeral public ECC key encoded in a * format suitable for network transmission, as created * using 'gcry_sexp_sprint'. */