#[repr(C)]pub struct TransferWithFeeData {
pub ciphertext_lo: TransferAmountEncryption,
pub ciphertext_hi: TransferAmountEncryption,
pub transfer_with_fee_pubkeys: TransferWithFeePubkeys,
pub new_source_ciphertext: ElGamalCiphertext,
pub fee_ciphertext: FeeEncryption,
pub fee_parameters: FeeParameters,
pub proof: TransferWithFeeProof,
}
Fields
ciphertext_lo: TransferAmountEncryption
Group encryption of the low 32 bites of the transfer amount
ciphertext_hi: TransferAmountEncryption
Group encryption of the high 32 bits of the transfer amount
transfer_with_fee_pubkeys: TransferWithFeePubkeys
The public encryption keys associated with the transfer: source, dest, and auditor
new_source_ciphertext: ElGamalCiphertext
The final spendable ciphertext after the transfer,
fee_ciphertext: FeeEncryption
fee_parameters: FeeParameters
proof: TransferWithFeeProof
Implementations
sourceimpl TransferWithFeeData
impl TransferWithFeeData
pub fn new(
transfer_amount: u64,
(spendable_balance, old_source_ciphertext): (u64, &ElGamalCiphertext),
source_keypair: &ElGamalKeypair,
(destination_pubkey, auditor_pubkey): (&ElGamalPubkey, &ElGamalPubkey),
fee_parameters: FeeParameters,
withdraw_withheld_authority_pubkey: &ElGamalPubkey
) -> Result<Self, ProofError>
sourcepub fn decrypt_amount(
&self,
role: Role,
sk: &ElGamalSecretKey
) -> Result<u64, ProofError>
pub fn decrypt_amount(
&self,
role: Role,
sk: &ElGamalSecretKey
) -> Result<u64, ProofError>
Decrypts transfer amount from transfer-with-fee data
Trait Implementations
sourceimpl Clone for TransferWithFeeData
impl Clone for TransferWithFeeData
sourcefn clone(&self) -> TransferWithFeeData
fn clone(&self) -> TransferWithFeeData
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 more
sourceimpl Verifiable for TransferWithFeeData
impl Verifiable for TransferWithFeeData
fn verify(&self) -> Result<(), ProofError>
impl Copy for TransferWithFeeData
impl Pod for TransferWithFeeData
Auto Trait Implementations
impl RefUnwindSafe for TransferWithFeeData
impl Send for TransferWithFeeData
impl Sync for TransferWithFeeData
impl Unpin for TransferWithFeeData
impl UnwindSafe for TransferWithFeeData
Blanket Implementations
impl<T> AbiExample for T
impl<T> AbiExample for T
default fn example() -> T
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
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> CheckedBitPattern for T where
T: AnyBitPattern,
impl<T> CheckedBitPattern for T where
T: AnyBitPattern,
type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during is_valid_bit_pattern
. Read more
sourcefn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret bits
as &Self
.