Struct proof_system::statement::ped_comm::PedersenCommitment
source · [−]pub struct PedersenCommitment<G: AffineCurve> {
pub commitment: G,
pub key: Option<Vec<G>>,
pub key_ref: Option<usize>,
}Expand description
Proving knowledge of scalars s_i in Pedersen commitment g_0 * s_0 + g_1 * s_1 + ... + g_{n-1} * s_{n-1} = C
Fields
commitment: GThe Pedersen commitment C in g_0 * s_0 + g_1 * s_1 + ... + g_{n-1} * s_{n-1} = C
key: Option<Vec<G>>Commitment key g_i in g_0 * s_0 + g_1 * s_1 + ... + g_{n-1} * s_{n-1} = C
key_ref: Option<usize>Implementations
sourceimpl<G: AffineCurve> PedersenCommitment<G>
impl<G: AffineCurve> PedersenCommitment<G>
Create a Statement variant for proving knowledge of committed elements in a Pedersen commitment
pub fn new_statement_from_params<E: PairingEngine>(
key: Vec<G>,
commitment: G
) -> Statement<E, G>
pub fn new_statement_from_params_refs<E: PairingEngine>(
key_ref: usize,
commitment: G
) -> Statement<E, G>
pub fn get_commitment_key<'a, E: PairingEngine>(
&'a self,
setup_params: &'a [SetupParams<E, G>],
st_idx: usize
) -> Result<&'a Vec<G>, ProofSystemError>
Trait Implementations
sourceimpl<G: AffineCurve> CanonicalDeserialize for PedersenCommitment<G>
impl<G: AffineCurve> CanonicalDeserialize for PedersenCommitment<G>
sourcefn deserialize<R: Read>(reader: R) -> Result<Self, SerializationError>
fn deserialize<R: Read>(reader: R) -> Result<Self, SerializationError>
Reads
Self from reader.sourcefn deserialize_uncompressed<R: Read>(
reader: R
) -> Result<Self, SerializationError>
fn deserialize_uncompressed<R: Read>(
reader: R
) -> Result<Self, SerializationError>
Reads
Self from reader without compression.sourcefn deserialize_unchecked<R: Read>(reader: R) -> Result<Self, SerializationError>
fn deserialize_unchecked<R: Read>(reader: R) -> Result<Self, SerializationError>
Reads
self from reader without compression, and without performing
validity checks. Should be used only when the input is trusted. Read moresourceimpl<G: AffineCurve> CanonicalSerialize for PedersenCommitment<G>
impl<G: AffineCurve> CanonicalSerialize for PedersenCommitment<G>
sourcefn serialize<W: Write>(&self, writer: W) -> Result<(), SerializationError>
fn serialize<W: Write>(&self, writer: W) -> Result<(), SerializationError>
Serializes
self into writer.
It is left up to a particular type for how it strikes the
serialization efficiency vs compression tradeoff.
For standard types (e.g. bool, lengths, etc.) typically an uncompressed
form is used, whereas for algebraic types compressed forms are used. Read morefn serialized_size(&self) -> usize
sourcefn serialize_uncompressed<W: Write>(
&self,
writer: W
) -> Result<(), SerializationError>
fn serialize_uncompressed<W: Write>(
&self,
writer: W
) -> Result<(), SerializationError>
Serializes
self into writer without compression.sourcefn serialize_unchecked<W: Write>(
&self,
writer: W
) -> Result<(), SerializationError>
fn serialize_unchecked<W: Write>(
&self,
writer: W
) -> Result<(), SerializationError>
Serializes
self into writer without compression, and without
performing validity checks. Should be used only when there is no
danger of adversarial manipulation of the output. Read morefn uncompressed_size(&self) -> usize
sourceimpl<G: Clone + AffineCurve> Clone for PedersenCommitment<G>
impl<G: Clone + AffineCurve> Clone for PedersenCommitment<G>
sourcefn clone(&self) -> PedersenCommitment<G>
fn clone(&self) -> PedersenCommitment<G>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresourceimpl<G: Debug + AffineCurve> Debug for PedersenCommitment<G>
impl<G: Debug + AffineCurve> Debug for PedersenCommitment<G>
sourceimpl<'de, G: AffineCurve> Deserialize<'de> for PedersenCommitment<G>
impl<'de, G: AffineCurve> Deserialize<'de> for PedersenCommitment<G>
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl<G: PartialEq + AffineCurve> PartialEq<PedersenCommitment<G>> for PedersenCommitment<G>
impl<G: PartialEq + AffineCurve> PartialEq<PedersenCommitment<G>> for PedersenCommitment<G>
sourcefn eq(&self, other: &PedersenCommitment<G>) -> bool
fn eq(&self, other: &PedersenCommitment<G>) -> bool
sourceimpl<G: AffineCurve> Serialize for PedersenCommitment<G>
impl<G: AffineCurve> Serialize for PedersenCommitment<G>
impl<G: Eq + AffineCurve> Eq for PedersenCommitment<G>
impl<G: AffineCurve> StructuralEq for PedersenCommitment<G>
impl<G: AffineCurve> StructuralPartialEq for PedersenCommitment<G>
Auto Trait Implementations
impl<G> RefUnwindSafe for PedersenCommitment<G>where
G: RefUnwindSafe,
impl<G> Send for PedersenCommitment<G>
impl<G> Sync for PedersenCommitment<G>
impl<G> Unpin for PedersenCommitment<G>where
G: Unpin,
impl<G> UnwindSafe for PedersenCommitment<G>where
G: UnwindSafe,
Blanket Implementations
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> CanonicalSerializeHashExt for Twhere
T: CanonicalSerialize,
impl<T> CanonicalSerializeHashExt for Twhere
T: CanonicalSerialize,
fn hash<H>(&self) -> GenericArray<u8, <H as Digest>::OutputSize>where
H: Digest,
fn hash_uncompressed<H>(&self) -> GenericArray<u8, <H as Digest>::OutputSize>where
H: Digest,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Upcastable for Twhere
T: 'static + Any + Send + Sync,
impl<T> Upcastable for Twhere
T: 'static + Any + Send + Sync,
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref