From d04038ccd92bf1cc6ef9cddc99cb4692f42fc4ac Mon Sep 17 00:00:00 2001 From: Hatter Jiang Date: Mon, 24 Mar 2025 23:21:47 +0800 Subject: [PATCH] feat: v1.11.3 --- src/cmd_signjwt.rs | 6 +++++- src/cmd_signjwtse.rs | 7 ++++++- src/cmd_signjwtsoft.rs | 2 ++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/cmd_signjwt.rs b/src/cmd_signjwt.rs index ad85cd1..90ee9d8 100644 --- a/src/cmd_signjwt.rs +++ b/src/cmd_signjwt.rs @@ -51,7 +51,11 @@ impl Command for CommandImpl { let token_string = sign_jwt(&mut yk, slot_id, &pin_opt, header, &payload, &jwt_claims)?; debugging!("Singed JWT: {}", token_string); - if json_output { json.insert("token", token_string.clone()); } + if json_output { + json.insert("token", token_string.clone()); + } else { + success!("Singed JWT: {}", token_string); + } if json_output { println!("{}", serde_json::to_string_pretty(&json).unwrap()); diff --git a/src/cmd_signjwtse.rs b/src/cmd_signjwtse.rs index 3eed7a2..1d9f27c 100644 --- a/src/cmd_signjwtse.rs +++ b/src/cmd_signjwtse.rs @@ -11,6 +11,7 @@ use std::collections::BTreeMap; use crate::cmd_signjwt::{build_jwt_parts, merge_header_claims, merge_payload_claims}; use crate::ecdsautil::parse_ecdsa_to_rs; use crate::{hmacutil, util}; +use crate::keyutil::{parse_key_uri, KeyUri}; const SEPARATOR: &str = "."; @@ -45,14 +46,18 @@ impl Command for CommandImpl { "Private key PKCS#8 DER base64 encoded or PEM" ); let private_key = hmacutil::try_hmac_decrypt_to_string(private_key)?; + let KeyUri::SecureEnclaveKey(se_key_uri) = parse_key_uri(&private_key)?; + debugging!("Secure enclave key URI: {:?}", se_key_uri); let (header, payload, jwt_claims) = build_jwt_parts(sub_arg_matches)?; - let token_string = sign_jwt(&private_key, header, &payload, &jwt_claims)?; + let token_string = sign_jwt(&se_key_uri.private_key, header, &payload, &jwt_claims)?; debugging!("Singed JWT: {}", token_string); if json_output { json.insert("token", token_string.clone()); + } else { + success!("Singed JWT: {}", token_string); } if json_output { diff --git a/src/cmd_signjwtsoft.rs b/src/cmd_signjwtsoft.rs index 3afdf4c..e913332 100644 --- a/src/cmd_signjwtsoft.rs +++ b/src/cmd_signjwtsoft.rs @@ -50,6 +50,8 @@ impl Command for CommandImpl { debugging!("Singed JWT: {}", token_string); if json_output { json.insert("token", token_string.clone()); + } else { + success!("Singed JWT: {}", token_string); } if json_output {