[−][src]Enum sequoia_openpgp::crypto::mpi::PublicKey
Holds a public key.
Provides a typed and structured way of storing multiple MPIs (and the occasional elliptic curve) in packets.
Variants
RSA public key.
NIST DSA public key.
Fields of DSA
ElGamal public key.
DJBs "Twisted" Edwards curve DSA public key.
NISTs Elliptic curve DSA public key.
Elliptic curve ElGamal public key.
Fields of ECDH
curve: Curve
Curve we're using.
q: MPI
Public point.
hash: HashAlgorithm
Hash algorithm used for key derivation.
sym: SymmetricAlgorithm
Algorithm used w/the derived key.
Unknown number of MPIs for an unknown algorithm.
Fields of Unknown
Implementations
impl PublicKey
[src]
impl PublicKey
[src]
pub fn bits(&self) -> Option<usize>
[src]
Returns the length of the public key in bits.
For finite field crypto this returns the size of the field we
operate in, for ECC it returns Curve::bits()
.
Note: This information is useless and should not be used to gauge the security of a particular key. This function exists only because some legacy PGP application like HKP need it.
Returns None
for unknown keys and curves.
pub fn algo(&self) -> Option<PublicKeyAlgorithm>
[src]
Returns, if known, the public-key algorithm for this public key.
impl PublicKey
[src]
pub fn parse<T: AsRef<[u8]>>(algo: PublicKeyAlgorithm, buf: T) -> Result<Self>
[src]
Parses a set of OpenPGP MPIs representing a public key.
See Section 3.2 of RFC 4880 for details.
Trait Implementations
impl Clone for PublicKey
[src]
impl Debug for PublicKey
[src]
impl Eq for PublicKey
[src]
impl Hash for PublicKey
[src]
impl Hash for PublicKey
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Marshal for PublicKey
[src]
fn serialize(&self, w: &mut dyn Write) -> Result<()>
[src]
fn export(&self, o: &mut dyn Write) -> Result<()>
[src]
impl MarshalInto for PublicKey
[src]
fn serialized_len(&self) -> usize
[src]
fn serialize_into(&self, buf: &mut [u8]) -> Result<usize>
[src]
fn to_vec(&self) -> Result<Vec<u8>>
[src]
fn export_into(&self, buf: &mut [u8]) -> Result<usize>
[src]
fn export_to_vec(&self) -> Result<Vec<u8>>
[src]
impl Ord for PublicKey
[src]
fn cmp(&self, other: &PublicKey) -> Ordering
[src]
#[must_use]fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn clamp(self, min: Self, max: Self) -> Self
[src]
impl PartialEq<PublicKey> for PublicKey
[src]
impl PartialOrd<PublicKey> for PublicKey
[src]
fn partial_cmp(&self, other: &PublicKey) -> Option<Ordering>
[src]
fn lt(&self, other: &PublicKey) -> bool
[src]
fn le(&self, other: &PublicKey) -> bool
[src]
fn gt(&self, other: &PublicKey) -> bool
[src]
fn ge(&self, other: &PublicKey) -> bool
[src]
impl StructuralEq for PublicKey
[src]
impl StructuralPartialEq for PublicKey
[src]
Auto Trait Implementations
impl RefUnwindSafe for PublicKey
impl Send for PublicKey
impl Sync for PublicKey
impl Unpin for PublicKey
impl UnwindSafe for PublicKey
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,