diff options
Diffstat (limited to 'src/services/secrets.rs')
| -rw-r--r-- | src/services/secrets.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/services/secrets.rs b/src/services/secrets.rs index 9f8af54..241b2c5 100644 --- a/src/services/secrets.rs +++ b/src/services/secrets.rs @@ -1,6 +1,8 @@ use std::env; use exun::*; +use hmac::{Hmac, Mac}; +use sha2::Sha256; /// This is a secret salt, needed for creating passwords. It's used as an extra /// layer of security, on top of the salt that's already used. @@ -14,3 +16,9 @@ pub fn pepper() -> Result<Box<[u8]>, RawUnexpected> { pub fn database_url() -> Result<String, RawUnexpected> { env::var("DATABASE_URL").unexpect() } + +pub fn signing_key() -> Result<Hmac<Sha256>, RawUnexpected> { + let key = env::var("PRIVATE_KEY")?; + let key = Hmac::<Sha256>::new_from_slice(key.as_bytes())?; + Ok(key) +} |
