Esempio n. 1
0
static void
bench_curve25519_mul_g (void *p)
{
  struct curve25519_ctx *ctx = p;
  uint8_t q[CURVE25519_SIZE];
  curve25519_mul_g (q, ctx->s);
}
Esempio n. 2
0
static void
bench_curve25519 (void)
{
  double mul_g;
  double mul;
  struct knuth_lfib_ctx lfib;
  struct curve25519_ctx ctx;
  knuth_lfib_init (&lfib, 2);

  knuth_lfib_random (&lfib, sizeof(ctx.s), ctx.s);
  curve25519_mul_g (ctx.x, ctx.s);

  mul_g = time_function (bench_curve25519_mul_g, &ctx);
  mul = time_function (bench_curve25519_mul, &ctx);

  printf("%16s %4d %9.4f %9.4f\n",
	 "curve25519", 255, 1e-3/mul_g, 1e-3/mul);
}
Esempio n. 3
0
// Generate public key Qa = d*P (Qa, P are EC points; * is EC mult)
void gen_pubkey(dheluks_pkg_t *pkg, dheluks_kys_t *skr) {

    curve25519_mul_g(pkg->pubkey, skr->privkey); //generate pubkey

}