aboutsummaryrefslogtreecommitdiff
path: root/src/core/gnunet-service-core_kx.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/gnunet-service-core_kx.c')
-rw-r--r--src/core/gnunet-service-core_kx.c113
1 files changed, 0 insertions, 113 deletions
diff --git a/src/core/gnunet-service-core_kx.c b/src/core/gnunet-service-core_kx.c
index cafe658e8..a79ef075b 100644
--- a/src/core/gnunet-service-core_kx.c
+++ b/src/core/gnunet-service-core_kx.c
@@ -77,119 +77,6 @@
77GNUNET_NETWORK_STRUCT_BEGIN 77GNUNET_NETWORK_STRUCT_BEGIN
78 78
79/** 79/**
80 * Message transmitted with the signed ephemeral key of a peer. The
81 * session key is then derived from the two ephemeral keys (ECDHE).
82 */
83struct EphemeralKeyMessage
84{
85 /**
86 * Message type is #GNUNET_MESSAGE_TYPE_CORE_EPHEMERAL_KEY.
87 */
88 struct GNUNET_MessageHeader header;
89
90 /**
91 * Status of the sender (should be in `enum PeerStateMachine`), nbo.
92 */
93 int32_t sender_status GNUNET_PACKED;
94
95 /**
96 * An ECC signature of the @e origin_identity asserting the validity
97 * of the given ephemeral key.
98 */
99 struct GNUNET_CRYPTO_EddsaSignature signature;
100
101 /**
102 * Information about what is being signed.
103 */
104 struct GNUNET_CRYPTO_EccSignaturePurpose purpose;
105
106 /**
107 * At what time was this key created (beginning of validity).
108 */
109 struct GNUNET_TIME_AbsoluteNBO creation_time;
110
111 /**
112 * When does the given ephemeral key expire (end of validity).
113 */
114 struct GNUNET_TIME_AbsoluteNBO expiration_time;
115
116 /**
117 * Ephemeral public ECC key.
118 */
119 struct GNUNET_CRYPTO_EcdhePublicKey ephemeral_key;
120
121 /**
122 * Public key of the signing peer (persistent version, not the
123 * ephemeral public key).
124 */
125 struct GNUNET_PeerIdentity origin_identity;
126};
127
128
129/**
130 * We're sending an (encrypted) PING to the other peer to check if it
131 * can decrypt. The other peer should respond with a PONG with the
132 * same content, except this time encrypted with the receiver's key.
133 */
134struct PingMessage
135{
136 /**
137 * Message type is #GNUNET_MESSAGE_TYPE_CORE_PING.
138 */
139 struct GNUNET_MessageHeader header;
140
141 /**
142 * Seed for the IV
143 */
144 uint32_t iv_seed GNUNET_PACKED;
145
146 /**
147 * Intended target of the PING, used primarily to check
148 * that decryption actually worked.
149 */
150 struct GNUNET_PeerIdentity target;
151
152 /**
153 * Random number chosen to make replay harder.
154 */
155 uint32_t challenge GNUNET_PACKED;
156};
157
158
159/**
160 * Response to a PING. Includes data from the original PING.
161 */
162struct PongMessage
163{
164 /**
165 * Message type is #GNUNET_MESSAGE_TYPE_CORE_PONG.
166 */
167 struct GNUNET_MessageHeader header;
168
169 /**
170 * Seed for the IV
171 */
172 uint32_t iv_seed GNUNET_PACKED;
173
174 /**
175 * Random number to make replay attacks harder.
176 */
177 uint32_t challenge GNUNET_PACKED;
178
179 /**
180 * Reserved, always zero.
181 */
182 uint32_t reserved;
183
184 /**
185 * Intended target of the PING, used primarily to check
186 * that decryption actually worked.
187 */
188 struct GNUNET_PeerIdentity target;
189};
190
191
192/**
193 * Encapsulation for encrypted messages exchanged between 80 * Encapsulation for encrypted messages exchanged between
194 * peers. Followed by the actual encrypted data. 81 * peers. Followed by the actual encrypted data.
195 */ 82 */