Struct rsa::RsaPublicKey
source · pub struct RsaPublicKey { /* private fields */ }
Expand description
Represents the public part of an RSA key.
Implementations§
source§impl RsaPublicKey
impl RsaPublicKey
sourcepub const MIN_PUB_EXPONENT: u64 = 2u64
pub const MIN_PUB_EXPONENT: u64 = 2u64
Minimum value of the public exponent e
.
sourcepub const MAX_PUB_EXPONENT: u64 = 8_589_934_591u64
pub const MAX_PUB_EXPONENT: u64 = 8_589_934_591u64
Maximum value of the public exponent e
.
sourcepub fn new(n: BigUint, e: BigUint) -> Result<Self>
pub fn new(n: BigUint, e: BigUint) -> Result<Self>
Create a new public key from its components.
This function accepts public keys with a modulus size up to 4096-bits,
i.e. RsaPublicKey::MAX_SIZE
.
sourcepub fn new_with_max_size(n: BigUint, e: BigUint, max_size: usize) -> Result<Self>
pub fn new_with_max_size(n: BigUint, e: BigUint, max_size: usize) -> Result<Self>
Create a new public key from its components.
sourcepub fn new_unchecked(n: BigUint, e: BigUint) -> Self
pub fn new_unchecked(n: BigUint, e: BigUint) -> Self
Create a new public key, bypassing checks around the modulus and public exponent size.
This method is not recommended, and only intended for unusual use cases.
Most applications should use RsaPublicKey::new
or
RsaPublicKey::new_with_max_size
instead.
Trait Implementations§
source§impl<D> AsRef<RsaPublicKey> for VerifyingKey<D>where
D: Digest,
impl<D> AsRef<RsaPublicKey> for VerifyingKey<D>where
D: Digest,
source§fn as_ref(&self) -> &RsaPublicKey
fn as_ref(&self) -> &RsaPublicKey
Converts this type into a shared reference of the (usually inferred) input type.
source§impl<D> AsRef<RsaPublicKey> for VerifyingKey<D>where
D: Digest,
impl<D> AsRef<RsaPublicKey> for VerifyingKey<D>where
D: Digest,
source§fn as_ref(&self) -> &RsaPublicKey
fn as_ref(&self) -> &RsaPublicKey
Converts this type into a shared reference of the (usually inferred) input type.
source§impl Clone for RsaPublicKey
impl Clone for RsaPublicKey
source§fn clone(&self) -> RsaPublicKey
fn clone(&self) -> RsaPublicKey
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for RsaPublicKey
impl Debug for RsaPublicKey
source§impl DecodePublicKey for RsaPublicKey
impl DecodePublicKey for RsaPublicKey
§fn from_public_key_der(bytes: &[u8]) -> Result<Self, Error>
fn from_public_key_der(bytes: &[u8]) -> Result<Self, Error>
Deserialize object from ASN.1 DER-encoded [
SubjectPublicKeyInfo
]
(binary format).§fn from_public_key_pem(s: &str) -> Result<Self, Error>
fn from_public_key_pem(s: &str) -> Result<Self, Error>
Deserialize PEM-encoded [
SubjectPublicKeyInfo
]. Read more§fn read_public_key_der_file(path: impl AsRef<Path>) -> Result<Self, Error>
fn read_public_key_der_file(path: impl AsRef<Path>) -> Result<Self, Error>
Load public key object from an ASN.1 DER-encoded file on the local
filesystem (binary format).
§fn read_public_key_pem_file(path: impl AsRef<Path>) -> Result<Self, Error>
fn read_public_key_pem_file(path: impl AsRef<Path>) -> Result<Self, Error>
Load public key object from a PEM-encoded file on the local filesystem.
source§impl<'de> Deserialize<'de> for RsaPublicKey
impl<'de> Deserialize<'de> for RsaPublicKey
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
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 EncodePublicKey for RsaPublicKey
impl EncodePublicKey for RsaPublicKey
source§fn to_public_key_der(&self) -> Result<Document>
fn to_public_key_der(&self) -> Result<Document>
Serialize a [
Document
] containing a SPKI-encoded public key.§fn to_public_key_pem(&self, line_ending: LineEnding) -> Result<String, Error>
fn to_public_key_pem(&self, line_ending: LineEnding) -> Result<String, Error>
Serialize this public key as PEM-encoded SPKI with the given [
LineEnding
].source§impl From<&RsaPrivateKey> for RsaPublicKey
impl From<&RsaPrivateKey> for RsaPublicKey
source§fn from(private_key: &RsaPrivateKey) -> Self
fn from(private_key: &RsaPrivateKey) -> Self
Converts to this type from the input type.
source§impl From<RsaPrivateKey> for RsaPublicKey
impl From<RsaPrivateKey> for RsaPublicKey
source§fn from(private_key: RsaPrivateKey) -> Self
fn from(private_key: RsaPrivateKey) -> Self
Converts to this type from the input type.
source§impl<D> From<RsaPublicKey> for VerifyingKey<D>where
D: Digest,
impl<D> From<RsaPublicKey> for VerifyingKey<D>where
D: Digest,
source§fn from(key: RsaPublicKey) -> Self
fn from(key: RsaPublicKey) -> Self
Converts to this type from the input type.
source§impl<D> From<RsaPublicKey> for VerifyingKey<D>where
D: Digest,
impl<D> From<RsaPublicKey> for VerifyingKey<D>where
D: Digest,
source§fn from(key: RsaPublicKey) -> Self
fn from(key: RsaPublicKey) -> Self
Converts to this type from the input type.
source§impl<D> From<VerifyingKey<D>> for RsaPublicKeywhere
D: Digest,
impl<D> From<VerifyingKey<D>> for RsaPublicKeywhere
D: Digest,
source§fn from(key: VerifyingKey<D>) -> Self
fn from(key: VerifyingKey<D>) -> Self
Converts to this type from the input type.
source§impl<D> From<VerifyingKey<D>> for RsaPublicKeywhere
D: Digest,
impl<D> From<VerifyingKey<D>> for RsaPublicKeywhere
D: Digest,
source§fn from(key: VerifyingKey<D>) -> Self
fn from(key: VerifyingKey<D>) -> Self
Converts to this type from the input type.
source§impl Hash for RsaPublicKey
impl Hash for RsaPublicKey
source§impl PartialEq<RsaPublicKey> for RsaPublicKey
impl PartialEq<RsaPublicKey> for RsaPublicKey
source§fn eq(&self, other: &RsaPublicKey) -> bool
fn eq(&self, other: &RsaPublicKey) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PublicKey for RsaPublicKey
impl PublicKey for RsaPublicKey
source§impl PublicKeyParts for RsaPublicKey
impl PublicKeyParts for RsaPublicKey
source§impl Serialize for RsaPublicKey
impl Serialize for RsaPublicKey
source§impl TryFrom<SubjectPublicKeyInfo<'_>> for RsaPublicKey
impl TryFrom<SubjectPublicKeyInfo<'_>> for RsaPublicKey
impl Eq for RsaPublicKey
impl StructuralEq for RsaPublicKey
impl StructuralPartialEq for RsaPublicKey
Auto Trait Implementations§
impl RefUnwindSafe for RsaPublicKey
impl Send for RsaPublicKey
impl Sync for RsaPublicKey
impl Unpin for RsaPublicKey
impl UnwindSafe for RsaPublicKey
Blanket Implementations§
source§impl<T> DecodeRsaPublicKey for Twhere
T: DecodePublicKey,
impl<T> DecodeRsaPublicKey for Twhere
T: DecodePublicKey,
source§fn from_pkcs1_der(public_key: &[u8]) -> Result<T, Error>
fn from_pkcs1_der(public_key: &[u8]) -> Result<T, Error>
Deserialize object from ASN.1 DER-encoded
RsaPublicKey
(binary format).source§fn from_pkcs1_pem(s: &str) -> Result<Self, Error>
fn from_pkcs1_pem(s: &str) -> Result<Self, Error>
Deserialize PEM-encoded
RsaPublicKey
. Read moresource§fn read_pkcs1_der_file(path: impl AsRef<Path>) -> Result<Self, Error>
fn read_pkcs1_der_file(path: impl AsRef<Path>) -> Result<Self, Error>
Load
RsaPublicKey
from an ASN.1 DER-encoded file on the local
filesystem (binary format).source§fn read_pkcs1_pem_file(path: impl AsRef<Path>) -> Result<Self, Error>
fn read_pkcs1_pem_file(path: impl AsRef<Path>) -> Result<Self, Error>
Load
RsaPublicKey
from a PEM-encoded file on the local filesystem.source§impl<T> EncodeRsaPublicKey for Twhere
T: EncodePublicKey,
impl<T> EncodeRsaPublicKey for Twhere
T: EncodePublicKey,
source§fn to_pkcs1_der(&self) -> Result<Document, Error>
fn to_pkcs1_der(&self) -> Result<Document, Error>
Serialize a [
Document
] containing a PKCS#1-encoded public key.source§fn to_pkcs1_pem(&self, line_ending: LineEnding) -> Result<String, Error>
fn to_pkcs1_pem(&self, line_ending: LineEnding) -> Result<String, Error>
Serialize this public key as PEM-encoded PKCS#1 with the given line ending.