forked from
smokesignal.events/smokesignal
i18n+filtering fork - fluent-templates v2
1use std::env;
2
3use base64::{engine::general_purpose, Engine as _};
4use rand::RngCore;
5
6use smokesignal::jose::jwk;
7
8fn main() {
9 let mut rng = rand::thread_rng();
10
11 env::args().for_each(|arg| match arg.as_str() {
12 "key" => {
13 let mut key: [u8; 64] = [0; 64];
14 rng.fill_bytes(&mut key);
15 let encoded: String = general_purpose::STANDARD_NO_PAD.encode(key);
16 println!("{encoded}");
17 }
18 "jwk" => {
19 let ec_jwk = jwk::generate();
20 let serialized_value =
21 serde_json::to_string_pretty(&ec_jwk).expect("failed to serialize ec jwk");
22 println!("{serialized_value}");
23 }
24 _ => {}
25 });
26}