From 0ac93002620b35eb5008b55e524f2e629e810dd3 Mon Sep 17 00:00:00 2001 From: Hatter Jiang Date: Thu, 1 May 2025 00:27:27 +0800 Subject: [PATCH] feat: fix external_sign rsa1024 --- src/cmd_external_sign.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/cmd_external_sign.rs b/src/cmd_external_sign.rs index 9685f6c..bb020cc 100644 --- a/src/cmd_external_sign.rs +++ b/src/cmd_external_sign.rs @@ -76,13 +76,16 @@ fn sign(sub_arg_matches: &ArgMatches) -> XResult> { _ => return simple_error!("Invalid alg: {}", alg), }; + if key.algorithm == AlgorithmId::Rsa1024 { + return simple_error!("Invalid algorithm: RSA1024"); + } + let is_p256_mismatch = key.algorithm == AlgorithmId::EccP256 && jwt_algorithm != AlgorithmType::Es256; let is_p384_mismatch = key.algorithm == AlgorithmId::EccP384 && jwt_algorithm != AlgorithmType::Es384; - let is_rsa = - key.algorithm == AlgorithmId::Rsa1024 || key.algorithm == AlgorithmId::Rsa2048; - let is_rsa_mismatch = is_rsa && jwt_algorithm != AlgorithmType::Rs256; + let is_rsa_mismatch = + key.algorithm == AlgorithmId::Rsa2048 && jwt_algorithm != AlgorithmType::Rs256; if is_p256_mismatch || is_p384_mismatch || is_rsa_mismatch { return simple_error!("Invalid algorithm: {} vs {}", key.algorithm.to_str(), alg);