projects
/
oweals
/
gnunet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix out-of-tree build of GNUnet
[oweals/gnunet.git]
/
src
/
secretsharing
/
secretsharing.h
diff --git
a/src/secretsharing/secretsharing.h
b/src/secretsharing/secretsharing.h
index e94ff46b7cdc688745c450504ee8d13fdcda48d9..5936b6ab94701bfd7ad34265c6e32952afad2174 100644
(file)
--- a/
src/secretsharing/secretsharing.h
+++ b/
src/secretsharing/secretsharing.h
@@
-1,6
+1,6
@@
/*
This file is part of GNUnet.
/*
This file is part of GNUnet.
- (C) 2013 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2013 GNUnet e.V.
GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
@@
-14,8
+14,8
@@
You should have received a copy of the GNU General Public License
along with GNUnet; see the file COPYING. If not, write to the
You should have received a copy of the GNU General Public License
along with GNUnet; see the file COPYING. If not, write to the
- Free Software Foundation, Inc., 5
9 Temple Place - Suite 330
,
- Boston, MA 0211
1-1307
, USA.
+ Free Software Foundation, Inc., 5
1 Franklin Street, Fifth Floor
,
+ Boston, MA 0211
0-1301
, USA.
*/
/**
*/
/**
@@
-38,7
+38,7
@@
GNUNET_NETWORK_STRUCT_BEGIN
struct GNUNET_SECRETSHARING_FieldElement
{
/**
struct GNUNET_SECRETSHARING_FieldElement
{
/**
- * Value of an element in
<elgamal_g>
.
+ * Value of an element in
<elgamal_g>
.
*/
unsigned char bits[GNUNET_SECRETSHARING_ELGAMAL_BITS / 8];
};
*/
unsigned char bits[GNUNET_SECRETSHARING_ELGAMAL_BITS / 8];
};
@@
-56,6
+56,11
@@
struct GNUNET_SECRETSHARING_CreateMessage
*/
struct GNUNET_HashCode session_id GNUNET_PACKED;
*/
struct GNUNET_HashCode session_id GNUNET_PACKED;
+ /**
+ * Start time for communication with the other peers.
+ */
+ struct GNUNET_TIME_AbsoluteNBO start;
+
/**
* Deadline for the establishment of the crypto system.
*/
/**
* Deadline for the establishment of the crypto system.
*/
@@
-130,6
+135,11
@@
struct GNUNET_SECRETSHARING_DecryptRequestMessage
*/
struct GNUNET_MessageHeader header;
*/
struct GNUNET_MessageHeader header;
+ /**
+ * Until when should the decryption start?
+ */
+ struct GNUNET_TIME_AbsoluteNBO start;
+
/**
* Until when should the decryption be finished?
*/
/**
* Until when should the decryption be finished?
*/
@@
-147,7
+157,7
@@
struct GNUNET_SECRETSHARING_DecryptRequestMessage
struct GNUNET_SECRETSHARING_DecryptResponseMessage
{
/**
struct GNUNET_SECRETSHARING_DecryptResponseMessage
{
/**
- * Type: GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_DECRYPT_DONE
+ * Type:
#
GNUNET_MESSAGE_TYPE_SECRETSHARING_CLIENT_DECRYPT_DONE
*/
struct GNUNET_MessageHeader header;
*/
struct GNUNET_MessageHeader header;
@@
-155,7
+165,7
@@
struct GNUNET_SECRETSHARING_DecryptResponseMessage
* Zero if decryption failed, non-zero if decryption succeeded.
* If the decryption failed, plaintext is also zero.
*/
* Zero if decryption failed, non-zero if decryption succeeded.
* If the decryption failed, plaintext is also zero.
*/
- uint32_t success;
+ uint32_t success
GNUNET_PACKED
;
/**
* Decrypted plaintext.
/**
* Decrypted plaintext.
@@
-188,8
+198,8
@@
struct GNUNET_SECRETSHARING_Share
uint16_t my_peer;
/**
uint16_t my_peer;
/**
- * Public key.
Must correspond to the product of
- *
the homomorphic share commitm
ents.
+ * Public key.
Computed from the
+ *
exponentiated coeffici
ents.
*/
struct GNUNET_SECRETSHARING_PublicKey public_key;
*/
struct GNUNET_SECRETSHARING_PublicKey public_key;
@@
-199,14
+209,15
@@
struct GNUNET_SECRETSHARING_Share
struct GNUNET_SECRETSHARING_FieldElement my_share;
/**
struct GNUNET_SECRETSHARING_FieldElement my_share;
/**
- * Peer identities (includes 'my_peer')
+ * Peer identities (includes 'my_peer')
*/
struct GNUNET_PeerIdentity *peers;
/*
*/
struct GNUNET_PeerIdentity *peers;
/*
- * Homomorphic commitments to each peer's share (includes 'my_peer')
+ * For each peer, store elgamal_g to the peer's
+ * share.
*/
*/
- struct GNUNET_SECRETSHARING_FieldElement *
hom_share_commitment
s;
+ struct GNUNET_SECRETSHARING_FieldElement *
sigma
s;
/*
* Original indices of peers from the DKG round.
/*
* Original indices of peers from the DKG round.