From 43a2f43a9f4b85aa17c80a3d9a0d51be3150452e Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Fri, 24 Apr 2015 13:18:54 -0700 Subject: [PATCH] These exceptions are pretty unlikely. --- .../RSADigitalSignatureConfidentialKey.java | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/core/src/main/java/jenkins/security/RSADigitalSignatureConfidentialKey.java b/core/src/main/java/jenkins/security/RSADigitalSignatureConfidentialKey.java index 6d5a88f107..69b6f5d64e 100644 --- a/core/src/main/java/jenkins/security/RSADigitalSignatureConfidentialKey.java +++ b/core/src/main/java/jenkins/security/RSADigitalSignatureConfidentialKey.java @@ -1,8 +1,6 @@ package jenkins.security; -import hudson.remoting.Base64; - -import java.io.IOException; +import java.io.UnsupportedEncodingException; import java.security.GeneralSecurityException; import java.security.Signature; import java.security.interfaces.RSAPrivateKey; @@ -24,12 +22,18 @@ public class RSADigitalSignatureConfidentialKey extends RSAConfidentialKey { /** * Sign a message and base64 encode the signature. */ - public String sign(String msg) throws GeneralSecurityException, IOException { - RSAPrivateKey key = getPrivateKey(); - Signature sig = Signature.getInstance(SIGNING_ALGORITHM + "with" + key.getAlgorithm()); - sig.initSign(key); - sig.update(msg.getBytes("UTF8")); - return Base64.encode(sig.sign()); + public String sign(String msg) { + try { + RSAPrivateKey key = getPrivateKey(); + Signature sig = Signature.getInstance(SIGNING_ALGORITHM + "with" + key.getAlgorithm()); + sig.initSign(key); + sig.update(msg.getBytes("UTF-8")); + return hudson.remoting.Base64.encode(sig.sign()); + } catch (GeneralSecurityException e) { + throw new SecurityException(e); + } catch (UnsupportedEncodingException e) { + throw new AssertionError(e); // UTF-8 is mandatory + } } static final String SIGNING_ALGORITHM = "SHA256"; -- GitLab