/// Hash onto BLS12-381 G1 (random oracle variant) returning zkgroup/pairing
/// object
///
/// This follows the internet draft <https://datatracker.ietf.org/doc/draft-irtf-cfrg-hash-to-curve/>
///
/// # Arguments
/// * `dst` is a domain separation tag (see draft-irtf-cfrg-hash-to-curve for
///   guidance on formatting of this tag)
/// * `msg` is the message to be hashed to an elliptic curve point on BLS12_381.
/// # Returns
/// The G1 point as a zkgroup/pairing object
Hash onto BLS12-381 G1 (random oracle variant) returning zkgroup/pairing
object

This follows the internet draft
Hash onto BLS12 - 381 G1 ( random oracle variant ) returning zkgroup / pairing object This follows the internet draft
pub fn hash_to_g1(domain: &[u8], msg: &[u8]) -> G1Projective {
    let hash = hash_to_miracl_g1(domain, msg);
    g1_from_bytes(&miracl_g1_to_bytes(&hash).0)
        .expect("unreachable: conversion error from Miracl G1 to pairing::G1")
}
pub fn hash_to_g1 ( domain : & [ u8 ] , msg : & [ u8 ] ) -> G1Projective { let hash = hash_to_miracl_g1 ( domain , msg ) ; g1_from_bytes ( & miracl_g1_to_bytes ( & hash ) . 0 ) . expect ( " " ) }
Hash onto BLS12-381 G1 (random oracle variant) returning zkgroup/pairing
object
Hash onto BLS12 - 381 G1 ( random oracle variant ) returning zkgroup / pairing object
The G1 point as a zkgroup/pairing object
The G1 point as a zkgroup / pairing object
domain
&[u8]
msg
&[u8]