use zeroize::{Zeroize, ZeroizeOnDrop};
use crate::{dh_tuple::DhTupleProof, types::SessionId};
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Clone, Zeroize, ZeroizeOnDrop)]
pub struct VrfMsg0 {
pub from_party: u8,
pub session_id: SessionId,
pub h_con: [u8; 32],
}
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Clone)]
pub struct VrfMsg1 {
pub from_party: u8,
pub session_id: SessionId,
pub z_i: Vec<u8>,
pub pi: DhTupleProof,
}
impl VrfMsg1 {
pub fn party_id(&self) -> u8 {
self.from_party
}
}