style
This commit is contained in:
parent
3dea4b69f5
commit
342d3729df
142
crypto.c
142
crypto.c
@ -58,17 +58,17 @@ struct zkp_challenge_0og {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
static gcry_ctx_t ec_ctx;
|
static gcry_ctx_t ec_ctx;
|
||||||
static gcry_mpi_point_t ec_gen;
|
static gcry_mpi_point_t ec_gen;
|
||||||
static gcry_mpi_point_t ec_zero;
|
static gcry_mpi_point_t ec_zero;
|
||||||
static gcry_mpi_t ec_n;
|
static gcry_mpi_t ec_n;
|
||||||
static struct GNUNET_CRYPTO_EccDlogContext *ec_dlogctx;
|
static struct GNUNET_CRYPTO_EccDlogContext *ec_dlogctx;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* brandt_crypto_init initializes the crypto system and must be called before
|
* brandt_crypto_init initializes the crypto system and must be called before
|
||||||
* any other function from this file.
|
* any other function from this file.
|
||||||
*
|
*
|
||||||
* @param[in] dlogctx Pointer to the prepared dlog context.
|
* @param[in] dlogctx Pointer to the prepared dlog context.
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
@ -648,9 +648,9 @@ smc_gen_keyshare (struct BRANDT_Auction *ad, size_t *buflen)
|
|||||||
|
|
||||||
int
|
int
|
||||||
smc_recv_keyshare (struct BRANDT_Auction *ad,
|
smc_recv_keyshare (struct BRANDT_Auction *ad,
|
||||||
const unsigned char *buf,
|
const unsigned char *buf,
|
||||||
size_t buflen,
|
size_t buflen,
|
||||||
uint16_t sender)
|
uint16_t sender)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
struct proof_dl *proof1;
|
struct proof_dl *proof1;
|
||||||
@ -740,16 +740,16 @@ smc_encrypt_bid (struct BRANDT_Auction *ad, size_t *buflen)
|
|||||||
|
|
||||||
int
|
int
|
||||||
smc_recv_encrypted_bid (struct BRANDT_Auction *ad,
|
smc_recv_encrypted_bid (struct BRANDT_Auction *ad,
|
||||||
const unsigned char *buf,
|
const unsigned char *buf,
|
||||||
size_t buflen,
|
size_t buflen,
|
||||||
uint16_t sender)
|
uint16_t sender)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
const unsigned char *cur = buf;
|
const unsigned char *cur = buf;
|
||||||
struct proof_0og *proof3;
|
struct proof_0og *proof3;
|
||||||
gcry_mpi_point_t **ct; /* ciphertexts */
|
gcry_mpi_point_t **ct; /* ciphertexts */
|
||||||
gcry_mpi_point_t alpha_sum = gcry_mpi_point_new (0);
|
gcry_mpi_point_t alpha_sum = gcry_mpi_point_new (0);
|
||||||
gcry_mpi_point_t beta_sum = gcry_mpi_point_new (0);
|
gcry_mpi_point_t beta_sum = gcry_mpi_point_new (0);
|
||||||
|
|
||||||
brandt_assert (ad && buf);
|
brandt_assert (ad && buf);
|
||||||
|
|
||||||
@ -944,15 +944,15 @@ fp_pub_compute_outcome (struct BRANDT_Auction *ad, size_t *buflen)
|
|||||||
|
|
||||||
int
|
int
|
||||||
fp_pub_recv_outcome (struct BRANDT_Auction *ad,
|
fp_pub_recv_outcome (struct BRANDT_Auction *ad,
|
||||||
const unsigned char *buf,
|
const unsigned char *buf,
|
||||||
size_t buflen,
|
size_t buflen,
|
||||||
uint16_t sender)
|
uint16_t sender)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
const unsigned char *cur = buf;
|
const unsigned char *cur = buf;
|
||||||
struct proof_2dle *proof2;
|
struct proof_2dle *proof2;
|
||||||
gcry_mpi_point_t gamma = gcry_mpi_point_new (0);
|
gcry_mpi_point_t gamma = gcry_mpi_point_new (0);
|
||||||
gcry_mpi_point_t delta = gcry_mpi_point_new (0);
|
gcry_mpi_point_t delta = gcry_mpi_point_new (0);
|
||||||
|
|
||||||
brandt_assert (ad && buf);
|
brandt_assert (ad && buf);
|
||||||
|
|
||||||
@ -1058,14 +1058,14 @@ fp_pub_decrypt_outcome (struct BRANDT_Auction *ad, size_t *buflen)
|
|||||||
|
|
||||||
int
|
int
|
||||||
fp_pub_recv_decryption (struct BRANDT_Auction *ad,
|
fp_pub_recv_decryption (struct BRANDT_Auction *ad,
|
||||||
const unsigned char *buf,
|
const unsigned char *buf,
|
||||||
size_t buflen,
|
size_t buflen,
|
||||||
uint16_t sender)
|
uint16_t sender)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
const unsigned char *cur = buf;
|
const unsigned char *cur = buf;
|
||||||
struct proof_2dle *proof2;
|
struct proof_2dle *proof2;
|
||||||
gcry_mpi_point_t phi = gcry_mpi_point_new (0);
|
gcry_mpi_point_t phi = gcry_mpi_point_new (0);
|
||||||
|
|
||||||
brandt_assert (ad && buf);
|
brandt_assert (ad && buf);
|
||||||
|
|
||||||
@ -1296,15 +1296,15 @@ fp_priv_compute_outcome (struct BRANDT_Auction *ad, size_t *buflen)
|
|||||||
|
|
||||||
int
|
int
|
||||||
fp_priv_recv_outcome (struct BRANDT_Auction *ad,
|
fp_priv_recv_outcome (struct BRANDT_Auction *ad,
|
||||||
const unsigned char *buf,
|
const unsigned char *buf,
|
||||||
size_t buflen,
|
size_t buflen,
|
||||||
uint16_t sender)
|
uint16_t sender)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
const unsigned char *cur = buf;
|
const unsigned char *cur = buf;
|
||||||
struct proof_2dle *proof2;
|
struct proof_2dle *proof2;
|
||||||
gcry_mpi_point_t gamma = gcry_mpi_point_new (0);
|
gcry_mpi_point_t gamma = gcry_mpi_point_new (0);
|
||||||
gcry_mpi_point_t delta = gcry_mpi_point_new (0);
|
gcry_mpi_point_t delta = gcry_mpi_point_new (0);
|
||||||
|
|
||||||
brandt_assert (ad && buf);
|
brandt_assert (ad && buf);
|
||||||
|
|
||||||
@ -1406,14 +1406,14 @@ fp_priv_decrypt_outcome (struct BRANDT_Auction *ad, size_t *buflen)
|
|||||||
|
|
||||||
int
|
int
|
||||||
fp_priv_recv_decryption (struct BRANDT_Auction *ad,
|
fp_priv_recv_decryption (struct BRANDT_Auction *ad,
|
||||||
const unsigned char *buf,
|
const unsigned char *buf,
|
||||||
size_t buflen,
|
size_t buflen,
|
||||||
uint16_t sender)
|
uint16_t sender)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
const unsigned char *cur = buf;
|
const unsigned char *cur = buf;
|
||||||
struct proof_2dle *proof2;
|
struct proof_2dle *proof2;
|
||||||
gcry_mpi_point_t phi = gcry_mpi_point_new (0);
|
gcry_mpi_point_t phi = gcry_mpi_point_new (0);
|
||||||
|
|
||||||
brandt_assert (ad && buf);
|
brandt_assert (ad && buf);
|
||||||
|
|
||||||
@ -1511,7 +1511,13 @@ smc_zkp_dl (gcry_mpi_point_t v,
|
|||||||
ec_point_serialize (&challenge.g, ec_gen);
|
ec_point_serialize (&challenge.g, ec_gen);
|
||||||
ec_point_serialize (&challenge.v, v);
|
ec_point_serialize (&challenge.v, v);
|
||||||
ec_point_serialize (&challenge.a, a);
|
ec_point_serialize (&challenge.a, a);
|
||||||
GNUNET_CRYPTO_kdf_mod_mpi (&c, ec_n, NULL, 0, &challenge, sizeof (challenge), "libbrandt zkp dl");
|
GNUNET_CRYPTO_kdf_mod_mpi (&c,
|
||||||
|
ec_n,
|
||||||
|
NULL,
|
||||||
|
0,
|
||||||
|
&challenge,
|
||||||
|
sizeof (challenge),
|
||||||
|
"libbrandt zkp dl");
|
||||||
|
|
||||||
/* r = z + cx */
|
/* r = z + cx */
|
||||||
gcry_mpi_mulm (r, c, x, ec_n);
|
gcry_mpi_mulm (r, c, x, ec_n);
|
||||||
@ -1554,7 +1560,13 @@ smc_zkp_dl_check (const gcry_mpi_point_t v,
|
|||||||
ec_point_serialize (&challenge.g, ec_gen);
|
ec_point_serialize (&challenge.g, ec_gen);
|
||||||
ec_point_serialize (&challenge.v, v);
|
ec_point_serialize (&challenge.v, v);
|
||||||
ec_point_serialize (&challenge.a, a);
|
ec_point_serialize (&challenge.a, a);
|
||||||
GNUNET_CRYPTO_kdf_mod_mpi (&c, ec_n, NULL, 0, &challenge, sizeof (challenge), "libbrandt zkp dl");
|
GNUNET_CRYPTO_kdf_mod_mpi (&c,
|
||||||
|
ec_n,
|
||||||
|
NULL,
|
||||||
|
0,
|
||||||
|
&challenge,
|
||||||
|
sizeof (challenge),
|
||||||
|
"libbrandt zkp dl");
|
||||||
|
|
||||||
/* rg =? a + cv */
|
/* rg =? a + cv */
|
||||||
gcry_mpi_ec_mul (left, r, ec_gen, ec_ctx);
|
gcry_mpi_ec_mul (left, r, ec_gen, ec_ctx);
|
||||||
@ -1632,7 +1644,13 @@ smc_zkp_2dle (gcry_mpi_point_t v,
|
|||||||
ec_point_serialize (&challenge.w, rw);
|
ec_point_serialize (&challenge.w, rw);
|
||||||
ec_point_serialize (&challenge.a, a);
|
ec_point_serialize (&challenge.a, a);
|
||||||
ec_point_serialize (&challenge.b, b);
|
ec_point_serialize (&challenge.b, b);
|
||||||
GNUNET_CRYPTO_kdf_mod_mpi (&c, ec_n, NULL, 0, &challenge, sizeof (challenge), "libbrandt zkp 2dle");
|
GNUNET_CRYPTO_kdf_mod_mpi (&c,
|
||||||
|
ec_n,
|
||||||
|
NULL,
|
||||||
|
0,
|
||||||
|
&challenge,
|
||||||
|
sizeof (challenge),
|
||||||
|
"libbrandt zkp 2dle");
|
||||||
|
|
||||||
/* r = z + cx */
|
/* r = z + cx */
|
||||||
gcry_mpi_mulm (r, c, rx, ec_n);
|
gcry_mpi_mulm (r, c, rx, ec_n);
|
||||||
@ -1694,7 +1712,13 @@ smc_zkp_2dle_check (const gcry_mpi_point_t v,
|
|||||||
ec_point_serialize (&challenge.w, w);
|
ec_point_serialize (&challenge.w, w);
|
||||||
ec_point_serialize (&challenge.a, a);
|
ec_point_serialize (&challenge.a, a);
|
||||||
ec_point_serialize (&challenge.b, b);
|
ec_point_serialize (&challenge.b, b);
|
||||||
GNUNET_CRYPTO_kdf_mod_mpi (&c, ec_n, NULL, 0, &challenge, sizeof (challenge), "libbrandt zkp 2dle");
|
GNUNET_CRYPTO_kdf_mod_mpi (&c,
|
||||||
|
ec_n,
|
||||||
|
NULL,
|
||||||
|
0,
|
||||||
|
&challenge,
|
||||||
|
sizeof (challenge),
|
||||||
|
"libbrandt zkp 2dle");
|
||||||
|
|
||||||
/* r*g1 =? a + cv */
|
/* r*g1 =? a + cv */
|
||||||
gcry_mpi_ec_mul (left, r, g1, ec_ctx);
|
gcry_mpi_ec_mul (left, r, g1, ec_ctx);
|
||||||
@ -1825,7 +1849,13 @@ smc_zkp_0og (int m_is_gen,
|
|||||||
ec_point_serialize (&challenge.a2, a2);
|
ec_point_serialize (&challenge.a2, a2);
|
||||||
ec_point_serialize (&challenge.b1, b1);
|
ec_point_serialize (&challenge.b1, b1);
|
||||||
ec_point_serialize (&challenge.b2, b2);
|
ec_point_serialize (&challenge.b2, b2);
|
||||||
GNUNET_CRYPTO_kdf_mod_mpi (&c, ec_n, NULL, 0, &challenge, sizeof (challenge), "libbrandt zkp 0og");
|
GNUNET_CRYPTO_kdf_mod_mpi (&c,
|
||||||
|
ec_n,
|
||||||
|
NULL,
|
||||||
|
0,
|
||||||
|
&challenge,
|
||||||
|
sizeof (challenge),
|
||||||
|
"libbrandt zkp 0og");
|
||||||
|
|
||||||
if (!m_is_gen)
|
if (!m_is_gen)
|
||||||
{ /* m == 0 */
|
{ /* m == 0 */
|
||||||
@ -1918,7 +1948,13 @@ smc_zkp_0og_check (const gcry_mpi_point_t y,
|
|||||||
ec_point_serialize (&challenge.a2, a2);
|
ec_point_serialize (&challenge.a2, a2);
|
||||||
ec_point_serialize (&challenge.b1, b1);
|
ec_point_serialize (&challenge.b1, b1);
|
||||||
ec_point_serialize (&challenge.b2, b2);
|
ec_point_serialize (&challenge.b2, b2);
|
||||||
GNUNET_CRYPTO_kdf_mod_mpi (&c, ec_n, NULL, 0, &challenge, sizeof (challenge), "libbrandt zkp 0og");
|
GNUNET_CRYPTO_kdf_mod_mpi (&c,
|
||||||
|
ec_n,
|
||||||
|
NULL,
|
||||||
|
0,
|
||||||
|
&challenge,
|
||||||
|
sizeof (challenge),
|
||||||
|
"libbrandt zkp 0og");
|
||||||
|
|
||||||
/* c == d1 + d2 */
|
/* c == d1 + d2 */
|
||||||
gcry_mpi_addm (sum, d1, d2, ec_n);
|
gcry_mpi_addm (sum, d1, d2, ec_n);
|
||||||
|
Loading…
Reference in New Issue
Block a user