snarkvm_console_network

Struct TestnetV0

Source
pub struct TestnetV0;

Trait Implementations§

Source§

impl Clone for TestnetV0

Source§

fn clone(&self) -> TestnetV0

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 TestnetV0

Source§

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

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

impl<'de> Deserialize<'de> for TestnetV0

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 TestnetV0

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.

Source§

type Affine = <Console as Environment>::Affine

Source§

type BigInteger = <Console as Environment>::BigInteger

Source§

type Field = <Console as Environment>::Field

Source§

type PairingCurve = <Console as Environment>::PairingCurve

Source§

type Projective = <Console as Environment>::Projective

Source§

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 TestnetV0

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 TestnetV0

Source§

const CONSENSUS_V2_HEIGHT: u32 = 2_950_000u32

The block height from which consensus V2 rules apply.

Source§

const EDITION: u16 = 0u16

The network edition.

Source§

const GENESIS_COINBASE_TARGET: u64 = 536_870_911u64

The genesis block coinbase target.

Source§

const GENESIS_PROOF_TARGET: u64 = 134_217_728u64

The genesis block proof target.

Source§

const GENESIS_TIMESTAMP: i64 = 1_715_776_496i64

The fixed timestamp of the genesis block.

Source§

const ID: u16 = 1u16

The network ID.

Source§

const INCLUSION_FUNCTION_NAME: &'static str = MainnetV0::INCLUSION_FUNCTION_NAME

The function name for the inclusion circuit.

Source§

const MAX_CERTIFICATES: u16 = 100u16

The maximum number of certificates in a batch.

Source§

const NAME: &'static str = "Aleo Testnet (v0)"

The network name.

Source§

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

The block hash type.

Source§

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

The ratification ID type.

Source§

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

The state root type.

Source§

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

The transaction ID type.

Source§

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

The transition ID type.

Source§

type TransmissionChecksum = u128

The transmission checksum type.

Source§

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

Returns the genesis block bytes.

Source§

fn restrictions_list_as_str() -> &'static str

Returns the restrictions list as a JSON-compatible string.

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 MAX_SOLUTIONS_AS_POWER_OF_TWO: u8 = 2u8

The maximum number of solutions that can be included per block as a power of 2.
Source§

const MAX_SOLUTIONS: usize = _

The maximum number of solutions that can be included per block.
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 EXECUTION_STORAGE_FEE_SCALING_FACTOR: u64 = 5_000u64

The constant that divides the storage polynomial.
Source§

const EXECUTION_STORAGE_PENALTY_THRESHOLD: u64 = 5_000u64

The maximum size execution transactions can be before a quadratic storage penalty applies.
Source§

const SYNTHESIS_FEE_MULTIPLIER: u64 = 25u64

The cost in microcredits per constraint for the deployment transaction.
Source§

const MAX_DEPLOYMENT_VARIABLES: u64 = 1_048_576u64

The maximum number of variables in a deployment.
Source§

const MAX_DEPLOYMENT_CONSTRAINTS: u64 = 1_048_576u64

The maximum number of constraints in a deployment.
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 TRANSACTION_SPEND_LIMIT: u64 = 100_000_000u64

The maximum number of microcredits that can be spent on a finalize block.
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 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_PROGRAM_SIZE: usize = 100_000usize

The maximum program size by number of characters.
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_STRUCTS: usize = _

The maximum number of structs in a program.
Source§

const MAX_RECORDS: usize = _

The maximum number of records in a program.
Source§

const MAX_CLOSURES: usize = _

The maximum number of closures 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§

const MAX_PROGRAM_DEPTH: usize = 64usize

The maximum program depth.
Source§

const MAX_IMPORTS: usize = 64usize

The maximum number of imports.
Source§

const MAX_TRANSACTION_SIZE: usize = 128_000usize

The maximum number of bytes in a transaction.
Source§

impl PartialEq for TestnetV0

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for TestnetV0

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 TestnetV0

Source§

impl Eq for TestnetV0

Source§

impl StructuralPartialEq for TestnetV0

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<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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>,

Source§

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

Source§

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

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

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

Source§

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

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

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

Source§

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

Checks if this value is equivalent to the given key. Read more
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.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize = _

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

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

Initializes a with the given initializer. Read more
Source§

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

Dereferences the given pointer. Read more
Source§

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

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

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

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

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>,

Source§

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>,

Source§

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.
Source§

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

Source§

fn vzip(self) -> V

Source§

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