summaryrefslogtreecommitdiff
path: root/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data
diff options
context:
space:
mode:
Diffstat (limited to 'eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data')
-rw-r--r--eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/ICmsSignatureVerificationResponse.java5
-rw-r--r--eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IGenericSignatureVerificationResponse.java109
-rw-r--r--eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IPdfSignatureVerificationResponse.java29
-rw-r--r--eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/ISchemaRessourceProvider.java21
-rw-r--r--eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IXmlSignatureVerificationResponse.java39
5 files changed, 203 insertions, 0 deletions
diff --git a/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/ICmsSignatureVerificationResponse.java b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/ICmsSignatureVerificationResponse.java
new file mode 100644
index 00000000..f3d1dffc
--- /dev/null
+++ b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/ICmsSignatureVerificationResponse.java
@@ -0,0 +1,5 @@
+package at.gv.egiz.eaaf.modules.sigverify.moasig.api.data;
+
+public interface ICmsSignatureVerificationResponse extends IGenericSignatureVerificationResponse {
+
+}
diff --git a/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IGenericSignatureVerificationResponse.java b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IGenericSignatureVerificationResponse.java
new file mode 100644
index 00000000..8e8511fa
--- /dev/null
+++ b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IGenericSignatureVerificationResponse.java
@@ -0,0 +1,109 @@
+package at.gv.egiz.eaaf.modules.sigverify.moasig.api.data;
+
+import java.util.Date;
+import java.util.List;
+
+import javax.annotation.Nonnull;
+
+import org.springframework.lang.Nullable;
+
+import at.gv.egiz.eaaf.modules.sigverify.moasig.exceptions.MoaSigServiceException;
+import at.gv.egiz.eaaf.modules.sigverify.moasig.impl.data.GenericSignatureVerificationResponse.ExtendedCertificateValidation;
+import at.gv.egiz.eaaf.modules.sigverify.moasig.impl.data.GenericSignatureVerificationResponse.ExtendedResult;
+import iaik.x509.X509Certificate;
+
+public interface IGenericSignatureVerificationResponse {
+
+ /**
+ * Returns the signing time.
+ *
+ * @return Signing time, or null if signature contains no time information
+ */
+ @Nullable
+ Date getSigningDateTime();
+
+ /**
+ * Returns the signatureCheckCode.
+ *
+ * @return int
+ */
+ int getSignatureCheckCode();
+
+ /**
+ * Returns the certificateCheckCode.
+ *
+ * @return int
+ */
+ int getCertificateCheckCode();
+
+ /**
+ * Returns the qualifiedCertificate.
+ *
+ * @return boolean
+ */
+ boolean isQualifiedCertificate();
+
+ /**
+ * Returns the X509 certificate.
+ *
+ * @return X509Certificate, or null if no certificate information exists
+ * @throws MoaSigServiceException if X509 certificate can not be deserialized
+ */
+ @Nullable
+ X509Certificate getX509Certificate() throws MoaSigServiceException;
+
+ /**
+ * Returns the X509 certificate in serialized form.
+ *
+ * @return Serialized X509 certificate, or null if no certificate information
+ * exists
+ */
+ @Nullable
+ byte[] getX509CertificateEncoded();
+
+ /**
+ * Returns the publicAuthority.
+ *
+ * @return boolean
+ */
+ boolean isPublicAuthority();
+
+ /**
+ * Returns the publicAuthorityCode.
+ *
+ * @return String OID, or null if no OID exists
+ */
+ @Nullable
+ String getPublicAuthorityCode();
+
+
+ /**
+ * Return the signature-algorithm that was used for signing or <code>null</code> if no result exists.
+ * <br>
+ * <p>This result requires extended validation.</p>
+ *
+ * @return
+ */
+ @Nullable
+ String getSignatureAlgorithmIdentifier();
+
+ /**
+ * Return the extended certificate-validation result or <code>null</code> if no result exists.
+ * <br>
+ * <p>This result requires extended validation.</p>
+ *
+ * @return
+ */
+ @Nullable
+ ExtendedCertificateValidation getExtendedCertificateValidation();
+
+ /**
+ * Return the form-validation result or an empty list if no result exists.
+ * <br>
+ * <p>This result requires extended validation.</p>
+ *
+ * @return
+ */
+ @Nonnull
+ List<ExtendedResult> getFormValidationResults();
+}
diff --git a/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IPdfSignatureVerificationResponse.java b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IPdfSignatureVerificationResponse.java
new file mode 100644
index 00000000..1bf2d7b2
--- /dev/null
+++ b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IPdfSignatureVerificationResponse.java
@@ -0,0 +1,29 @@
+package at.gv.egiz.eaaf.modules.sigverify.moasig.api.data;
+
+import java.util.List;
+
+import at.gv.egiz.eaaf.core.impl.data.Pair;
+import at.gv.egiz.eaaf.modules.sigverify.moasig.impl.data.VerifyPdfSignatureResponse.CoversFullDocument;
+
+/**
+ * PDF specific signature-verification response.
+ *
+ * @author tlenz
+ *
+ */
+public interface IPdfSignatureVerificationResponse extends IGenericSignatureVerificationResponse {
+
+ /**
+ * Flag if signature covers the full pdf-document.
+ *
+ * @return
+ */
+ CoversFullDocument getSignatureCoversFullDocument();
+
+ /**
+ * PDF signing ranges as {@link List} of {@link Pair} of starting-byte and byte-length.
+ *
+ * @return
+ */
+ List<Pair<Integer, Integer>> getByteRange();
+}
diff --git a/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/ISchemaRessourceProvider.java b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/ISchemaRessourceProvider.java
new file mode 100644
index 00000000..edbbf628
--- /dev/null
+++ b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/ISchemaRessourceProvider.java
@@ -0,0 +1,21 @@
+package at.gv.egiz.eaaf.modules.sigverify.moasig.api.data;
+
+import java.io.InputStream;
+import java.util.Map;
+
+/**
+ * Inject additional XML schemes into MOA-Sig.
+ *
+ * @author tlenz
+ *
+ */
+public interface ISchemaRessourceProvider {
+
+ /**
+ * Get a Map of additional XML schemes that should be injected into MOA-Sig.
+ *
+ * @return A Set of {@link Entry} consist of Name of the Scheme and XML scheme
+ * as {@link InputStream}
+ */
+ Map<String, InputStream> getSchemas();
+}
diff --git a/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IXmlSignatureVerificationResponse.java b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IXmlSignatureVerificationResponse.java
new file mode 100644
index 00000000..c7d0b276
--- /dev/null
+++ b/eaaf_modules/eaaf_module_moa-sig/src/main/java/at/gv/egiz/eaaf/modules/sigverify/moasig/api/data/IXmlSignatureVerificationResponse.java
@@ -0,0 +1,39 @@
+package at.gv.egiz.eaaf.modules.sigverify.moasig.api.data;
+
+/**
+ * XML signature verification result.
+ *
+ * @author tlenz
+ *
+ */
+public interface IXmlSignatureVerificationResponse extends IGenericSignatureVerificationResponse {
+
+ /**
+ * Returns the xmlDSIGManifestCheckCode.
+ *
+ * @return int
+ */
+ int getXmlDsigManifestCheckCode();
+
+ /**
+ * Returns the xmlDsigSubjectName.
+ *
+ * @return String
+ */
+ String getXmlDsigSubjectName();
+
+ /**
+ * Returns the xmlDSIGManigest.
+ *
+ * @return boolean
+ */
+ boolean isXmlDsigManigest();
+
+ /**
+ * Returns the the resulting code of the signature manifest check.
+ *
+ * @return The code of the sigature manifest check.
+ */
+ int getSignatureManifestCheckCode();
+
+}