diff options
author | tkellner <tkellner@8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4> | 2013-12-13 01:57:31 +0000 |
---|---|---|
committer | tkellner <tkellner@8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4> | 2013-12-13 01:57:31 +0000 |
commit | da6c49cbea9c80ad057a5fc3b698ce14ad9a7415 (patch) | |
tree | 2179084a1c0352a0a5a432de716a2778781f86bb /bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/STALSecurityProvider.java | |
parent | d311d0f7b7ef9ed5bc383d6744b7d61239aafbc1 (diff) | |
download | mocca-da6c49cbea9c80ad057a5fc3b698ce14ad9a7415.tar.gz mocca-da6c49cbea9c80ad057a5fc3b698ce14ad9a7415.tar.bz2 mocca-da6c49cbea9c80ad057a5fc3b698ce14ad9a7415.zip |
Add DigestMethod to STAL SignRequest, check digest value in secure viewer
NOTE: This currently disables viewing signature data which uses the
ExcludeByteRange feature, e.g. PAdES signatures.
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@1263 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
Diffstat (limited to 'bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/STALSecurityProvider.java')
-rw-r--r-- | bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/STALSecurityProvider.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/STALSecurityProvider.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/STALSecurityProvider.java index 0a2140c3..7c8b2b4e 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/STALSecurityProvider.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/cms/STALSecurityProvider.java @@ -60,8 +60,9 @@ public class STALSecurityProvider extends IaikProvider { throws SignatureException, InvalidKeyException, NoSuchAlgorithmException { log.debug("calculateSignatureFromSignedAttributes: " + signatureAlgorithm + ", " + digestAlgorithm); + STALPrivateKey spk = (STALPrivateKey) privateKey; SignRequest signRequest = getSTALSignRequest(keyboxIdentifier, signedAttributes, - privateKey.getAlgorithm(), hashDataInput); + spk.getAlgorithm(), spk.getDigestAlgorithm(), hashDataInput); log.debug("Sending STAL request ({})", privateKey.getAlgorithm()); List<STALResponse> responses = @@ -86,7 +87,8 @@ public class STALSecurityProvider extends IaikProvider { } private static SignRequest getSTALSignRequest(String keyboxIdentifier, - byte[] signedAttributes, String signatureMethod, List<HashDataInput> hashDataInput) { + byte[] signedAttributes, String signatureMethod, String digestMethod, + List<HashDataInput> hashDataInput) { SignRequest signRequest = new SignRequest(); signRequest.setKeyIdentifier(keyboxIdentifier); log.debug("SignedAttributes: " + Util.toBase64String(signedAttributes)); @@ -95,6 +97,7 @@ public class STALSecurityProvider extends IaikProvider { signedInfo.setIsCMSSignedAttributes(true); signRequest.setSignedInfo(signedInfo); signRequest.setSignatureMethod(signatureMethod); + signRequest.setDigestMethod(digestMethod); signRequest.setHashDataInput(hashDataInput); return signRequest; } |