Struct grin_keychain::BlindingFactor [−][src]
pub struct BlindingFactor(_);
Implementations
impl BlindingFactor
[src]
impl BlindingFactor
[src]pub fn from_secret_key(skey: SecretKey) -> BlindingFactor
[src]
pub fn from_slice(data: &[u8]) -> BlindingFactor
[src]
pub fn zero() -> BlindingFactor
[src]
pub fn is_zero(&self) -> bool
[src]
pub fn rand(secp: &Secp256k1) -> BlindingFactor
[src]
pub fn from_hex(hex: &str) -> Result<BlindingFactor, Error>
[src]
pub fn secret_key(&self, secp: &Secp256k1) -> Result<SecretKey, Error>
[src]
pub fn add(
&self,
other: &BlindingFactor,
secp: &Secp256k1
) -> Result<BlindingFactor, Error>
[src]
&self,
other: &BlindingFactor,
secp: &Secp256k1
) -> Result<BlindingFactor, Error>
pub fn split(
&self,
blind_1: &BlindingFactor,
secp: &Secp256k1
) -> Result<BlindingFactor, Error>
[src]
pub fn split(
&self,
blind_1: &BlindingFactor,
secp: &Secp256k1
) -> Result<BlindingFactor, Error>
[src]Split a blinding_factor (aka secret_key) into a pair of blinding_factors. We use one of these (k1) to sign the tx_kernel (k1G) and the other gets aggregated in the block_header as the “offset”. This prevents an actor from being able to sum a set of inputs, outputs and kernels from a block to identify and reconstruct a particular tx from a block. You would need both k1, k2 to do this.
Trait Implementations
impl Clone for BlindingFactor
[src]
impl Clone for BlindingFactor
[src]fn clone(&self) -> BlindingFactor
[src]
fn clone(&self) -> BlindingFactor
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for BlindingFactor
[src]
impl Debug for BlindingFactor
[src]impl Default for BlindingFactor
[src]
impl Default for BlindingFactor
[src]fn default() -> BlindingFactor
[src]
fn default() -> BlindingFactor
[src]Returns the “default value” for a type. Read more
impl<'de> Deserialize<'de> for BlindingFactor
[src]
impl<'de> Deserialize<'de> for BlindingFactor
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl Drop for BlindingFactor
[src]
impl Drop for BlindingFactor
[src]impl PartialEq<BlindingFactor> for BlindingFactor
[src]
impl PartialEq<BlindingFactor> for BlindingFactor
[src]fn eq(&self, other: &BlindingFactor) -> bool
[src]
fn eq(&self, other: &BlindingFactor) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &BlindingFactor) -> bool
[src]
fn ne(&self, other: &BlindingFactor) -> bool
[src]This method tests for !=
.
impl Serialize for BlindingFactor
[src]
impl Serialize for BlindingFactor
[src]impl Zeroize for BlindingFactor
[src]
impl Zeroize for BlindingFactor
[src]impl StructuralPartialEq for BlindingFactor
[src]
Auto Trait Implementations
impl RefUnwindSafe for BlindingFactor
impl Send for BlindingFactor
impl Sync for BlindingFactor
impl Unpin for BlindingFactor
impl UnwindSafe for BlindingFactor
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> CloneAny for T where
T: Any + Clone,
impl<T> CloneAny for T where
T: Any + Clone,
pub fn clone_any(&self) -> Box<dyn CloneAny + 'static, Global>
pub fn clone_any_send(&self) -> Box<dyn CloneAny + 'static + Send, Global> where
T: Send,
T: Send,
pub fn clone_any_sync(&self) -> Box<dyn CloneAny + 'static + Sync, Global> where
T: Sync,
T: Sync,
pub fn clone_any_send_sync(
&self
) -> Box<dyn CloneAny + 'static + Sync + Send, Global> where
T: Send + Sync,
&self
) -> Box<dyn CloneAny + 'static + Sync + Send, Global> where
T: Send + Sync,
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> DebugAny for T where
T: Any + Debug,
T: Any + Debug,
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> UnsafeAny for T where
T: Any,
T: Any,