pub struct ChallengeParams {
pub difficulty: u32,
pub val: Integer,
}
Expand description
The parameters for a proof-of-work challenge.
This contains most of the logic, however KctfPow
and Challenge
should be used instead as they provide a nicer API.
If you want to serialize it to a string, use the Display
implementation.
The difficulty of the challenge.
The starting value of the challenge.
Decodes a challenge from a string and returns it.
For optimization purposes, the difficulty of the challenge must be able to fit in a u32
.
This shouldn’t be an issue, since difficulties that can’t fit into a u32
will probably take too long anyways.
Generates a random challenge given a difficulty.
Solves a challenge given a proof-of-work system and returns the solution.
Checks a solution to see if it satisfies the challenge under a given proof-of-work system.
Performs copy-assignment from source
. Read more
Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
fn clamp(self, min: Self, max: Self) -> Self
Restrict a value to a certain interval. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl<T> Any for T where
T: 'static + ?Sized,
pub fn az<Dst>(self) -> Dst where
T: Cast<Dst>,
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
impl<T, U> Into<U> for T where
U: From<T>,
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
Converts the given value to a String
. Read more
The type returned in the event of a conversion error.
The type returned in the event of a conversion error.
impl<V, T> VZip<V> for T where
V: MultiLane<T>,