pub struct CtWitness {Show 14 fields
pub s_old_bal: u128,
pub s_new_bal: u128,
pub r_old_bal: u128,
pub r_new_bal: u128,
pub amount: u128,
pub s_old_nonce: u128,
pub s_new_nonce: u128,
pub r_old_nonce: u128,
pub r_new_nonce: u128,
pub amt_nonce: u128,
pub ct_hash_s_old: [u8; 16],
pub ct_hash_s_new: [u8; 16],
pub ct_hash_r_old: [u8; 16],
pub ct_hash_r_new: [u8; 16],
}Expand description
Private witness for a confidential transfer.
Balance and amount values are currently encoded as one Goldilocks element in
the AIR. The prover rejects values above u64::MAX, and the AIR enforces
that all high limbs are zero at the conservation row.
Fields§
§s_old_bal: u128§s_new_bal: u128§r_old_bal: u128§r_new_bal: u128§amount: u128§s_old_nonce: u128§s_new_nonce: u128§r_old_nonce: u128§r_new_nonce: u128§amt_nonce: u128§ct_hash_s_old: [u8; 16]blake3(sender_old_ciphertext)[0..16] - used in commitment preimage
ct_hash_s_new: [u8; 16]§ct_hash_r_old: [u8; 16]§ct_hash_r_new: [u8; 16]Auto Trait Implementations§
impl Freeze for CtWitness
impl RefUnwindSafe for CtWitness
impl Send for CtWitness
impl Sync for CtWitness
impl Unpin for CtWitness
impl UnsafeUnpin for CtWitness
impl UnwindSafe for CtWitness
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