Enum jwtk::SomePublicKey
source · #[non_exhaustive]pub enum SomePublicKey {
Ed25519(Ed25519PublicKey),
Ecdsa(EcdsaPublicKey),
Rsa(RsaPublicKey),
}
Expand description
An RSA, EC or Ed25519 public.
Use this if you just want to load SOME public key from an external pem file or JWK.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Implementations§
source§impl SomePublicKey
impl SomePublicKey
sourcepub fn from_pem(pem: &[u8]) -> Result<Self>
pub fn from_pem(pem: &[u8]) -> Result<Self>
Read an RSA/EC/Ed25519 public key from PEM.
For an EC/Ed25519 public key, algorithm is deduced from the curve, e.g. P-256 -> ES256.
For an RSA public key, signatures generated by any RSA algorithms can be verified.
pub fn to_pem(&self) -> Result<String>
Trait Implementations§
source§impl Debug for SomePublicKey
impl Debug for SomePublicKey
source§impl From<EcdsaPublicKey> for SomePublicKey
impl From<EcdsaPublicKey> for SomePublicKey
source§fn from(k: EcdsaPublicKey) -> SomePublicKey
fn from(k: EcdsaPublicKey) -> SomePublicKey
Converts to this type from the input type.
source§impl From<Ed25519PublicKey> for SomePublicKey
impl From<Ed25519PublicKey> for SomePublicKey
source§fn from(k: Ed25519PublicKey) -> SomePublicKey
fn from(k: Ed25519PublicKey) -> SomePublicKey
Converts to this type from the input type.
source§impl From<RsaPublicKey> for SomePublicKey
impl From<RsaPublicKey> for SomePublicKey
source§fn from(k: RsaPublicKey) -> SomePublicKey
fn from(k: RsaPublicKey) -> SomePublicKey
Converts to this type from the input type.
source§impl PublicKeyToJwk for SomePublicKey
impl PublicKeyToJwk for SomePublicKey
fn public_key_to_jwk(&self) -> Result<Jwk>
Auto Trait Implementations§
impl RefUnwindSafe for SomePublicKey
impl Send for SomePublicKey
impl Sync for SomePublicKey
impl Unpin for SomePublicKey
impl UnwindSafe for SomePublicKey
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more