pub struct Testnet3;

Trait Implementations§

source§

impl Clone for Testnet3

source§

fn clone(&self) -> Testnet3

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Testnet3

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for Testnet3

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Environment for Testnet3

source§

const EDWARDS_A: Self::Field = Console::EDWARDS_A

The coefficient A of the twisted Edwards curve.

source§

const EDWARDS_D: Self::Field = Console::EDWARDS_D

The coefficient D of the twisted Edwards curve.

source§

const MONTGOMERY_A: Self::Field = Console::MONTGOMERY_A

The coefficient A of the Montgomery curve.

source§

const MONTGOMERY_B: Self::Field = Console::MONTGOMERY_B

The coefficient B of the Montgomery curve.

§

type Affine = <Console as Environment>::Affine

§

type BigInteger = <Console as Environment>::BigInteger

§

type Field = <Console as Environment>::Field

§

type PairingCurve = <Console as Environment>::PairingCurve

§

type Projective = <Console as Environment>::Projective

§

type Scalar = <Console as Environment>::Scalar

source§

const MAX_STRING_BYTES: u32 = 255u32

The maximum number of bytes allowed in a string.
source§

fn halt<S, T>(message: S) -> T
where S: Into<String>,

Halts the program from further synthesis, evaluation, and execution in the current environment.
source§

impl Hash for Testnet3

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Network for Testnet3

§

type BlockHash = AleoID<Field<Testnet3>, { hrp2!("ab") }>

The block hash type.

§

type RatificationID = AleoID<Field<Testnet3>, { hrp2!("ar") }>

The ratification ID type.

§

type StateRoot = AleoID<Field<Testnet3>, { hrp2!("sr") }>

The state root type.

§

type TransactionID = AleoID<Field<Testnet3>, { hrp2!(TRANSACTION_PREFIX) }>

The transaction ID type.

§

type TransitionID = AleoID<Field<Testnet3>, { hrp2!("au") }>

The transition ID type.

source§

const EDITION: u16 = 0u16

The network edition.

source§

const ID: u16 = 3u16

The network ID.

source§

const INCLUSION_FUNCTION_NAME: &'static str = snarkvm_parameters::testnet3::TESTNET3_INCLUSION_FUNCTION_NAME

The function name for the inclusion circuit.

source§

const NAME: &'static str = "Aleo Testnet 3"

The network name.

source§

fn genesis_bytes() -> &'static [u8]

Returns the genesis block bytes.

source§

fn get_credits_proving_key( function_name: String ) -> Result<&'static Arc<CircuitProvingKey<<Self as Environment>::PairingCurve, VarunaHidingMode>>>

Returns the proving key for the given function name in credits.aleo.

source§

fn get_credits_verifying_key( function_name: String ) -> Result<&'static Arc<CircuitVerifyingKey<<Self as Environment>::PairingCurve>>>

Returns the verifying key for the given function name in credits.aleo.

source§

fn inclusion_proving_key( ) -> &'static Arc<CircuitProvingKey<<Self as Environment>::PairingCurve, VarunaHidingMode>>

Returns the proving key for the inclusion circuit.

source§

fn inclusion_verifying_key( ) -> &'static Arc<CircuitVerifyingKey<<Self as Environment>::PairingCurve>>

Returns the verifying key for the inclusion circuit.

source§

fn g_powers() -> &'static Vec<Group<Self>>

Returns the powers of G.

source§

fn g_scalar_multiply(scalar: &Scalar<Self>) -> Group<Self>

Returns the scalar multiplication on the generator G.

source§

fn varuna_universal_prover() -> &'static UniversalProver<Self::PairingCurve>

Returns the Varuna universal prover.

source§

fn varuna_universal_verifier() -> &'static UniversalVerifier<Self::PairingCurve>

Returns the Varuna universal verifier.

source§

fn varuna_fs_parameters() -> &'static FiatShamirParameters<Self>

Returns the sponge parameters used for the sponge in the Varuna SNARK.

source§

fn encryption_domain() -> Field<Self>

Returns the encryption domain as a constant field element.

source§

fn graph_key_domain() -> Field<Self>

Returns the graph key domain as a constant field element.

source§

fn serial_number_domain() -> Field<Self>

Returns the serial number domain as a constant field element.

source§

fn commit_bhp256( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Field<Self>>

Returns a BHP commitment with an input hasher of 256-bits and randomizer.

source§

fn commit_bhp512( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Field<Self>>

Returns a BHP commitment with an input hasher of 512-bits and randomizer.

source§

fn commit_bhp768( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Field<Self>>

Returns a BHP commitment with an input hasher of 768-bits and randomizer.

source§

fn commit_bhp1024( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Field<Self>>

Returns a BHP commitment with an input hasher of 1024-bits and randomizer.

source§

fn commit_ped64( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Field<Self>>

Returns a Pedersen commitment for the given (up to) 64-bit input and randomizer.

source§

fn commit_ped128( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Field<Self>>

Returns a Pedersen commitment for the given (up to) 128-bit input and randomizer.

source§

fn commit_to_group_bhp256( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Group<Self>>

Returns a BHP commitment with an input hasher of 256-bits and randomizer.

source§

fn commit_to_group_bhp512( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Group<Self>>

Returns a BHP commitment with an input hasher of 512-bits and randomizer.

source§

fn commit_to_group_bhp768( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Group<Self>>

Returns a BHP commitment with an input hasher of 768-bits and randomizer.

source§

fn commit_to_group_bhp1024( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Group<Self>>

Returns a BHP commitment with an input hasher of 1024-bits and randomizer.

source§

fn commit_to_group_ped64( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Group<Self>>

Returns a Pedersen commitment for the given (up to) 64-bit input and randomizer.

source§

fn commit_to_group_ped128( input: &[bool], randomizer: &Scalar<Self> ) -> Result<Group<Self>>

Returns a Pedersen commitment for the given (up to) 128-bit input and randomizer.

source§

fn hash_bhp256(input: &[bool]) -> Result<Field<Self>>

Returns the BHP hash with an input hasher of 256-bits.

source§

fn hash_bhp512(input: &[bool]) -> Result<Field<Self>>

Returns the BHP hash with an input hasher of 512-bits.

source§

fn hash_bhp768(input: &[bool]) -> Result<Field<Self>>

Returns the BHP hash with an input hasher of 768-bits.

source§

fn hash_bhp1024(input: &[bool]) -> Result<Field<Self>>

Returns the BHP hash with an input hasher of 1024-bits.

source§

fn hash_keccak256(input: &[bool]) -> Result<Vec<bool>>

Returns the Keccak hash with a 256-bit output.

source§

fn hash_keccak384(input: &[bool]) -> Result<Vec<bool>>

Returns the Keccak hash with a 384-bit output.

source§

fn hash_keccak512(input: &[bool]) -> Result<Vec<bool>>

Returns the Keccak hash with a 512-bit output.

source§

fn hash_ped64(input: &[bool]) -> Result<Field<Self>>

Returns the Pedersen hash for a given (up to) 64-bit input.

source§

fn hash_ped128(input: &[bool]) -> Result<Field<Self>>

Returns the Pedersen hash for a given (up to) 128-bit input.

source§

fn hash_psd2(input: &[Field<Self>]) -> Result<Field<Self>>

Returns the Poseidon hash with an input rate of 2.

source§

fn hash_psd4(input: &[Field<Self>]) -> Result<Field<Self>>

Returns the Poseidon hash with an input rate of 4.

source§

fn hash_psd8(input: &[Field<Self>]) -> Result<Field<Self>>

Returns the Poseidon hash with an input rate of 8.

source§

fn hash_sha3_256(input: &[bool]) -> Result<Vec<bool>>

Returns the SHA-3 hash with a 256-bit output.

source§

fn hash_sha3_384(input: &[bool]) -> Result<Vec<bool>>

Returns the SHA-3 hash with a 384-bit output.

source§

fn hash_sha3_512(input: &[bool]) -> Result<Vec<bool>>

Returns the SHA-3 hash with a 512-bit output.

source§

fn hash_many_psd2(input: &[Field<Self>], num_outputs: u16) -> Vec<Field<Self>>

Returns the extended Poseidon hash with an input rate of 2.

source§

fn hash_many_psd4(input: &[Field<Self>], num_outputs: u16) -> Vec<Field<Self>>

Returns the extended Poseidon hash with an input rate of 4.

source§

fn hash_many_psd8(input: &[Field<Self>], num_outputs: u16) -> Vec<Field<Self>>

Returns the extended Poseidon hash with an input rate of 8.

source§

fn hash_to_group_bhp256(input: &[bool]) -> Result<Group<Self>>

Returns the BHP hash with an input hasher of 256-bits.

source§

fn hash_to_group_bhp512(input: &[bool]) -> Result<Group<Self>>

Returns the BHP hash with an input hasher of 512-bits.

source§

fn hash_to_group_bhp768(input: &[bool]) -> Result<Group<Self>>

Returns the BHP hash with an input hasher of 768-bits.

source§

fn hash_to_group_bhp1024(input: &[bool]) -> Result<Group<Self>>

Returns the BHP hash with an input hasher of 1024-bits.

source§

fn hash_to_group_ped64(input: &[bool]) -> Result<Group<Self>>

Returns the Pedersen hash for a given (up to) 64-bit input.

source§

fn hash_to_group_ped128(input: &[bool]) -> Result<Group<Self>>

Returns the Pedersen hash for a given (up to) 128-bit input.

source§

fn hash_to_group_psd2(input: &[Field<Self>]) -> Result<Group<Self>>

Returns the Poseidon hash with an input rate of 2 on the affine curve.

source§

fn hash_to_group_psd4(input: &[Field<Self>]) -> Result<Group<Self>>

Returns the Poseidon hash with an input rate of 4 on the affine curve.

source§

fn hash_to_group_psd8(input: &[Field<Self>]) -> Result<Group<Self>>

Returns the Poseidon hash with an input rate of 8 on the affine curve.

source§

fn hash_to_scalar_psd2(input: &[Field<Self>]) -> Result<Scalar<Self>>

Returns the Poseidon hash with an input rate of 2 on the scalar field.

source§

fn hash_to_scalar_psd4(input: &[Field<Self>]) -> Result<Scalar<Self>>

Returns the Poseidon hash with an input rate of 4 on the scalar field.

source§

fn hash_to_scalar_psd8(input: &[Field<Self>]) -> Result<Scalar<Self>>

Returns the Poseidon hash with an input rate of 8 on the scalar field.

source§

fn merkle_tree_bhp<const DEPTH: u8>( leaves: &[Vec<bool>] ) -> Result<BHPMerkleTree<Self, DEPTH>>

Returns a Merkle tree with a BHP leaf hasher of 1024-bits and a BHP path hasher of 512-bits.

source§

fn merkle_tree_psd<const DEPTH: u8>( leaves: &[Vec<Field<Self>>] ) -> Result<PoseidonMerkleTree<Self, DEPTH>>

Returns a Merkle tree with a Poseidon leaf hasher with input rate of 4 and a Poseidon path hasher with input rate of 2.

source§

fn verify_merkle_path_bhp<const DEPTH: u8>( path: &MerklePath<Self, DEPTH>, root: &Field<Self>, leaf: &Vec<bool> ) -> bool

Returns true if the given Merkle path is valid for the given root and leaf.

source§

fn verify_merkle_path_psd<const DEPTH: u8>( path: &MerklePath<Self, DEPTH>, root: &Field<Self>, leaf: &Vec<Field<Self>> ) -> bool

Returns true if the given Merkle path is valid for the given root and leaf.

source§

const GENESIS_TIMESTAMP: i64 = 1_696_118_400i64

The fixed timestamp of the genesis block.
source§

const GENESIS_COINBASE_TARGET: u64 = 4_294_967_295u64

The genesis block coinbase target.
source§

const GENESIS_PROOF_TARGET: u64 = 33_554_432u64

The genesis block proof target.
source§

const STARTING_SUPPLY: u64 = 1_500_000_000_000_000u64

The starting supply of Aleo credits.
source§

const DEPLOYMENT_FEE_MULTIPLIER: u64 = 1_000u64

The cost in microcredits per byte for the deployment transaction.
source§

const MAX_FEE: u64 = 1_000_000_000_000_000u64

The maximum number of microcredits that can be spent as a fee.
source§

const ANCHOR_HEIGHT: u32 = _

The anchor height, defined as the expected number of blocks to reach the coinbase target.
source§

const ANCHOR_TIME: u16 = 25u16

The anchor time in seconds.
source§

const BLOCK_TIME: u16 = 10u16

The expected time per block in seconds.
source§

const COINBASE_PUZZLE_DEGREE: u32 = 8_191u32

The coinbase puzzle degree.
source§

const MAX_SOLUTIONS: usize = 256usize

The maximum number of solutions that can be included per block.
source§

const NUM_BLOCKS_PER_EPOCH: u32 = _

The number of blocks per epoch.
source§

const MAX_DATA_ENTRIES: usize = 32usize

The maximum number of entries in data.
source§

const MAX_DATA_DEPTH: usize = 32usize

The maximum recursive depth of an entry. Note: This value must be strictly less than u8::MAX.
source§

const MAX_DATA_SIZE_IN_FIELDS: u32 = _

The maximum number of fields in data (must not exceed u16::MAX).
source§

const MIN_STRUCT_ENTRIES: usize = 1usize

The minimum number of entries in a struct.
source§

const MAX_STRUCT_ENTRIES: usize = Self::MAX_DATA_ENTRIES

The maximum number of entries in a struct.
source§

const MIN_ARRAY_ELEMENTS: usize = 1usize

The minimum number of elements in an array.
source§

const MAX_ARRAY_ELEMENTS: usize = Self::MAX_DATA_ENTRIES

The maximum number of elements in an array.
source§

const MIN_RECORD_ENTRIES: usize = 1usize

The minimum number of entries in a record.
source§

const MAX_RECORD_ENTRIES: usize = _

The maximum number of entries in a record.
source§

const MAX_MAPPINGS: usize = 31usize

The maximum number of mappings in a program.
source§

const MAX_FUNCTIONS: usize = 31usize

The maximum number of functions in a program.
source§

const MAX_OPERANDS: usize = Self::MAX_INPUTS

The maximum number of operands in an instruction.
source§

const MAX_INSTRUCTIONS: usize = 65_535usize

The maximum number of instructions in a closure or function.
source§

const MAX_COMMANDS: usize = 65_535usize

The maximum number of commands in finalize.
source§

const MAX_WRITES: u16 = 16u16

The maximum number of write commands in finalize.
source§

const MAX_INPUTS: usize = 16usize

The maximum number of inputs per transition.
source§

const MAX_OUTPUTS: usize = 16usize

The maximum number of outputs per transition.
source§

impl PartialEq for Testnet3

source§

fn eq(&self, other: &Testnet3) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for Testnet3

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for Testnet3

source§

impl Eq for Testnet3

source§

impl StructuralPartialEq for Testnet3

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<'de, T> DeserializeExt<'de> for T

source§

fn take_from_value<D>( value: &mut Value, field: &str ) -> Result<T, <D as Deserializer<'de>>::Error>
where D: Deserializer<'de>,

§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,