ge_tobytes(public_key, &A);
}
-void crypto_sign_init1(crypto_sign_ctx *ctx,
- const u8 secret_key[32],
- const u8 public_key[32])
+void crypto_sign_init_first_pass(crypto_sign_ctx *ctx,
+ const u8 secret_key[32],
+ const u8 public_key[32])
{
u8 *a = ctx->buf;
u8 *prefix = ctx->buf + 32;
HASH_UPDATE(&(ctx->hash), msg, msg_size);
}
-void crypto_sign_init2(crypto_sign_ctx *ctx)
+void crypto_sign_init_second_pass(crypto_sign_ctx *ctx)
{
u8 *r = ctx->buf + 32;
u8 *half_sig = ctx->buf + 64;
const u8 *message, size_t message_size)
{
crypto_sign_ctx ctx;
- crypto_sign_init1 (&ctx, secret_key, public_key);
- crypto_sign_update(&ctx, message, message_size);
- crypto_sign_init2 (&ctx);
- crypto_sign_update(&ctx, message, message_size);
- crypto_sign_final (&ctx, signature);
+ crypto_sign_init_first_pass (&ctx, secret_key, public_key);
+ crypto_sign_update (&ctx, message, message_size);
+ crypto_sign_init_second_pass(&ctx);
+ crypto_sign_update (&ctx, message, message_size);
+ crypto_sign_final (&ctx, signature);
}
int crypto_check_public_key(const u8 public_key[32])
uint8_t pk [32];
} crypto_sign_ctx;
-void crypto_sign_init1(crypto_sign_ctx *ctx,
- const uint8_t secret_key[32],
- const uint8_t public_key[32]);
+void crypto_sign_init_first_pass(crypto_sign_ctx *ctx,
+ const uint8_t secret_key[32],
+ const uint8_t public_key[32]);
void crypto_sign_update(crypto_sign_ctx *ctx,
const uint8_t *message, size_t message_size);
-void crypto_sign_init2(crypto_sign_ctx *ctx);
+void crypto_sign_init_second_pass(crypto_sign_ctx *ctx);
void crypto_sign_final(crypto_sign_ctx *ctx, uint8_t signature[64]);