Struct jsonwebtoken::EncodingKey
source · pub struct EncodingKey { /* private fields */ }
Expand description
A key to encode a JWT with. Can be a secret, a PEM-encoded key or a DER-encoded key. This key can be re-used so make sure you only initialize it once if you can for better performance.
Implementations§
source§impl EncodingKey
impl EncodingKey
sourcepub fn from_secret(secret: &[u8]) -> Self
pub fn from_secret(secret: &[u8]) -> Self
If you’re using a HMAC secret that is not base64, use that.
sourcepub fn from_base64_secret(secret: &str) -> Result<Self>
pub fn from_base64_secret(secret: &str) -> Result<Self>
If you have a base64 HMAC secret, use that.
sourcepub fn from_rsa_pem(key: &[u8]) -> Result<Self>
pub fn from_rsa_pem(key: &[u8]) -> Result<Self>
sourcepub fn from_ec_pem(key: &[u8]) -> Result<Self>
pub fn from_ec_pem(key: &[u8]) -> Result<Self>
If you are loading a ECDSA key from a .pem file
This errors if the key is not a valid private EC key
Only exists if the feature use_pem
is enabled.
§NOTE
The key should be in PKCS#8 form.
You can generate a key with the following:
openssl ecparam -genkey -noout -name prime256v1 \
| openssl pkcs8 -topk8 -nocrypt -out ec-private.pem
sourcepub fn from_ed_pem(key: &[u8]) -> Result<Self>
pub fn from_ed_pem(key: &[u8]) -> Result<Self>
If you are loading a EdDSA key from a .pem file
This errors if the key is not a valid private Ed key
Only exists if the feature use_pem
is enabled.
sourcepub fn from_rsa_der(der: &[u8]) -> Self
pub fn from_rsa_der(der: &[u8]) -> Self
If you know what you’re doing and have the DER-encoded key, for RSA only
sourcepub fn from_ec_der(der: &[u8]) -> Self
pub fn from_ec_der(der: &[u8]) -> Self
If you know what you’re doing and have the DER-encoded key, for ECDSA
sourcepub fn from_ed_der(der: &[u8]) -> Self
pub fn from_ed_der(der: &[u8]) -> Self
If you know what you’re doing and have the DER-encoded key, for EdDSA
Trait Implementations§
source§impl Clone for EncodingKey
impl Clone for EncodingKey
source§fn clone(&self) -> EncodingKey
fn clone(&self) -> EncodingKey
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for EncodingKey
impl RefUnwindSafe for EncodingKey
impl Send for EncodingKey
impl Sync for EncodingKey
impl Unpin for EncodingKey
impl UnwindSafe for EncodingKey
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)