From da6c49cbea9c80ad057a5fc3b698ce14ad9a7415 Mon Sep 17 00:00:00 2001 From: tkellner Date: Fri, 13 Dec 2013 01:57:31 +0000 Subject: 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 --- .../stal/service/translator/STALTranslator.java | 2 ++ .../egiz/stal/service/types/SignRequestType.java | 30 +++++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) (limited to 'STALService/src/main/java/at/gv/egiz/stal') diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/translator/STALTranslator.java b/STALService/src/main/java/at/gv/egiz/stal/service/translator/STALTranslator.java index 28d60ed6..5ddadbe7 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/service/translator/STALTranslator.java +++ b/STALService/src/main/java/at/gv/egiz/stal/service/translator/STALTranslator.java @@ -224,6 +224,7 @@ public class STALTranslator { signedInfo.setIsCMSSignedAttributes(((SignRequest) request).getSignedInfo().isIsCMSSignedAttributes()); req.setSignedInfo(signedInfo); req.setSignatureMethod(((SignRequest) request).getSignatureMethod()); + req.setDigestMethod(((SignRequest) request).getDigestMethod()); //TODO add hashdatainput (refactor signRequestType) return of.createGetNextRequestResponseTypeSignRequest(req); } else if (request instanceof InfoboxReadRequest) { @@ -255,6 +256,7 @@ public class STALTranslator { signedInfo.setIsCMSSignedAttributes(((SignRequestType) request).getSignedInfo().isIsCMSSignedAttributes()); stalReq.setSignedInfo(signedInfo); stalReq.setSignatureMethod(((SignRequestType) request).getSignatureMethod()); + stalReq.setDigestMethod(((SignRequestType) request).getDigestMethod()); return stalReq; } else if (request instanceof QuitRequestType) { return new QuitRequest(); diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/SignRequestType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/SignRequestType.java index 50a00406..67755d69 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/service/types/SignRequestType.java +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/SignRequestType.java @@ -61,6 +61,7 @@ import javax.xml.bind.annotation.XmlValue; * </complexType> * </element> * <element name="SignatureMethod" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> + * <element name="DigestMethod" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * </sequence> * </extension> * </complexContent> @@ -73,7 +74,8 @@ import javax.xml.bind.annotation.XmlValue; @XmlType(name = "SignRequestType", propOrder = { "keyIdentifier", "signedInfo", - "signatureMethod" + "signatureMethod", + "digestMethod" }) public class SignRequestType extends RequestType @@ -85,6 +87,8 @@ public class SignRequestType protected SignRequestType.SignedInfo signedInfo; @XmlElement(name = "SignatureMethod") protected String signatureMethod; + @XmlElement(name = "DigestMethod") + protected String digestMethod; /** * Gets the value of the keyIdentifier property. @@ -158,6 +162,30 @@ public class SignRequestType this.signatureMethod = value; } + /** + * Gets the value of the digestMethod property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getDigestMethod() { + return digestMethod; + } + + /** + * Sets the value of the digestMethod property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setDigestMethod(String value) { + this.digestMethod = value; + } + /** *

Java class for anonymous complex type. -- cgit v1.2.3