pub struct VrfOutput(/* private fields */);Expand description
VRF output (beta): the 64-byte pseudorandom value a verified proof yields.
CONIKS derives the private tree index from this value (see
VrfOutput::index).
Implementations§
Source§impl VrfOutput
impl VrfOutput
Sourcepub fn from_bytes(bytes: [u8; 64]) -> Self
pub fn from_bytes(bytes: [u8; 64]) -> Self
Wrap a raw 64-byte VRF output.
Sourcepub fn index(&self) -> [u8; 32]
pub fn index(&self) -> [u8; 32]
The 256-bit (32-byte) tree index derived from this output: the first 32
bytes of beta, consumed most-significant-bit-first as the root-to-leaf
path in the CONIKS prefix tree.
Because beta is pseudorandom and unique per (key, input), the derived
index is a stable, verifiable, privacy-preserving position: an observer
who sees the index learns nothing about the identity, and the directory
cannot move an identity to a different position without a fresh VRF
proof.
Trait Implementations§
impl Eq for VrfOutput
impl StructuralPartialEq for VrfOutput
Auto Trait Implementations§
impl Freeze for VrfOutput
impl RefUnwindSafe for VrfOutput
impl Send for VrfOutput
impl Sync for VrfOutput
impl Unpin for VrfOutput
impl UnsafeUnpin for VrfOutput
impl UnwindSafe for VrfOutput
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more