cardano-crypto-praos/cbits/vrf10_batchcompat/verify.c
static int
vrf_validate_key(ge25519_p3 *y_out, const unsigned char pk_string[crypto_vrf_ietfdraft10_PUBLICKEYBYTES])
{
    if (ge25519_has_small_order(pk_string) != 0 || _vrf_ietfdraft10_string_to_point(y_out, pk_string) != 0) {
        return -1;
    }
    return 0;
}
/* Validate an untrusted public key as specified in the draft spec section
 * 5.6.1.
 *
 * This means check that it is not of low order and that it is canonically
 * encoded (i.e., y coordinate is already reduced mod p) Per the spec, we do not
 * check if the point is on the main subgroup.
 *
 * Returns 0 on success (and stores decoded curve point in y_out), -1 on
 * failure.
 */
Validate an untrusted public key as specified in the draft spec section
5.6.1.

This means check that it is not of low order and that it is canonically
encoded  Per the spec, we do not
check if the point is on the main subgroup.

Returns 0 on success (and stores decoded curve point in y_out), -1 on
failure.
Validate an untrusted public key as specified in the draft spec section 5 . 6 . 1 . This means check that it is not of low order and that it is canonically encoded Per the spec we do not check if the point is on the main subgroup . Returns 0 on success ( and stores decoded curve point in y_out ) - 1 on failure .
static int
vrf_validate_key(ge25519_p3 *y_out, const unsigned char pk_string[crypto_vrf_ietfdraft10_PUBLICKEYBYTES])
{
    if (ge25519_has_small_order(pk_string) != 0 || _vrf_ietfdraft10_string_to_point(y_out, pk_string) != 0) {
        return -1;
    }
    return 0;
}
static int vrf_validate_key ( ge25519_p3 * y_out , const unsigned char pk_string [ crypto_vrf_ietfdraft10_PUBLICKEYBYTES ] ) { if ( ge25519_has_small_order ( pk_string ) != 0 || _vrf_ietfdraft10_string_to_point ( y_out , pk_string ) != 0 ) { return -1 ; } return 0 ; }
Validate an untrusted public key as specified in the draft spec section
 5.6.1.
Validate an untrusted public key as specified in the draft spec section 5 . 6 . 1 .