pub struct AjtaiCommitment<const M: usize, const N: usize, const D: usize> { /* private fields */ }
Expand description
Ajtai commitment scheme implementation with matrix-based operations
Implementations§
Source§impl<const M: usize, const N: usize, const D: usize> AjtaiCommitment<M, N, D>
impl<const M: usize, const N: usize, const D: usize> AjtaiCommitment<M, N, D>
Sourcepub fn new(
params: AjtaiParameters,
matrix_a: RqMatrix<M, N, D>,
) -> Result<Self, ParameterError>
pub fn new( params: AjtaiParameters, matrix_a: RqMatrix<M, N, D>, ) -> Result<Self, ParameterError>
Creates new commitment scheme with validated parameters
Sourcepub fn commit(
&self,
witness: RqVector<N, D>,
) -> Result<(RqVector<M, D>, Opening<N, D>), CommitError>
pub fn commit( &self, witness: RqVector<N, D>, ) -> Result<(RqVector<M, D>, Opening<N, D>), CommitError>
Generates commitment and opening information with bounds checking
Sourcepub fn verify(
&self,
commitment: &RqVector<M, D>,
opening: &Opening<N, D>,
) -> Result<(), VerificationError>
pub fn verify( &self, commitment: &RqVector<M, D>, opening: &Opening<N, D>, ) -> Result<(), VerificationError>
Verifies commitment against opening information
Sourcepub fn witness_bound(&self) -> Zq
pub fn witness_bound(&self) -> Zq
Returns the witness bound
Trait Implementations§
Auto Trait Implementations§
impl<const M: usize, const N: usize, const D: usize> Freeze for AjtaiCommitment<M, N, D>
impl<const M: usize, const N: usize, const D: usize> RefUnwindSafe for AjtaiCommitment<M, N, D>
impl<const M: usize, const N: usize, const D: usize> Send for AjtaiCommitment<M, N, D>
impl<const M: usize, const N: usize, const D: usize> Sync for AjtaiCommitment<M, N, D>
impl<const M: usize, const N: usize, const D: usize> Unpin for AjtaiCommitment<M, N, D>
impl<const M: usize, const N: usize, const D: usize> UnwindSafe for AjtaiCommitment<M, N, D>
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