Struct ssh_key::MPInt [−][src]
pub struct MPInt { /* fields omitted */ }alloc only.Expand description
Multiple precision integer, a.k.a. “mpint”.
This type is used for representing the big integer components of DSA and RSA keys.
Described in RFC4251 § 5:
Represents multiple precision integers in two’s complement format, stored as a string, 8 bits per byte, MSB first. Negative numbers have the value 1 as the most significant bit of the first byte of the data partition. If the most significant bit would be set for a positive number, the number MUST be preceded by a zero byte. Unnecessary leading bytes with the value 0 or 255 MUST NOT be included. The value zero MUST be stored as a string with zero bytes of data.
By convention, a number that is used in modular computations in Z_n SHOULD be represented in the range 0 <= x < n.
Examples
| value (hex) | representation (hex) |
|---|---|
| 0 | 00 00 00 00 |
| 9a378f9b2e332a7 | 00 00 00 08 09 a3 78 f9 b2 e3 32 a7 |
| 80 | 00 00 00 02 00 80 |
| -1234 | 00 00 00 02 ed cc |
| -deadbeef | 00 00 00 05 ff 21 52 41 11 |
Implementations
Create a new multiple precision integer from the given big endian-encoded byte slice.
Trait Implementations
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
Auto Trait Implementations
impl RefUnwindSafe for MPInt
impl UnwindSafe for MPInt
Blanket Implementations
Mutably borrows from an owned value. Read more