From df891d92f1df2ce35878e17a34f717954e2a4784 Mon Sep 17 00:00:00 2001 From: yechuan Date: Thu, 17 Aug 2023 13:42:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8E=B7=E5=8F=96=E5=AE=9E?= =?UTF-8?q?=E7=8E=B0=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../work/xuye/common/utils/signature/RSASignatureService.java | 10 ++++++++++ .../work/xuye/common/utils/signature/SignatureFactory.java | 3 +-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/common/src/main/java/work/xuye/common/utils/signature/RSASignatureService.java b/common/src/main/java/work/xuye/common/utils/signature/RSASignatureService.java index 661bfd0..dc26589 100644 --- a/common/src/main/java/work/xuye/common/utils/signature/RSASignatureService.java +++ b/common/src/main/java/work/xuye/common/utils/signature/RSASignatureService.java @@ -22,6 +22,16 @@ import java.security.spec.X509EncodedKeySpec; class RSASignatureService extends AbstractSignatureService { + private RSASignatureService() { + + } + + public static AbstractSignatureService getInstance(SignatureConfig signatureConfig) throws GeneralSecurityException { + RSASignatureService result = new RSASignatureService(); + result.init(signatureConfig); + return result; + } + @Override public String signatureByPriKey(String content) throws GeneralSecurityException { if (signatureContext == null) { diff --git a/common/src/main/java/work/xuye/common/utils/signature/SignatureFactory.java b/common/src/main/java/work/xuye/common/utils/signature/SignatureFactory.java index 9c8100b..8f25643 100644 --- a/common/src/main/java/work/xuye/common/utils/signature/SignatureFactory.java +++ b/common/src/main/java/work/xuye/common/utils/signature/SignatureFactory.java @@ -20,13 +20,12 @@ public class SignatureFactory { switch (SignatureEnumGroup.KeyAlgorithm.valueOf(signatureConfig.getKeyAlgorithm())) { case RSA: - result = new RSASignatureService(); + result = RSASignatureService.getInstance(signatureConfig); break; } if (result == null) { throw new RuntimeException(String.format("不支持的签名方式,signatureConfig:%s", signatureConfig)); } - result.init(signatureConfig); return result; }