diff options
110 files changed, 1936 insertions, 0 deletions
| diff --git a/spss/handbook/clients/api/lib/commons-discovery-0.2/commons-discovery.jar b/spss/handbook/clients/api/lib/commons-discovery-0.2/commons-discovery.jarBinary files differ new file mode 100644 index 000000000..b88554847 --- /dev/null +++ b/spss/handbook/clients/api/lib/commons-discovery-0.2/commons-discovery.jar diff --git a/spss/handbook/clients/api/lib/commons-logging-1.0.4/commons-logging-api.jar b/spss/handbook/clients/api/lib/commons-logging-1.0.4/commons-logging-api.jarBinary files differ new file mode 100644 index 000000000..ade9a13c7 --- /dev/null +++ b/spss/handbook/clients/api/lib/commons-logging-1.0.4/commons-logging-api.jar diff --git a/spss/handbook/clients/api/lib/commons-logging-1.0.4/commons-logging.jar b/spss/handbook/clients/api/lib/commons-logging-1.0.4/commons-logging.jarBinary files differ new file mode 100644 index 000000000..b73a80fab --- /dev/null +++ b/spss/handbook/clients/api/lib/commons-logging-1.0.4/commons-logging.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_Pkcs11Provider.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_Pkcs11Provider.jarBinary files differ new file mode 100644 index 000000000..af39b42b1 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_Pkcs11Provider.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_Pkcs11Wrapper.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_Pkcs11Wrapper.jarBinary files differ new file mode 100644 index 000000000..43342ef7c --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_Pkcs11Wrapper.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_cms.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_cms.jarBinary files differ new file mode 100644 index 000000000..7264a68f3 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_cms.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_ecc.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_ecc.jarBinary files differ new file mode 100644 index 000000000..4cd73391d --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_ecc.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_ixsil.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_ixsil.jarBinary files differ new file mode 100644 index 000000000..5279f2247 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_ixsil.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_jce_full.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_jce_full.jarBinary files differ new file mode 100644 index 000000000..fe14dbb2a --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_jce_full.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_moa_full.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_moa_full.jarBinary files differ new file mode 100644 index 000000000..539988fba --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/iaik_moa_full.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/linux/libpkcs11wrapper.so b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/linux/libpkcs11wrapper.soBinary files differ new file mode 100644 index 000000000..11852511b --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/linux/libpkcs11wrapper.so diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/linux_x64/libpkcs11wrapper.so b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/linux_x64/libpkcs11wrapper.soBinary files differ new file mode 100644 index 000000000..393946053 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/linux_x64/libpkcs11wrapper.so diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_Pkcs11Provider.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_Pkcs11Provider.jarBinary files differ new file mode 100644 index 000000000..a348db04e --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_Pkcs11Provider.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_ecc.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_ecc.jarBinary files differ new file mode 100644 index 000000000..b8a4f190b --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_ecc.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_jce_full.jar b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_jce_full.jarBinary files differ new file mode 100644 index 000000000..7288bc39d --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/signed/iaik_jce_full.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/solaris_sparc/libpkcs11wrapper.so b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/solaris_sparc/libpkcs11wrapper.soBinary files differ new file mode 100644 index 000000000..0b19f10c1 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/solaris_sparc/libpkcs11wrapper.so diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/solaris_sparcv9/libpkcs11wrapper.so b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/solaris_sparcv9/libpkcs11wrapper.soBinary files differ new file mode 100644 index 000000000..11f928b0b --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/solaris_sparcv9/libpkcs11wrapper.so diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/win32/pkcs11wrapper.dll b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/win32/pkcs11wrapper.dllBinary files differ new file mode 100644 index 000000000..3789b8d7a --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/win32/pkcs11wrapper.dll diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070503/full/wince30arm/pkcs11wrapper.dll b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/wince30arm/pkcs11wrapper.dllBinary files differ new file mode 100644 index 000000000..d98e48d80 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070503/full/wince30arm/pkcs11wrapper.dll diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_Pkcs11Wrapper.jar b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_Pkcs11Wrapper.jarBinary files differ new file mode 100644 index 000000000..43342ef7c --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_Pkcs11Wrapper.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_cms.jar b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_cms.jarBinary files differ new file mode 100644 index 000000000..7264a68f3 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_cms.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_ixsil.jar b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_ixsil.jarBinary files differ new file mode 100644 index 000000000..003df0066 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_ixsil.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_moa_full.jar b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_moa_full.jarBinary files differ new file mode 100644 index 000000000..35ffc2d06 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/iaik_moa_full.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/linux/libpkcs11wrapper.so b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/linux/libpkcs11wrapper.soBinary files differ new file mode 100644 index 000000000..11852511b --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/linux/libpkcs11wrapper.so diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/linux_x64/libpkcs11wrapper.so b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/linux_x64/libpkcs11wrapper.soBinary files differ new file mode 100644 index 000000000..393946053 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/linux_x64/libpkcs11wrapper.so diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_Pkcs11Provider.jar b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_Pkcs11Provider.jarBinary files differ new file mode 100644 index 000000000..a348db04e --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_Pkcs11Provider.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_ecc.jar b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_ecc.jarBinary files differ new file mode 100644 index 000000000..b8a4f190b --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_ecc.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_jce_full.jar b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_jce_full.jarBinary files differ new file mode 100644 index 000000000..7288bc39d --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/signed/iaik_jce_full.jar diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/solaris_sparc/libpkcs11wrapper.so b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/solaris_sparc/libpkcs11wrapper.soBinary files differ new file mode 100644 index 000000000..0b19f10c1 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/solaris_sparc/libpkcs11wrapper.so diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/solaris_sparcv9/libpkcs11wrapper.so b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/solaris_sparcv9/libpkcs11wrapper.soBinary files differ new file mode 100644 index 000000000..11f928b0b --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/solaris_sparcv9/libpkcs11wrapper.so diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/win32/pkcs11wrapper.dll b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/win32/pkcs11wrapper.dllBinary files differ new file mode 100644 index 000000000..3789b8d7a --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/win32/pkcs11wrapper.dll diff --git a/spss/handbook/clients/api/lib/iaik-moa-20070801/full/wince30arm/pkcs11wrapper.dll b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/wince30arm/pkcs11wrapper.dllBinary files differ new file mode 100644 index 000000000..d98e48d80 --- /dev/null +++ b/spss/handbook/clients/api/lib/iaik-moa-20070801/full/wince30arm/pkcs11wrapper.dll diff --git a/spss/handbook/clients/api/lib/jaxen-1.0/jaxen-core.jar b/spss/handbook/clients/api/lib/jaxen-1.0/jaxen-core.jarBinary files differ new file mode 100644 index 000000000..e52bf679c --- /dev/null +++ b/spss/handbook/clients/api/lib/jaxen-1.0/jaxen-core.jar diff --git a/spss/handbook/clients/api/lib/jaxen-1.0/jaxen-dom.jar b/spss/handbook/clients/api/lib/jaxen-1.0/jaxen-dom.jarBinary files differ new file mode 100644 index 000000000..1a9926357 --- /dev/null +++ b/spss/handbook/clients/api/lib/jaxen-1.0/jaxen-dom.jar diff --git a/spss/handbook/clients/api/lib/jaxen-1.0/saxpath.jar b/spss/handbook/clients/api/lib/jaxen-1.0/saxpath.jarBinary files differ new file mode 100644 index 000000000..2b43955ba --- /dev/null +++ b/spss/handbook/clients/api/lib/jaxen-1.0/saxpath.jar diff --git a/spss/handbook/clients/api/lib/jaxp-1.2_01/dom.jar b/spss/handbook/clients/api/lib/jaxp-1.2_01/dom.jarBinary files differ new file mode 100644 index 000000000..f91f80a8b --- /dev/null +++ b/spss/handbook/clients/api/lib/jaxp-1.2_01/dom.jar diff --git a/spss/handbook/clients/api/lib/jaxp-1.2_01/jaxp-api.jar b/spss/handbook/clients/api/lib/jaxp-1.2_01/jaxp-api.jarBinary files differ new file mode 100644 index 000000000..7a3295ee6 --- /dev/null +++ b/spss/handbook/clients/api/lib/jaxp-1.2_01/jaxp-api.jar diff --git a/spss/handbook/clients/api/lib/jaxp-1.2_01/sax.jar b/spss/handbook/clients/api/lib/jaxp-1.2_01/sax.jarBinary files differ new file mode 100644 index 000000000..9ffb844e5 --- /dev/null +++ b/spss/handbook/clients/api/lib/jaxp-1.2_01/sax.jar diff --git a/spss/handbook/clients/api/lib/log4j-1.2.7/log4j-1.2.7.jar b/spss/handbook/clients/api/lib/log4j-1.2.7/log4j-1.2.7.jarBinary files differ new file mode 100644 index 000000000..1595a56ef --- /dev/null +++ b/spss/handbook/clients/api/lib/log4j-1.2.7/log4j-1.2.7.jar diff --git a/spss/handbook/clients/api/lib/postgres-jdbc2-7.3/pg73jdbc2.jar b/spss/handbook/clients/api/lib/postgres-jdbc2-7.3/pg73jdbc2.jarBinary files differ new file mode 100644 index 000000000..8bf46dd8e --- /dev/null +++ b/spss/handbook/clients/api/lib/postgres-jdbc2-7.3/pg73jdbc2.jar diff --git a/spss/handbook/clients/api/lib/xalan-j-2.5.1/xalan.jar b/spss/handbook/clients/api/lib/xalan-j-2.5.1/xalan.jarBinary files differ new file mode 100644 index 000000000..44d4d094d --- /dev/null +++ b/spss/handbook/clients/api/lib/xalan-j-2.5.1/xalan.jar diff --git a/spss/handbook/clients/api/signatures/SimpleSignature.xml b/spss/handbook/clients/api/signatures/SimpleSignature.xml new file mode 100644 index 000000000..9ecd215c1 --- /dev/null +++ b/spss/handbook/clients/api/signatures/SimpleSignature.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI="#xpointer(id('signed-data-1-1-1')/node())"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>tLODyeiWFbAkQKwhrR23jtcgu4k=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>VEjXB6+geUL16oTPDVx5lcQliGl/oyVobug3BVxVwhu8CU7WK65moTcTuo/CL2hQ</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object Id="signed-data-1-1-1">Diese Daten werden signiert.</dsig:Object></dsig:Signature>
\ No newline at end of file diff --git a/spss/handbook/clients/api/src/at/gv/egovernment/moa/spss/handbook/clients/api/CreateXMLSignature.java b/spss/handbook/clients/api/src/at/gv/egovernment/moa/spss/handbook/clients/api/CreateXMLSignature.java new file mode 100644 index 000000000..2534e4913 --- /dev/null +++ b/spss/handbook/clients/api/src/at/gv/egovernment/moa/spss/handbook/clients/api/CreateXMLSignature.java @@ -0,0 +1,130 @@ +package at.gv.egovernment.moa.spss.handbook.clients.api; + +import java.io.ByteArrayInputStream; +import java.util.ArrayList; +import java.util.List; + +import org.w3c.dom.Element; + +import at.gv.egovernment.moa.spss.api.SPSSFactory; +import at.gv.egovernment.moa.spss.api.SignatureCreationService; +import at.gv.egovernment.moa.spss.api.common.Content; +import at.gv.egovernment.moa.spss.api.common.MetaInfo; +import at.gv.egovernment.moa.spss.api.xmlsign.CreateTransformsInfo; +import at.gv.egovernment.moa.spss.api.xmlsign.CreateTransformsInfoProfile; +import at.gv.egovernment.moa.spss.api.xmlsign.CreateXMLSignatureRequest; +import at.gv.egovernment.moa.spss.api.xmlsign.CreateXMLSignatureResponse; +import at.gv.egovernment.moa.spss.api.xmlsign.DataObjectInfo; +import at.gv.egovernment.moa.spss.api.xmlsign.SignatureEnvironmentResponse; +import at.gv.egovernment.moa.spss.api.xmlsign.SingleSignatureInfo; +import at.gv.egovernment.moa.util.DOMUtils; + +/** + * Dieses einfache Beispiel demonstriert grundlegend den Gebrauch der API von MOA SP/SS. Es wird damit eine + * einfach aufgebaute XML-Signatur erzeugt. + */ +public class CreateXMLSignature +{ +  /** +   * Methode main. +   *  +   * Enthält beispielhaften Code zum grundlegenden Gebrauch der API von MOA SP/SS. Es wird damit eine +   * einfach aufgebaute XML-Signatur erzeugt. +   *  +   * ACHTUNG: Stellen Sie bei Verwendung von J2SE 1.4.x bzw. 5.x sicher, dass Sie die System-Property  +   * <code>java.endorsed.dirs</code> auf jenes Verzeichnis gesetzt haben, in dem sich die XPath- +   * und XSLT-Bibliothek <em>Xalan-J</em> befindet. +   *  +   * @param args <ul> +   *             <li> +   *             args[0] enthält einen Verweis auf die Konfigurations-Datei von MOA SP/SS Der Verweis  +   *             enthält entweder eine absolute oder eine relative Pfadangabe, wobei eine relative  +   *             Angabe als relativ zum Arbeitsverzeichnis der Java VM interpretiert wird.  +   *             </li> +   *             <li> +   *             args[1] enthält einen Verweis auf die Konfigurations-Datei von Log4J, dem Logging- +   *             Framework, das von MOA SP/SS verwendet wird. Der Verweis enthält entweder eine  +   *             absolute oder eine relative Pfadangabe, wobei eine relative Angabe als relativ zum +   *             Arbeitsverzeichnis der Java VM interpretiert wird.  +   *             </li> +   *             </ul> +   *  +   * @throws Exception Sollten Fehler auftreten werden die Fehler an die Java-VM weitergeleitet. +   */ +  public static void main(String[] args) throws Exception +  { +    // Setzen der System-Properties +    init(args); + +    // Serverfunktionshandler instanzieren +    SPSSFactory spf = SPSSFactory.getInstance(); + +    // Zu signierende Daten in ein Contentobjekt einbinden (die Daten werden hier explizit angegeben, +    // sollen aber in der Signatur mittels URL "http://uri.data.org" referenziert werden +    byte[] data = "Diese Daten werden signiert.".getBytes("UTF-8"); +    ByteArrayInputStream bis = new ByteArrayInputStream(data); +    Content cont = spf.createContent(bis, null); + +    // Metainformationen zu den zu signierenden Daten erstellen +    MetaInfo mi = spf.createMetaInfo("text/plain", null, null, null); + +    // Transformationen erstellen (hier werden keine Transformationen angewandt) +    CreateTransformsInfo cti = spf.createCreateTransformsInfo(null, mi); +    CreateTransformsInfoProfile ct = spf.createCreateTransformsInfoProfile(cti, null); + +    // Datenobjekt aufbauen +    DataObjectInfo doi = spf.createDataObjectInfo(DataObjectInfo.STRUCTURE_ENVELOPING, false, cont, ct); + +    // Erstellen eines SingleSignatureInfo-Containers +    // Enthält alle Angaben zur Erstellung *einer* Signatur +    List dataobjectinfolist = new ArrayList(); +    dataobjectinfolist.add(doi); +    SingleSignatureInfo ssi = spf.createSingleSignatureInfo(dataobjectinfolist, null, false); + +    // Erstellen des Request-Objekts (Schlüsselbezeichner, Liste von SingleSignatureInfo-Containern) +    List singlesignatureinfolist = new ArrayList(); +    singlesignatureinfolist.add(ssi); +    CreateXMLSignatureRequest cxsreq = spf.createCreateXMLSignatureRequest("KG_allgemein", +      singlesignatureinfolist); + +    // Signatureerstellungsservice instanzieren und aufrufen +    SignatureCreationService scs = SignatureCreationService.getInstance(); +    CreateXMLSignatureResponse cxsres = scs.createXMLSignature(cxsreq); + +    // Response auswerten +    List elements = cxsres.getResponseElements(); +    SignatureEnvironmentResponse ser = (SignatureEnvironmentResponse) elements.get(0); + +    // Auswertung des ersten (und einzigen) SignatureEnvironmentResponse-Containers +    int response_type = ser.getResponseType(); + +    if (response_type == SignatureEnvironmentResponse.ERROR_RESPONSE) +    { +      // Fehlerfall +      System.out.println("Bei der Erstellung der Signatur ist ein Fehler aufgetreten."); +    } +    else +    { +      // Signaturerstellung erfolgreich +      System.out.println("Signaturerstellung erfolgreich:"); + +      Element se = ser.getSignatureEnvironment(); +      System.out.println(DOMUtils.serializeNode(se)); +    } +  } + +  /** +   * Setzt die notwendigen System-Properties für die Konfiguration der MOA SP/SS API.  +   *  +   * @param args Siehe @link CreateXMLSignature#main(String[]). +   */ +  private static void init(String[] args) +  { +    if (args == null || args.length != 2) +    { +      System.out.println("Verwendung: CreateXMLSignature <MOASPSSConfigFile> <Log4JConfigFile>"); +    } +    System.setProperty("moa.spss.server.configuration", args[0]); +    System.setProperty("log4j.configuration", "file:" + args[1]); +  } +}
\ No newline at end of file diff --git a/spss/handbook/clients/api/src/at/gv/egovernment/moa/spss/handbook/clients/api/VerifyXMLSignature.java b/spss/handbook/clients/api/src/at/gv/egovernment/moa/spss/handbook/clients/api/VerifyXMLSignature.java new file mode 100644 index 000000000..fed8ba9f2 --- /dev/null +++ b/spss/handbook/clients/api/src/at/gv/egovernment/moa/spss/handbook/clients/api/VerifyXMLSignature.java @@ -0,0 +1,147 @@ +package at.gv.egovernment.moa.spss.handbook.clients.api; + +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.util.HashMap; + +import at.gv.egovernment.moa.spss.MOAException; +import at.gv.egovernment.moa.spss.api.SPSSFactory; +import at.gv.egovernment.moa.spss.api.SignatureVerificationService; +import at.gv.egovernment.moa.spss.api.common.Content; +import at.gv.egovernment.moa.spss.api.common.SignerInfo; +import at.gv.egovernment.moa.spss.api.xmlverify.VerifySignatureInfo; +import at.gv.egovernment.moa.spss.api.xmlverify.VerifySignatureLocation; +import at.gv.egovernment.moa.spss.api.xmlverify.VerifyXMLSignatureRequest; +import at.gv.egovernment.moa.spss.api.xmlverify.VerifyXMLSignatureResponse; + +/** + * Dieses einfache Beispiel demonstriert grundlegend den Gebrauch der API von MOA SP/SS.  + * Es wird damit eine einfach aufgebaute XML-Signatur geprüft. + */ + +public class VerifyXMLSignature +{ +  /** +   * Methode main. +   *  +   * Enthält beispielhaften Code zum grundlegenden Gebrauch der API von MOA SP/SS.  +   * Es wird damit eine einfach aufgebaute XML-Signatur geprüft. +   *  +   * ACHTUNG: Stellen Sie bei Verwendung von J2SE 1.4.x bzw. 5.x sicher, dass Sie die System-Property  +   * <code>java.endorsed.dirs</code> auf jenes Verzeichnis gesetzt haben, in dem sich die XPath- +   * und XSLT-Bibliothek <em>Xalan-J</em> befindet. +   *  +   * @param args <ul> +   *             <li> +   *             args[0] enthält einen Verweis auf die Konfigurations-Datei von MOA SP/SS Der Verweis  +   *             enthält entweder eine absolute oder eine relative Pfadangabe, wobei eine relative  +   *             Angabe als relativ zum Arbeitsverzeichnis der Java VM interpretiert wird.  +   *             </li> +   *             <li> +   *             args[1] enthält einen Verweis auf die Konfigurations-Datei von Log4J, dem Logging- +   *             Framework, das von MOA SP/SS verwendet wird. Der Verweis enthält entweder eine  +   *             absolute oder eine relative Pfadangabe, wobei eine relative Angabe als relativ zum +   *             Arbeitsverzeichnis der Java VM interpretiert wird.  +   *             </li> +   *             <li> +   *             args[2] enthält Pfad und Dateiname des XML-Dokuments mit der darin enthaltenen, zu +   *             prüfenden XML-Signatur. Verwenden Sie z.B. das mit diesem Handbuch mitgelieferte +   *             Beispiel <code>clients/api/signatures/SimpleSignature.xml</code>. +   *             </li> +   *             </ul> +   */ +  public static void main(String[] args) +  { +    // Setzen der System-Properties +    init(args); + +    // Factory und Service instanzieren +    SPSSFactory spssFac = SPSSFactory.getInstance(); +    SignatureVerificationService sigVerifyService = SignatureVerificationService.getInstance(); +     +    // Content aus Dokument mit zu prüfender Signatur erstellen +    FileInputStream sigDocFIS = null; +    try +    { +      sigDocFIS = new FileInputStream(args[2]); +    } +    catch (FileNotFoundException e1) +    { +      System.err.println("XML-Dokument mit zu prüfender Signatur nicht gefunden: " + args[2]); +      System.exit(-1); +    } +    Content sigDocContent = spssFac.createContent(sigDocFIS, null); +     +    // Position der zu prüfenden Signatur im Dokument angeben +    // (Nachdem im XPath-Ausdruck ein NS-Präfix verwendet wird, muss in einer Lookup-Tabelle +    // der damit bezeichnete Namenraum mitgegeben werden) +    HashMap nSMap = new HashMap(); +    nSMap.put("dsig", "http://www.w3.org/2000/09/xmldsig#"); +    VerifySignatureLocation sigLocation = spssFac.createVerifySignatureLocation("//dsig:Signature", nSMap); +     +    // Zu prüfendes Dokument und Signaturposition zusammenfassen +    VerifySignatureInfo sigInfo = spssFac.createVerifySignatureInfo(sigDocContent, sigLocation); +     +    // Prüfrequest zusammenstellen +    VerifyXMLSignatureRequest verifyRequest = spssFac.createVerifyXMLSignatureRequest( +      null,    // Wird Prüfzeit nicht angegeben, wird aktuelle Zeit verwendet  +      sigInfo,  +      null,    // Keine Ergänzungsobjekte notwendig +      null,    // Signaturmanifest-Prüfung soll nicht durchgeführt werden +      false,   // Hash-Inputdaten, d.h. tatsächlich signierte Daten werden nicht zurückgeliefert +      "Test-Signaturdienste");  // ID des verwendeten Vertrauensprofils +     +    VerifyXMLSignatureResponse verifyResponse = null; +    try +    { +      // Aufruf der Signaturprüfung +      verifyResponse = sigVerifyService.verifyXMLSignature(verifyRequest); +    } +    catch (MOAException e) +    { +      // Service liefert Fehler +      System.err.println("Die Signaturprüfung hat folgenden Fehler geliefert:"); +      System.err.println("Fehlercode: " + e.getMessageId()); +      System.err.println("Fehlernachricht: " + e.getMessage()); +      System.exit(-1); +    } +     +    // Auswertung der Response +    System.out.println(); +    System.out.println("Ergebnisse der Signaturprüfung:"); +    System.out.println(); +     +    // Besondere Eigenschaften des Signatorzertifikats +    SignerInfo signerInfo = verifyResponse.getSignerInfo(); +    System.out.println("*** Ist Zertifikat des Signators qualifiziert? " + ((signerInfo.isQualifiedCertificate()) ? "ja" : "nein")); +    System.out.println("*** Ist Zertifikat des Signators von einer Behörde? " + ((signerInfo.isPublicAuthority()) ? "ja" : "nein")); +     +    // Ergebnisse von Signatur- und Zertifikatsprüfung +    System.out.println(); +    System.out.println("Ergebniscode der Signaturprüfung: " + verifyResponse.getSignatureCheck().getCode()); +    System.out.println("Ergebniscode der Zertifikatsprüfung: " + verifyResponse.getCertificateCheck().getCode()); +     +    // Signatorzertifikat +    System.out.println(); +    System.out.println("*** Zertifikat des Signators:"); +    System.out.println("Aussteller: " + signerInfo.getSignerCertificate().getIssuerDN()); +    System.out.println("Subject: " + signerInfo.getSignerCertificate().getSubjectDN()); +    System.out.println("Seriennummer: " + signerInfo.getSignerCertificate().getSerialNumber()); +  } + +  /** +   * Setzt die notwendigen System-Properties für die Konfiguration der MOA SP/SS API.  +   *  +   * @param args Siehe @link VerifyXMLSignature#main(String[]). +   */ +  private static void init(String[] args) +  { +    if (args == null || args.length != 3) +    { +      System.out.println("Verwendung: VerifyXMLSignature <MOASPSSConfigFile> <Log4JConfigFile> <XMLDocWithSignature>"); +      System.exit(-1); +    } +    System.setProperty("moa.spss.server.configuration", args[0]); +    System.setProperty("log4j.configuration", "file:" + args[1]); +  } +}
\ No newline at end of file diff --git a/spss/handbook/clients/common/referencedData/Text.b64 b/spss/handbook/clients/common/referencedData/Text.b64 new file mode 100644 index 000000000..0f4636b9a --- /dev/null +++ b/spss/handbook/clients/common/referencedData/Text.b64 @@ -0,0 +1 @@ +RGllc2UgRGF0ZW4gd2FyZW4gYmFzZTY0IGtvZGllcnQu
\ No newline at end of file diff --git a/spss/handbook/clients/common/referencedData/Text.txt b/spss/handbook/clients/common/referencedData/Text.txt new file mode 100644 index 000000000..3a75c06b3 --- /dev/null +++ b/spss/handbook/clients/common/referencedData/Text.txt @@ -0,0 +1 @@ +Diese Daten sind reiner Text.
\ No newline at end of file diff --git a/spss/handbook/clients/common/referencedData/WEB-INF/web.xml b/spss/handbook/clients/common/referencedData/WEB-INF/web.xml new file mode 100644 index 000000000..002520ba5 --- /dev/null +++ b/spss/handbook/clients/common/referencedData/WEB-INF/web.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<!DOCTYPE web-app +    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" +    "http://java.sun.com/dtd/web-app_2_3.dtd"> + +<web-app> +  <display-name>MOA Webservice Client: Referenzierte Web-Daten</display-name> +  <description>MOA Webservice Client: Referenzierte Web-Daten</description> +</web-app> diff --git a/spss/handbook/clients/common/referencedData/XMLDocument.Para.xsl b/spss/handbook/clients/common/referencedData/XMLDocument.Para.xsl new file mode 100644 index 000000000..11d6dd6f9 --- /dev/null +++ b/spss/handbook/clients/common/referencedData/XMLDocument.Para.xsl @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="urn:document" xmlns="http://www.w3.org/1999/xhtml"> +  <xsl:output encoding="UTF-8" method="xml" indent="yes"/> +  <xsl:template match="/"> +    <html xmlns="http://www.w3.org/1999/xhtml"> +      <head> +        <title>HTML-Dokument</title> +      </head> +      <body> +        <xsl:apply-templates/>  +      </body> +    </html> +  </xsl:template>   +  <xsl:template match="doc:Paragraph"> +    <p> +      <xsl:value-of select="child::text()"/> +    </p> +  </xsl:template> +</xsl:stylesheet> diff --git a/spss/handbook/clients/common/referencedData/XMLDocument.signed.xml b/spss/handbook/clients/common/referencedData/XMLDocument.signed.xml new file mode 100644 index 000000000..897b3c896 --- /dev/null +++ b/spss/handbook/clients/common/referencedData/XMLDocument.signed.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<doc:XMLDocument xmlns:doc="urn:document"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI=""><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>2b83+NbXDFijHzz+sH0T7fM36sA=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>30zsZMPn1mR5G5oIGJvTRmCik3WuepfZF6AhLwxgJDMJlPQ8rheBWCaKihzXnHaS</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo></dsig:Signature> +</doc:XMLDocument>
\ No newline at end of file diff --git a/spss/handbook/clients/common/referencedData/XMLDocument.withResolvableSchemaHint.xml b/spss/handbook/clients/common/referencedData/XMLDocument.withResolvableSchemaHint.xml new file mode 100644 index 000000000..4f1124637 --- /dev/null +++ b/spss/handbook/clients/common/referencedData/XMLDocument.withResolvableSchemaHint.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<doc:XMLDocument xmlns:doc="urn:document" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:document http://localhost:8080/referencedData/XMLDocument.xsd"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph> +</doc:XMLDocument> diff --git a/spss/handbook/clients/common/referencedData/XMLDocument.withSchemaHint.xml b/spss/handbook/clients/common/referencedData/XMLDocument.withSchemaHint.xml new file mode 100644 index 000000000..82f65d99e --- /dev/null +++ b/spss/handbook/clients/common/referencedData/XMLDocument.withSchemaHint.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<doc:XMLDocument xmlns:doc="urn:document" xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:document urn:XMLDocument.xsd"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph> +</doc:XMLDocument> diff --git a/spss/handbook/clients/common/referencedData/XMLDocument.xml b/spss/handbook/clients/common/referencedData/XMLDocument.xml new file mode 100644 index 000000000..1c48dce36 --- /dev/null +++ b/spss/handbook/clients/common/referencedData/XMLDocument.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<doc:XMLDocument xmlns:doc="urn:document"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph> +</doc:XMLDocument> diff --git a/spss/handbook/clients/common/referencedData/XMLDocument.xsd b/spss/handbook/clients/common/referencedData/XMLDocument.xsd new file mode 100644 index 000000000..a2930f1da --- /dev/null +++ b/spss/handbook/clients/common/referencedData/XMLDocument.xsd @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?>
 +<xs:schema targetNamespace="urn:document" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:document" elementFormDefault="qualified" attributeFormDefault="unqualified">
 +  <xs:element name="XMLDocument">
 +    <xs:complexType>
 +      <xs:sequence>
 +        <xs:element name="Paragraph" maxOccurs="unbounded">
 +          <xs:complexType mixed="true">
 +            <xs:attribute name="ParaId" type="xs:ID" use="optional"/>
 +          </xs:complexType>
 +        </xs:element>
 +        <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
 +      </xs:sequence>
 +    </xs:complexType>
 +  </xs:element>
 +</xs:schema>
 diff --git a/spss/handbook/clients/common/referencedData/XMLDocument.xsl b/spss/handbook/clients/common/referencedData/XMLDocument.xsl new file mode 100644 index 000000000..85755c2e6 --- /dev/null +++ b/spss/handbook/clients/common/referencedData/XMLDocument.xsl @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="urn:document"> +  <xsl:output encoding="UTF-8" method="xml" indent="yes"/> +  <xsl:template match="/doc:XMLDocument"> +    <html xmlns="http://www.w3.org/1999/xhtml"> +      <head> +        <title>HTML-Dokument</title> +      </head> +      <body> +        <xsl:for-each select="doc:Paragraph"> +          <p> +            <xsl:value-of select="child::text()"/> +          </p> +        </xsl:for-each> +      </body> +    </html> +  </xsl:template> +</xsl:stylesheet> diff --git a/spss/handbook/clients/common/referencedData/XMLDocumentRef.xsl b/spss/handbook/clients/common/referencedData/XMLDocumentRef.xsl new file mode 100644 index 000000000..c385f9d1f --- /dev/null +++ b/spss/handbook/clients/common/referencedData/XMLDocumentRef.xsl @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:include href="XMLDocument.Para.xsl"/> +</xsl:stylesheet> diff --git a/spss/handbook/clients/common/referencedData/referencedData.war b/spss/handbook/clients/common/referencedData/referencedData.warBinary files differ new file mode 100644 index 000000000..6a05d6c7a --- /dev/null +++ b/spss/handbook/clients/common/referencedData/referencedData.war diff --git a/spss/handbook/clients/webservice/conf/http.properties b/spss/handbook/clients/webservice/conf/http.properties new file mode 100644 index 000000000..1506169ed --- /dev/null +++ b/spss/handbook/clients/webservice/conf/http.properties @@ -0,0 +1,74 @@ +### +# Properties für den HTTP(S) Client +### + +# +# Signieren +# + +# Name des Webservices, fix "SignatureCreation" +signServiceQName = SignatureCreation + +# Zugangspunkt des Webservices +signServiceEndPoint = http://localhost:8080/moa-spss/services/SignatureCreation +#signServiceEndPoint = https://localhost:8443/moa-spss/services/SignatureCreation + +# Name des zu sendenden Signaturerstellungsrequests (entweder absolute +# oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum +# Arbeitsverzeichnis der Java VM interpretiert) +signRequest = clients/webservice/resources/requests/CreateXMLSignatureRequest.Simple.xml +#signRequest=clients/webservice/resources/requests/CreateXMLSignatureRequest.Refs.xml +#signRequest=clients/webservice/resources/requests/CreateXMLSignatureRequest.Transforms.xml +#signRequest=clients/webservice/resources/requests/CreateXMLSignatureRequest.Supplements.xml + + +# +# Verifizieren +# + +# Name des Webservices, fix "SignatureVerification" +verifyServiceQName = SignatureVerification + +# Zugangspunkt des Webservices +verifyServiceEndPoint = http://localhost:8080/moa-spss/services/SignatureVerification +#verifyServiceEndPoint = https://localhost:8443/moa-spss/services/SignatureVerification + +# Name des zu sendenden Signaturprüfrequests (entweder absolute +# oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum +# Arbeitsverzeichnis der Java VM interpretiert) +verifyRequest=clients/webservice/resources/requests/VerifyCMSSignatureRequest.Simple.xml +#verifyRequest=clients/webservice/resources/requests/VerifyCMSSignatureRequest.Extended.xml +#verifyRequest=clients/webservice/resources/requests/VerifyXMLSignatureRequest.Simple.xml +#verifyRequest=clients/webservice/resources/requests/VerifyXMLSignatureRequest.Enveloped.xml +#verifyRequest=clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.xml +#verifyRequest=clients/webservice/resources/requests/VerifyXMLSignatureRequest.SigManifest.xml +#verifyRequest=clients/webservice/resources/requests/VerifyXMLSignatureRequest.XMLDSigManifest.xml + +# +# JSSE-Konfiguration +# + +# Typ des JSSE-Truststores (entweder "JKS" für einen Java Key Store oder  +# "PKCS12" für eine PKCS#12-Datei). +ssl.truststore.type = JKS + +# Relativer oder absoluter Pfad zum JSSE-Truststore. Ein relativer Pfad  +# wird relativ zum Arbeitsverzeichnis der Java VM interpretiert). +ssl.truststore.loc = clients/webservice/resources/sslKeys/customer1/trustedServers[pwd=servers].keystore +#ssl.truststore.loc = clients/webservice/resources/sslKeys/customer2/trustedServers[pwd=servers].keystore + +# Passwort für den JSSE-Truststore. +ssl.truststore.pwd = servers + +# Typ des JSSE-Keystores (entweder "JKS" für einen Java Key Store oder  +# "PKCS12" für eine PKCS#12-Datei). +ssl.keystore.type = PKCS12 + +# Relativer oder absoluter Pfad zum JSSE-Keystore. Ein relativer Pfad  +# wird relativ zum Arbeitsverzeichnis der Java VM interpretiert). +ssl.keystore.loc = clients/webservice/resources/sslKeys/customer1/moa-ssl-kunde1[pwd=kunde1].p12 +#ssl.keystore.loc = clients/webservice/resources/sslKeys/customer2/moa-ssl-kunde2[pwd=kunde2].p12 + +# Passwort für den JSSE-Keystore. +ssl.keystore.pwd = kunde1 +#ssl.keystore.pwd = kunde2 diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/axis-ant.jar b/spss/handbook/clients/webservice/lib/axis-1_1/axis-ant.jarBinary files differ new file mode 100644 index 000000000..9cb30a98a --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/axis-ant.jar diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/axis.jar b/spss/handbook/clients/webservice/lib/axis-1_1/axis.jarBinary files differ new file mode 100644 index 000000000..869ee16f5 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/axis.jar diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/commons-discovery.jar b/spss/handbook/clients/webservice/lib/axis-1_1/commons-discovery.jarBinary files differ new file mode 100644 index 000000000..b88554847 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/commons-discovery.jar diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/commons-logging-api.jar b/spss/handbook/clients/webservice/lib/axis-1_1/commons-logging-api.jarBinary files differ new file mode 100644 index 000000000..ade9a13c7 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/commons-logging-api.jar diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/commons-logging.jar b/spss/handbook/clients/webservice/lib/axis-1_1/commons-logging.jarBinary files differ new file mode 100644 index 000000000..b73a80fab --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/commons-logging.jar diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/jaxrpc.jar b/spss/handbook/clients/webservice/lib/axis-1_1/jaxrpc.jarBinary files differ new file mode 100644 index 000000000..5f6a56f02 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/jaxrpc.jar diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/log4j-1.2.8.jar b/spss/handbook/clients/webservice/lib/axis-1_1/log4j-1.2.8.jarBinary files differ new file mode 100644 index 000000000..493a3ccc1 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/log4j-1.2.8.jar diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/saaj.jar b/spss/handbook/clients/webservice/lib/axis-1_1/saaj.jarBinary files differ new file mode 100644 index 000000000..f2242abe5 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/saaj.jar diff --git a/spss/handbook/clients/webservice/lib/axis-1_1/wsdl4j.jar b/spss/handbook/clients/webservice/lib/axis-1_1/wsdl4j.jarBinary files differ new file mode 100644 index 000000000..820abd082 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/axis-1_1/wsdl4j.jar diff --git a/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jcert.jar b/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jcert.jarBinary files differ new file mode 100644 index 000000000..d33134214 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jcert.jar diff --git a/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jnet.jar b/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jnet.jarBinary files differ new file mode 100644 index 000000000..e1d340093 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jnet.jar diff --git a/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jsse.jar b/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jsse.jarBinary files differ new file mode 100644 index 000000000..123188c5e --- /dev/null +++ b/spss/handbook/clients/webservice/lib/jsse-1_0_3/jsse-1_0_3.jsse.jar diff --git a/spss/handbook/clients/webservice/lib/xerces-j-2.4.0/xercesImpl.jar b/spss/handbook/clients/webservice/lib/xerces-j-2.4.0/xercesImpl.jarBinary files differ new file mode 100644 index 000000000..bff9af0c4 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/xerces-j-2.4.0/xercesImpl.jar diff --git a/spss/handbook/clients/webservice/lib/xerces-j-2.4.0/xmlParserAPIs.jar b/spss/handbook/clients/webservice/lib/xerces-j-2.4.0/xmlParserAPIs.jarBinary files differ new file mode 100644 index 000000000..6ba4ff805 --- /dev/null +++ b/spss/handbook/clients/webservice/lib/xerces-j-2.4.0/xmlParserAPIs.jar diff --git a/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Refs.resp.xml b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Refs.resp.xml new file mode 100644 index 000000000..bad31d170 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Refs.resp.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignatureEnvironment><doc:XMLDocument xmlns:doc="urn:document"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-2" URI="#xpointer(id('signed-data-1-2-1')/node())"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>A8ml6/aZKCmj1hONwvLItIwGHoc=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-3" URI="#xpointer(id('signed-data-1-3-1')/node())"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#base64"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>0P878Dsmtxv5goj+6KgNmj6S/EE=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-4" URI="#xpointer(id('signed-data-1-4-1')/node())"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#base64"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>0P878Dsmtxv5goj+6KgNmj6S/EE=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-6" URI="NichtAufloesbareReferenz1"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>2b83+NbXDFijHzz+sH0T7fM36sA=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-7" URI="http://localhost:8080/referencedData/Text.txt"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>0P878Dsmtxv5goj+6KgNmj6S/EE=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-8" URI="NichtAufloesbareReferenz2"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>0P878Dsmtxv5goj+6KgNmj6S/EE=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-9" URI=""><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>2b83+NbXDFijHzz+sH0T7fM36sA=</dsig:DigestValue></dsig:Reference><dsig:Reference Type="http://www.w3.org/2000/09/xmldsig#Manifest" URI="#dsig-manifest-1-1"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>mNsxUkFoF46XZVBivBo4aasFCTQ=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>kaAiAZgnUMYb3/IV5mmJinrH3et5M+o4OWMhgA3C9SZSPsE+ptWUAPU1VKl1G2AF</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object Id="signed-data-1-2-1"><doc:XMLDocument xmlns:doc="urn:document"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph> +</doc:XMLDocument></dsig:Object><dsig:Object Id="signed-data-1-3-1">RGllc2UgRGF0ZW4gc2luZCByZWluZXIgVGV4dC4=</dsig:Object><dsig:Object Id="signed-data-1-4-1">RGllc2UgRGF0ZW4gc2luZCByZWluZXIgVGV4dC4=</dsig:Object><dsig:Object Id="signed-data-1-1-1">RGllc2UgRGF0ZW4gd2FyZW4gYmFzZTY0IGtvZGllcnQu</dsig:Object><dsig:Object><dsig:Manifest Id="dsig-manifest-1-1"><dsig:Reference Id="reference-1-1" URI="#xpointer(id('signed-data-1-1-1')/node())"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#base64"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>a53jOsL7KbyltpByAK87FoMZphI=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-5" URI="http://localhost:8080/referencedData/Text.b64"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>a53jOsL7KbyltpByAK87FoMZphI=</dsig:DigestValue></dsig:Reference></dsig:Manifest></dsig:Object></dsig:Signature> +</doc:XMLDocument></SignatureEnvironment></CreateXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Refs.xml b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Refs.xml new file mode 100644 index 000000000..f4dd2dbb6 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Refs.xml @@ -0,0 +1,137 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"> +  <KeyIdentifier>KG_allgemein</KeyIdentifier> +  <SingleSignatureInfo SecurityLayerConformity="false"> +    <!--Enveloping Data, direkte Angabe der Daten in base64 kodierter Form; Manifest-Referenz--> +    <DataObjectInfo Structure="enveloping" ChildOfManifest="true"> +      <DataObject> +        <Base64Content>RGllc2UgRGF0ZW4gd2FyZW4gYmFzZTY0IGtvZGllcnQu</Base64Content> +      </DataObject> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>text/plain</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <!--Enveloping Data, direkte Angabe der Daten als XML-Fragment; SignedInfo-Referenz--> +    <DataObjectInfo Structure="enveloping" ChildOfManifest="false"> +      <DataObject> +        <XMLContent><doc:XMLDocument xmlns:doc="urn:document"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph> +</doc:XMLDocument></XMLContent> +      </DataObject> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>application/xml</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <!--Enveloping Data,  Angabe der Daten als Referenz mittels Reference-Attribut, die von MOA aufgelöst wird; SignedInfo-Referenz--> +    <DataObjectInfo Structure="enveloping" ChildOfManifest="false"> +      <DataObject Reference="http://localhost:8080/referencedData/Text.txt"/> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>text/plain</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <!--Enveloping Data,  Angabe der Daten als Referenz mittels LocRefContent, die von MOA aufgelöst wird; SignedInfo-Referenz--> +    <DataObjectInfo Structure="enveloping" ChildOfManifest="false"> +      <DataObject> +        <LocRefContent>http://localhost:8080/referencedData/Text.txt</LocRefContent> +      </DataObject> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>text/plain</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <!--Detached Daten; direkte Angabe der Daten in base64 kodierter Form; Referenzierung für die Signatur muss durch Reference-Attribut angegeben werden; Manifest-Referenz--> +    <DataObjectInfo Structure="detached" ChildOfManifest="true"> +      <DataObject Reference="http://localhost:8080/referencedData/Text.b64"> +        <Base64Content>RGllc2UgRGF0ZW4gd2FyZW4gYmFzZTY0IGtvZGllcnQu</Base64Content> +      </DataObject> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>text/plain</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <!--Detached Daten; direkte Angabe der Daten als XML-Fragment; Referenzierung in der Signatur muss durch Reference-Attribut angegeben werden; SignedInfo-Referenz--> +    <DataObjectInfo Structure="detached" ChildOfManifest="false"> +      <DataObject Reference="NichtAufloesbareReferenz1"> +        <XMLContent><doc:XMLDocument xmlns:doc="urn:document"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph> +</doc:XMLDocument></XMLContent> +      </DataObject> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>application/xml</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <!--Detached Daten;Angabe der Daten als Referenz über das Reference-Attribut, die von MOA aufgelöst wird; Referenzierung für die Signatur muss durch Reference-Attribut angegeben werden; SignedInfo-Referenz--> +    <DataObjectInfo Structure="detached" ChildOfManifest="false"> +      <DataObject Reference="http://localhost:8080/referencedData/Text.txt"> +      </DataObject> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>text/plain</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <!--Detached Daten;Angabe der Daten als Referenz mittels LocRefContent, die von MOA aufgelöst wird; Referenzierung für die Signatur muss durch Reference-Attribut angegeben werden; SignedInfo-Referenz--> +    <DataObjectInfo Structure="detached" ChildOfManifest="false"> +      <DataObject Reference="NichtAufloesbareReferenz2"> +        <LocRefContent>http://localhost:8080/referencedData/Text.txt</LocRefContent> +      </DataObject> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>text/plain</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <!--Detached Daten, Verweis auf jenes Dokument, das die Signatur beinhalten wird; Angabe der Daten als Referenz über das Reference-Attribut, die von MOA aufgelöst wird; Referenzierung für die Signatur muss durch Reference-Attribut angegeben werden; SignedInfo-Referenz--> +    <DataObjectInfo Structure="detached"> +      <DataObject Reference=""/> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <dsig:Transforms> +            <dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/> +          </dsig:Transforms> +          <FinalDataMetaInfo> +            <MimeType>application/xml</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <CreateSignatureInfo> +      <CreateSignatureEnvironment> +        <LocRefContent>http://localhost:8080/referencedData/XMLDocument.xml</LocRefContent> +      </CreateSignatureEnvironment> +      <CreateSignatureEnvironmentProfile> +        <CreateSignatureLocation Index="4" xmlns:doc="urn:document">/doc:XMLDocument</CreateSignatureLocation> +      </CreateSignatureEnvironmentProfile> +    </CreateSignatureInfo> +  </SingleSignatureInfo> +</CreateXMLSignatureRequest>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Simple.resp.xml b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Simple.resp.xml new file mode 100644 index 000000000..edcb03c09 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Simple.resp.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignatureEnvironment><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI="#xpointer(id('signed-data-1-1-1')/node())"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>tLODyeiWFbAkQKwhrR23jtcgu4k=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>VEjXB6+geUL16oTPDVx5lcQliGl/oyVobug3BVxVwhu8CU7WK65moTcTuo/CL2hQ</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object Id="signed-data-1-1-1">Diese Daten werden signiert.</dsig:Object></dsig:Signature></SignatureEnvironment></CreateXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Simple.xml b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Simple.xml new file mode 100644 index 000000000..3344b4709 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Simple.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"> +	<KeyIdentifier>KG_allgemein</KeyIdentifier> +	<SingleSignatureInfo SecurityLayerConformity="false"> +		<DataObjectInfo Structure="enveloping"> +			<DataObject> +				<XMLContent>Diese Daten werden signiert.</XMLContent> +			</DataObject> +			<CreateTransformsInfoProfile> +				<CreateTransformsInfo> +					<FinalDataMetaInfo> +						<MimeType>text/plain</MimeType> +					</FinalDataMetaInfo> +				</CreateTransformsInfo> +			</CreateTransformsInfoProfile> +		</DataObjectInfo> +	</SingleSignatureInfo> +</CreateXMLSignatureRequest> + diff --git a/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Supplements.resp.xml b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Supplements.resp.xml new file mode 100644 index 000000000..def0daf25 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Supplements.resp.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignatureEnvironment><doc:XMLDocument xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:doc="urn:document" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:document urn:XMLDocument.xsd"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI="#Para2"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:include href="XMLDocument.Para.xsl"/> +</xsl:stylesheet></dsig:Transform><dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>luM3wUmedTvkMHVedQkA/8otXUE=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>vGVimRmUHwrDR8feQCK1DZ2kyDw0CCrXimJi/yCrIoqSkUKFlKrtAyP2RUBXXjye</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo></dsig:Signature> +</doc:XMLDocument></SignatureEnvironment></CreateXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Supplements.xml b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Supplements.xml new file mode 100644 index 000000000..9144e83f8 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Supplements.xml @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"> +  <KeyIdentifier>KG_allgemein</KeyIdentifier> +  <SingleSignatureInfo SecurityLayerConformity="false"> +    <DataObjectInfo Structure="detached"> +      <DataObject Reference="#Para2"/> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <dsig:Transforms> +            <dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"> +              <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:include href="XMLDocument.Para.xsl"/> +</xsl:stylesheet>               +            </dsig:Transform> +            <dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> +          </dsig:Transforms> +          <FinalDataMetaInfo> +            <MimeType>application/xhtml+xml</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +        <Supplement> +          <Content Reference="XMLDocument.Para.xsl"> +            <LocRefContent>http://localhost:8080/referencedData/XMLDocument.Para.xsl</LocRefContent> +          </Content> +        </Supplement> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <CreateSignatureInfo> +      <CreateSignatureEnvironment Reference="http://localhost:8080/referencedData/XMLDocument.withSchemaHint.xml"/> +      <CreateSignatureEnvironmentProfile> +        <CreateSignatureLocation Index="4" xmlns:doc="urn:document">/doc:XMLDocument</CreateSignatureLocation> +        <Supplement> +          <Content Reference="urn:XMLDocument.xsd"> +            <LocRefContent>http://localhost:8080/referencedData/XMLDocument.xsd</LocRefContent> +          </Content> +        </Supplement> +      </CreateSignatureEnvironmentProfile> +    </CreateSignatureInfo> +  </SingleSignatureInfo> +</CreateXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Transforms.resp.xml b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Transforms.resp.xml new file mode 100644 index 000000000..1d5bd65ea --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Transforms.resp.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignatureEnvironment><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI="http://localhost:8080/referencedData/Text.b64"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#base64"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>a53jOsL7KbyltpByAK87FoMZphI=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-2" URI="http://localhost:8080/referencedData/XMLDocument.xml"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2002/06/xmldsig-filter2"><xp2:XPath Filter="subtract" xmlns:doc="urn:document" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xf2="http://www.w3.org/2002/06/xmldsig-filter2" xmlns:xp2="http://www.w3.org/2002/06/xmldsig-filter2">/doc:XMLDocument/doc:Paragraph[2]</xp2:XPath></dsig:Transform><dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"><xsl:stylesheet version="1.0" xmlns:doc="urn:document" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:output encoding="UTF-8" indent="yes" method="xml"/> +  <xsl:template match="/doc:XMLDocument"> +    <html xmlns="http://www.w3.org/1999/xhtml"> +      <head> +        <title>HTML-Dokument</title> +      </head> +      <body> +        <xsl:for-each select="doc:Paragraph"> +          <p> +            <xsl:value-of select="child::text()"/> +          </p> +        </xsl:for-each> +      </body> +    </html> +  </xsl:template> +</xsl:stylesheet></dsig:Transform><dsig:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>fIPwneCpjVqTXwHMN9DFfx6tJIU=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>kWm9iFL5UngH8uDG6094K99J/WB/PdlqzfI6WtGpJ3jiCTV7mn/mzYWMv09b3vee</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo></dsig:Signature></SignatureEnvironment></CreateXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Transforms.xml b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Transforms.xml new file mode 100644 index 000000000..6375365b2 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/CreateXMLSignatureRequest.Transforms.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"> +  <KeyIdentifier>KG_allgemein</KeyIdentifier> +  <SingleSignatureInfo SecurityLayerConformity="false"> +    <DataObjectInfo Structure="detached"> +      <DataObject Reference="http://localhost:8080/referencedData/Text.b64"/> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <dsig:Transforms> +            <dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#base64"/> +          </dsig:Transforms> +          <FinalDataMetaInfo> +            <MimeType>text/plain</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <DataObjectInfo Structure="detached"> +      <DataObject Reference="http://localhost:8080/referencedData/XMLDocument.xml"/> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <dsig:Transforms> +            <dsig:Transform Algorithm="http://www.w3.org/2002/06/xmldsig-filter2"> +              <xp2:XPath xmlns:xp2="http://www.w3.org/2002/06/xmldsig-filter2" xmlns:doc="urn:document" Filter="subtract">/doc:XMLDocument/doc:Paragraph[2]</xp2:XPath> +            </dsig:Transform> +            <dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="urn:document"> +  <xsl:output encoding="UTF-8" method="xml" indent="yes"/> +  <xsl:template match="/doc:XMLDocument"> +    <html xmlns="http://www.w3.org/1999/xhtml"> +      <head> +        <title>HTML-Dokument</title> +      </head> +      <body> +        <xsl:for-each select="doc:Paragraph"> +          <p> +            <xsl:value-of select="child::text()"/> +          </p> +        </xsl:for-each> +      </body> +    </html> +  </xsl:template> +</xsl:stylesheet></dsig:Transform> +            <dsig:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/> +          </dsig:Transforms> +          <FinalDataMetaInfo> +            <MimeType>application/xhtml+xml</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +  </SingleSignatureInfo> +</CreateXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Extended.resp.xml b/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Extended.resp.xml new file mode 100644 index 000000000..daa22bdb3 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Extended.resp.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyCMSSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignerInfo><dsig:X509Data><dsig:X509SubjectName>serialNumber=615536615920,givenName=Gregor,SN=Karlinger,CN=Gregor Karlinger,C=AT</dsig:X509SubjectName><dsig:X509IssuerSerial><dsig:X509IssuerName>CN=TrustSignTest-Sig-01,OU=TrustSignTest-Sig-01,O=A-Trust Ges. für Sicherheitssysteme im elektr. Datenverkehr GmbH,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>2892</dsig:X509SerialNumber></dsig:X509IssuerSerial><dsig:X509Certificate>MIIFLjCCBBagAwIBAgICC0wwDQYJKoZIhvcNAQEFBQAwgdkxCzAJBgNVBAYTAkFU +MYGLMIGIBgNVBAoegYAAQQAtAFQAcgB1AHMAdAAgAEcAZQBzAC4AIABmAPwAcgAg +AFMAaQBjAGgAZQByAGgAZQBpAHQAcwBzAHkAcwB0AGUAbQBlACAAaQBtACAAZQBs +AGUAawB0AHIALgAgAEQAYQB0AGUAbgB2AGUAcgBrAGUAaAByACAARwBtAGIASDEd +MBsGA1UECxMUVHJ1c3RTaWduVGVzdC1TaWctMDExHTAbBgNVBAMTFFRydXN0U2ln +blRlc3QtU2lnLTAxMB4XDTAzMDgyNzEyMDEyNFoXDTA2MDgyNzEyMDEyNFowZDEL +MAkGA1UEBhMCQVQxGTAXBgNVBAMTEEdyZWdvciBLYXJsaW5nZXIxEjAQBgNVBAQT +CUthcmxpbmdlcjEPMA0GA1UEKhMGR3JlZ29yMRUwEwYDVQQFEww2MTU1MzY2MTU5 +MjAwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAKDSK1XaYK0Ydbk6V58g7QzQ +Ysk0A6C2JyhiZy3078DJ1EkwzBMVejTNq1e9wp+BmeZ2YpiftNyRFfu/Gg8ksOUQ +2oCn9A9pZLUGvtajA3aL8f182GQODRqQmelvYSUL/u9vAChOlcT+UEqj5jW4xjd4 +XsCotX4Kz+ofkD+SAlf1AgMBAAGjggH2MIIB8jATBgNVHSMEDDAKgAhKfsjmnWR0 +6TA+BggrBgEFBQcBAwEB/wQvMC0wCAYGBACORgEBMBUGBgQAjkYBAjALEwNFVVIC +AQACAQAwCgYIKwYBBQUHCwEwgYIGCCsGAQUFBwEBBHYwdDAvBggrBgEFBQcwAYYj +aHR0cDovL29jc3AtdGVzdC5hLXRydXN0LmF0OjgyL29jc3AwQQYIKwYBBQUHMAKG +NWh0dHA6Ly93d3cuYS10cnVzdC5hdC9jZXJ0cy9UcnVzdFNpZ25UZXN0LVNpZy0w +MWMuY3J0MFEGA1UdIARKMEgwPAYGKigAEQEDMDIwMAYIKwYBBQUHAgEWJGh0dHA6 +Ly93d3cuYS10cnVzdC5hdC9kb2NzL1RydXN0VGVzdDAIBgYEAIswAQEwbgYDVR0f +BGcwZTBjoGGgX4ZdbGRhcDovL2xkYXAtdGVzdC5hLXRydXN0LmF0L291PVRydXN0 +U2lnblRlc3QtU2lnLTAxLG89QS1UcnVzdCxjPUFUP2NlcnRpZmljYXRlcmV2b2Nh +dGlvbmxpc3Q/MBEGA1UdDgQKBAhNa9QR1H4T3zAOBgNVHQ8BAf8EBAMCBsAwJQYD +VR0RBB4wHIEaZ3JlZ29yLmthcmxpbmdlckBjaW8uZ3YuYXQwCQYDVR0TBAIwADAN +BgkqhkiG9w0BAQUFAAOCAQEALi2DEl6whJsiQF+bsNVR8CQhXg6ZuzTGlPhyCBum +765Y5gMRLEfAx2D8Wv4XXPHasAxZ/NKZRwbfLWN7IxPeVHF+vCShlXmYGWVj75fE +EGStIKyULqZB7jOJdsFHNdvp8yQaexR9olO3neXjrFmcXFVhpZFJomBH6JEL0uRa +LsPlN97OTa1NKkdj92SX8IkcV2k9yQ3Nl2KgicZDlxdYtSDGh9P0KddJZZJTRAdm +ixWb4Y2cGkRDhXoHzvHcZQ7eqJYHPapm3NTZ428I7LCKma8859rMwRSNTN14yIVL +KkgBtxvmstGVa33Ki53LBkSSuBMH3Pa+4xbnYSkJA4phaA==</dsig:X509Certificate><QualifiedCertificate/></dsig:X509Data></SignerInfo><SignatureCheck><Code>0</Code></SignatureCheck><CertificateCheck><Code>1</Code></CertificateCheck></VerifyCMSSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Extended.xml b/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Extended.xml new file mode 100644 index 000000000..16e961b96 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Extended.xml @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyCMSSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" Signatories="1"> +  <DateTime>2004-08-17T08:00:00+02:00</DateTime> +  <CMSSignature>MIIHiwYJKoZIhvcNAQcCoIIHfDCCB3gCAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHAaCCBTIw +ggUuMIIEFqADAgECAgILTDANBgkqhkiG9w0BAQUFADCB2TELMAkGA1UEBhMCQVQxgYswgYgGA1UE +Ch6BgABBAC0AVAByAHUAcwB0ACAARwBlAHMALgAgAGYA/AByACAAUwBpAGMAaABlAHIAaABlAGkA +dABzAHMAeQBzAHQAZQBtAGUAIABpAG0AIABlAGwAZQBrAHQAcgAuACAARABhAHQAZQBuAHYAZQBy +AGsAZQBoAHIAIABHAG0AYgBIMR0wGwYDVQQLExRUcnVzdFNpZ25UZXN0LVNpZy0wMTEdMBsGA1UE +AxMUVHJ1c3RTaWduVGVzdC1TaWctMDEwHhcNMDMwODI3MTIwMTI0WhcNMDYwODI3MTIwMTI0WjBk +MQswCQYDVQQGEwJBVDEZMBcGA1UEAxMQR3JlZ29yIEthcmxpbmdlcjESMBAGA1UEBBMJS2FybGlu +Z2VyMQ8wDQYDVQQqEwZHcmVnb3IxFTATBgNVBAUTDDYxNTUzNjYxNTkyMDCBnzANBgkqhkiG9w0B +AQEFAAOBjQAwgYkCgYEAoNIrVdpgrRh1uTpXnyDtDNBiyTQDoLYnKGJnLfTvwMnUSTDMExV6NM2r +V73Cn4GZ5nZimJ+03JEV+78aDySw5RDagKf0D2lktQa+1qMDdovx/XzYZA4NGpCZ6W9hJQv+728A +KE6VxP5QSqPmNbjGN3hewKi1fgrP6h+QP5ICV/UCAwEAAaOCAfYwggHyMBMGA1UdIwQMMAqACEp+ +yOadZHTpMD4GCCsGAQUFBwEDAQH/BC8wLTAIBgYEAI5GAQEwFQYGBACORgECMAsTA0VVUgIBAAIB +ADAKBggrBgEFBQcLATCBggYIKwYBBQUHAQEEdjB0MC8GCCsGAQUFBzABhiNodHRwOi8vb2NzcC10 +ZXN0LmEtdHJ1c3QuYXQ6ODIvb2NzcDBBBggrBgEFBQcwAoY1aHR0cDovL3d3dy5hLXRydXN0LmF0 +L2NlcnRzL1RydXN0U2lnblRlc3QtU2lnLTAxYy5jcnQwUQYDVR0gBEowSDA8BgYqKAARAQMwMjAw +BggrBgEFBQcCARYkaHR0cDovL3d3dy5hLXRydXN0LmF0L2RvY3MvVHJ1c3RUZXN0MAgGBgQAizAB +ATBuBgNVHR8EZzBlMGOgYaBfhl1sZGFwOi8vbGRhcC10ZXN0LmEtdHJ1c3QuYXQvb3U9VHJ1c3RT +aWduVGVzdC1TaWctMDEsbz1BLVRydXN0LGM9QVQ/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdD8w +EQYDVR0OBAoECE1r1BHUfhPfMA4GA1UdDwEB/wQEAwIGwDAlBgNVHREEHjAcgRpncmVnb3Iua2Fy +bGluZ2VyQGNpby5ndi5hdDAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBBQUAA4IBAQAuLYMSXrCEmyJA +X5uw1VHwJCFeDpm7NMaU+HIIG6bvrljmAxEsR8DHYPxa/hdc8dqwDFn80plHBt8tY3sjE95UcX68 +JKGVeZgZZWPvl8QQZK0grJQupkHuM4l2wUc12+nzJBp7FH2iU7ed5eOsWZxcVWGlkUmiYEfokQvS +5Fouw+U33s5NrU0qR2P3ZJfwiRxXaT3JDc2XYqCJxkOXF1i1IMaH0/Qp10llklNEB2aLFZvhjZwa +REOFegfO8dxlDt6olgc9qmbc1NnjbwjssIqZrzzn2szBFI1M3XjIhUsqSAG3G+ay0ZVrfcqLncsG +RJK4Ewfc9r7jFudhKQkDimFoMYICITCCAh0CAQEwgeAwgdkxCzAJBgNVBAYTAkFUMYGLMIGIBgNV +BAoegYAAQQAtAFQAcgB1AHMAdAAgAEcAZQBzAC4AIABmAPwAcgAgAFMAaQBjAGgAZQByAGgAZQBp +AHQAcwBzAHkAcwB0AGUAbQBlACAAaQBtACAAZQBsAGUAawB0AHIALgAgAEQAYQB0AGUAbgB2AGUA +cgBrAGUAaAByACAARwBtAGIASDEdMBsGA1UECxMUVHJ1c3RTaWduVGVzdC1TaWctMDExHTAbBgNV +BAMTFFRydXN0U2lnblRlc3QtU2lnLTAxAgILTDAJBgUrDgMCGgUAoIGXMCMGCSqGSIb3DQEJBDEW +BBRrneM6wvspvKW2kHIArzsWgxmmEjAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMCkGCyqGSIb3 +DQEJEAIEMRowGAwLdGV4dC9wbGFpbhsGCSqGSIb3DQEHATArBgsqhkiG9w0BCRACEzEcMBowGDAW +BBQdhdZ+dQSz53K2vT9KOGCxp6+qIDANBgkqhkiG9w0BAQEFAASBgFTEY4mMXQx2fNk9zo64MRxI +mS38vuD7W7LjBoUQ/w6mPi60kiqA/Pnf5I7fvM2epuo4xHpft1diuTY0fa9VqSv+q13Lr1x+l3ON +oxX27oCPLcJq6sFipZj50Bx5BHhgTX+59cNIT3eTRLenBzrJ/ccNd5OLqgkfiwsvqSk48lou</CMSSignature> +  <DataObject> +    <Content> +      <Base64Content>RGllc2UgRGF0ZW4gd2FyZW4gYmFzZTY0IGtvZGllcnQu</Base64Content> +    </Content> +  </DataObject> +  <TrustProfileID>Test-Signaturdienste</TrustProfileID> +</VerifyCMSSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Simple.resp.xml b/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Simple.resp.xml new file mode 100644 index 000000000..daa22bdb3 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Simple.resp.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyCMSSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignerInfo><dsig:X509Data><dsig:X509SubjectName>serialNumber=615536615920,givenName=Gregor,SN=Karlinger,CN=Gregor Karlinger,C=AT</dsig:X509SubjectName><dsig:X509IssuerSerial><dsig:X509IssuerName>CN=TrustSignTest-Sig-01,OU=TrustSignTest-Sig-01,O=A-Trust Ges. für Sicherheitssysteme im elektr. Datenverkehr GmbH,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>2892</dsig:X509SerialNumber></dsig:X509IssuerSerial><dsig:X509Certificate>MIIFLjCCBBagAwIBAgICC0wwDQYJKoZIhvcNAQEFBQAwgdkxCzAJBgNVBAYTAkFU +MYGLMIGIBgNVBAoegYAAQQAtAFQAcgB1AHMAdAAgAEcAZQBzAC4AIABmAPwAcgAg +AFMAaQBjAGgAZQByAGgAZQBpAHQAcwBzAHkAcwB0AGUAbQBlACAAaQBtACAAZQBs +AGUAawB0AHIALgAgAEQAYQB0AGUAbgB2AGUAcgBrAGUAaAByACAARwBtAGIASDEd +MBsGA1UECxMUVHJ1c3RTaWduVGVzdC1TaWctMDExHTAbBgNVBAMTFFRydXN0U2ln +blRlc3QtU2lnLTAxMB4XDTAzMDgyNzEyMDEyNFoXDTA2MDgyNzEyMDEyNFowZDEL +MAkGA1UEBhMCQVQxGTAXBgNVBAMTEEdyZWdvciBLYXJsaW5nZXIxEjAQBgNVBAQT +CUthcmxpbmdlcjEPMA0GA1UEKhMGR3JlZ29yMRUwEwYDVQQFEww2MTU1MzY2MTU5 +MjAwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAKDSK1XaYK0Ydbk6V58g7QzQ +Ysk0A6C2JyhiZy3078DJ1EkwzBMVejTNq1e9wp+BmeZ2YpiftNyRFfu/Gg8ksOUQ +2oCn9A9pZLUGvtajA3aL8f182GQODRqQmelvYSUL/u9vAChOlcT+UEqj5jW4xjd4 +XsCotX4Kz+ofkD+SAlf1AgMBAAGjggH2MIIB8jATBgNVHSMEDDAKgAhKfsjmnWR0 +6TA+BggrBgEFBQcBAwEB/wQvMC0wCAYGBACORgEBMBUGBgQAjkYBAjALEwNFVVIC +AQACAQAwCgYIKwYBBQUHCwEwgYIGCCsGAQUFBwEBBHYwdDAvBggrBgEFBQcwAYYj +aHR0cDovL29jc3AtdGVzdC5hLXRydXN0LmF0OjgyL29jc3AwQQYIKwYBBQUHMAKG +NWh0dHA6Ly93d3cuYS10cnVzdC5hdC9jZXJ0cy9UcnVzdFNpZ25UZXN0LVNpZy0w +MWMuY3J0MFEGA1UdIARKMEgwPAYGKigAEQEDMDIwMAYIKwYBBQUHAgEWJGh0dHA6 +Ly93d3cuYS10cnVzdC5hdC9kb2NzL1RydXN0VGVzdDAIBgYEAIswAQEwbgYDVR0f +BGcwZTBjoGGgX4ZdbGRhcDovL2xkYXAtdGVzdC5hLXRydXN0LmF0L291PVRydXN0 +U2lnblRlc3QtU2lnLTAxLG89QS1UcnVzdCxjPUFUP2NlcnRpZmljYXRlcmV2b2Nh +dGlvbmxpc3Q/MBEGA1UdDgQKBAhNa9QR1H4T3zAOBgNVHQ8BAf8EBAMCBsAwJQYD +VR0RBB4wHIEaZ3JlZ29yLmthcmxpbmdlckBjaW8uZ3YuYXQwCQYDVR0TBAIwADAN +BgkqhkiG9w0BAQUFAAOCAQEALi2DEl6whJsiQF+bsNVR8CQhXg6ZuzTGlPhyCBum +765Y5gMRLEfAx2D8Wv4XXPHasAxZ/NKZRwbfLWN7IxPeVHF+vCShlXmYGWVj75fE +EGStIKyULqZB7jOJdsFHNdvp8yQaexR9olO3neXjrFmcXFVhpZFJomBH6JEL0uRa +LsPlN97OTa1NKkdj92SX8IkcV2k9yQ3Nl2KgicZDlxdYtSDGh9P0KddJZZJTRAdm +ixWb4Y2cGkRDhXoHzvHcZQ7eqJYHPapm3NTZ428I7LCKma8859rMwRSNTN14yIVL +KkgBtxvmstGVa33Ki53LBkSSuBMH3Pa+4xbnYSkJA4phaA==</dsig:X509Certificate><QualifiedCertificate/></dsig:X509Data></SignerInfo><SignatureCheck><Code>0</Code></SignatureCheck><CertificateCheck><Code>1</Code></CertificateCheck></VerifyCMSSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Simple.xml b/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Simple.xml new file mode 100644 index 000000000..d41b0e278 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyCMSSignatureRequest.Simple.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyCMSSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#"> +  <CMSSignature>MIIHsAYJKoZIhvcNAQcCoIIHoTCCB50CAQExCzAJBgUrDgMCGgUAMDAGCSqGSIb3DQEHAaAjBCFE +aWVzZSBEYXRlbiB3YXJlbiBiYXNlNjQga29kaWVydC6gggUyMIIFLjCCBBagAwIBAgICC0wwDQYJ +KoZIhvcNAQEFBQAwgdkxCzAJBgNVBAYTAkFUMYGLMIGIBgNVBAoegYAAQQAtAFQAcgB1AHMAdAAg +AEcAZQBzAC4AIABmAPwAcgAgAFMAaQBjAGgAZQByAGgAZQBpAHQAcwBzAHkAcwB0AGUAbQBlACAA +aQBtACAAZQBsAGUAawB0AHIALgAgAEQAYQB0AGUAbgB2AGUAcgBrAGUAaAByACAARwBtAGIASDEd +MBsGA1UECxMUVHJ1c3RTaWduVGVzdC1TaWctMDExHTAbBgNVBAMTFFRydXN0U2lnblRlc3QtU2ln +LTAxMB4XDTAzMDgyNzEyMDEyNFoXDTA2MDgyNzEyMDEyNFowZDELMAkGA1UEBhMCQVQxGTAXBgNV +BAMTEEdyZWdvciBLYXJsaW5nZXIxEjAQBgNVBAQTCUthcmxpbmdlcjEPMA0GA1UEKhMGR3JlZ29y +MRUwEwYDVQQFEww2MTU1MzY2MTU5MjAwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAKDSK1Xa +YK0Ydbk6V58g7QzQYsk0A6C2JyhiZy3078DJ1EkwzBMVejTNq1e9wp+BmeZ2YpiftNyRFfu/Gg8k +sOUQ2oCn9A9pZLUGvtajA3aL8f182GQODRqQmelvYSUL/u9vAChOlcT+UEqj5jW4xjd4XsCotX4K +z+ofkD+SAlf1AgMBAAGjggH2MIIB8jATBgNVHSMEDDAKgAhKfsjmnWR06TA+BggrBgEFBQcBAwEB +/wQvMC0wCAYGBACORgEBMBUGBgQAjkYBAjALEwNFVVICAQACAQAwCgYIKwYBBQUHCwEwgYIGCCsG +AQUFBwEBBHYwdDAvBggrBgEFBQcwAYYjaHR0cDovL29jc3AtdGVzdC5hLXRydXN0LmF0OjgyL29j +c3AwQQYIKwYBBQUHMAKGNWh0dHA6Ly93d3cuYS10cnVzdC5hdC9jZXJ0cy9UcnVzdFNpZ25UZXN0 +LVNpZy0wMWMuY3J0MFEGA1UdIARKMEgwPAYGKigAEQEDMDIwMAYIKwYBBQUHAgEWJGh0dHA6Ly93 +d3cuYS10cnVzdC5hdC9kb2NzL1RydXN0VGVzdDAIBgYEAIswAQEwbgYDVR0fBGcwZTBjoGGgX4Zd +bGRhcDovL2xkYXAtdGVzdC5hLXRydXN0LmF0L291PVRydXN0U2lnblRlc3QtU2lnLTAxLG89QS1U +cnVzdCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/MBEGA1UdDgQKBAhNa9QR1H4T3zAO +BgNVHQ8BAf8EBAMCBsAwJQYDVR0RBB4wHIEaZ3JlZ29yLmthcmxpbmdlckBjaW8uZ3YuYXQwCQYD +VR0TBAIwADANBgkqhkiG9w0BAQUFAAOCAQEALi2DEl6whJsiQF+bsNVR8CQhXg6ZuzTGlPhyCBum +765Y5gMRLEfAx2D8Wv4XXPHasAxZ/NKZRwbfLWN7IxPeVHF+vCShlXmYGWVj75fEEGStIKyULqZB +7jOJdsFHNdvp8yQaexR9olO3neXjrFmcXFVhpZFJomBH6JEL0uRaLsPlN97OTa1NKkdj92SX8Ikc +V2k9yQ3Nl2KgicZDlxdYtSDGh9P0KddJZZJTRAdmixWb4Y2cGkRDhXoHzvHcZQ7eqJYHPapm3NTZ +428I7LCKma8859rMwRSNTN14yIVLKkgBtxvmstGVa33Ki53LBkSSuBMH3Pa+4xbnYSkJA4phaDGC +AiEwggIdAgEBMIHgMIHZMQswCQYDVQQGEwJBVDGBizCBiAYDVQQKHoGAAEEALQBUAHIAdQBzAHQA +IABHAGUAcwAuACAAZgD8AHIAIABTAGkAYwBoAGUAcgBoAGUAaQB0AHMAcwB5AHMAdABlAG0AZQAg +AGkAbQAgAGUAbABlAGsAdAByAC4AIABEAGEAdABlAG4AdgBlAHIAawBlAGgAcgAgAEcAbQBiAEgx +HTAbBgNVBAsTFFRydXN0U2lnblRlc3QtU2lnLTAxMR0wGwYDVQQDExRUcnVzdFNpZ25UZXN0LVNp +Zy0wMQICC0wwCQYFKw4DAhoFAKCBlzAjBgkqhkiG9w0BCQQxFgQUa53jOsL7KbyltpByAK87FoMZ +phIwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATApBgsqhkiG9w0BCRACBDEaMBgMC3RleHQvcGxh +aW4bBgkqhkiG9w0BBwEwKwYLKoZIhvcNAQkQAhMxHDAaMBgwFgQUHYXWfnUEs+dytr0/Sjhgsaev +qiAwDQYJKoZIhvcNAQEBBQAEgYBUxGOJjF0MdnzZPc6OuDEcSJkt/L7g+1uy4waFEP8Opj4utJIq +gPz53+SO37zNnqbqOMR6X7dXYrk2NH2vVakr/qtdy69cfpdzjaMV9u6Ajy3CaurBYqWY+dAceQR4 +YE1/ufXDSE93k0S3pwc6yf3HDXeTi6oJH4sLL6kpOPJaLg==</CMSSignature> +  <TrustProfileID>Test-Signaturdienste</TrustProfileID> +</VerifyCMSSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Enveloped.resp.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Enveloped.resp.xml new file mode 100644 index 000000000..f4db026fe --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Enveloped.resp.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignerInfo><dsig:X509Data><dsig:X509SubjectName>CN=Test: Signaturdienst aller Kunden: ECDSA (P192v1),OU=Technik und Standards,O=Stabsstelle IKT-Strategie des Bundes,C=AT</dsig:X509SubjectName><dsig:X509IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></dsig:X509IssuerSerial><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate><PublicAuthority><Code>BKA-IKT</Code></PublicAuthority></dsig:X509Data></SignerInfo><HashInputData PartOf="SignedInfo"><Base64Content>PGRvYzpYTUxEb2N1bWVudCB4bWxuczpkb2M9InVybjpkb2N1bWVudCI+CiAgPGRv +YzpQYXJhZ3JhcGg+SWNoIGJpbiBkZXIgZXJzdGUgQWJzYXR6IGluIGRpZXNlbSBE +b2t1bWVudC48L2RvYzpQYXJhZ3JhcGg+CiAgPGRvYzpQYXJhZ3JhcGggUGFyYUlk +PSJQYXJhMiI+VW5kIGljaCBiaW4gZGVyIHp3ZWl0ZSBBYnNhdHogaW4gZGllc2Vt +IERva3VtZW50LgpJY2ggaGFiZSB3ZWl0ZXJzIGVpbiBlaWdlbmVucyBJRC1BdHRy +aWJ1dCBiZWtvbW1lbi48L2RvYzpQYXJhZ3JhcGg+CjwvZG9jOlhNTERvY3VtZW50Pg==</Base64Content></HashInputData><SignatureCheck><Code>0</Code></SignatureCheck><CertificateCheck><Code>0</Code></CertificateCheck></VerifyXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Enveloped.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Enveloped.xml new file mode 100644 index 000000000..d97e76f78 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Enveloped.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#"> +  <DateTime>2004-08-18T17:00:00+02:00</DateTime> +  <VerifySignatureInfo> +    <VerifySignatureEnvironment Reference="http://localhost:8080/referencedData/XMLDocument.signed.xml"/> +    <VerifySignatureLocation xmlns:doc="urn:document" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">/doc:XMLDocument/dsig:Signature</VerifySignatureLocation> +  </VerifySignatureInfo> +  <ReturnHashInputData/> +  <TrustProfileID>Test-Signaturdienste</TrustProfileID> +</VerifyXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.SigManifest.resp.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.SigManifest.resp.xml new file mode 100644 index 000000000..3798b2706 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.SigManifest.resp.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignerInfo><dsig:X509Data><dsig:X509SubjectName>CN=Test: Signaturdienst aller Kunden: ECDSA (P192v1),OU=Technik und Standards,O=Stabsstelle IKT-Strategie des Bundes,C=AT</dsig:X509SubjectName><dsig:X509IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></dsig:X509IssuerSerial><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate><PublicAuthority><Code>BKA-IKT</Code></PublicAuthority></dsig:X509Data></SignerInfo><ReferenceInputData PartOf="SignedInfo"><XMLContent xml:space="preserve"><doc:Paragraph ParaId="Para2" xmlns:doc="urn:document" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph></XMLContent></ReferenceInputData><ReferenceInputData PartOf="SignedInfo"><XMLContent xml:space="preserve"><dsig:Manifest Id="manifest-1-1" xmlns:doc="urn:document" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dsig:Reference URI="http://localhost:8080/referencedData/XMLDocument.Para.xsl"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>B9nRChTbct68n9h5+Cb2mfNkASI=</dsig:DigestValue></dsig:Reference></dsig:Manifest></XMLContent></ReferenceInputData><ReferenceInputData PartOf="SignedInfo"><XMLContent xml:space="preserve"><etsi:SignedProperties xmlns:doc="urn:document" xmlns:etsi="http://uri.etsi.org/01903/v1.1.1#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><etsi:SignedSignatureProperties><etsi:SigningTime>2004-08-20T12:42:21</etsi:SigningTime><etsi:SigningCertificate><etsi:Cert><etsi:CertDigest><etsi:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><etsi:DigestValue>FOWcAqaHew69LEIDiGuiWVnB0mc=</etsi:DigestValue></etsi:CertDigest><etsi:IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></etsi:IssuerSerial></etsi:Cert></etsi:SigningCertificate><etsi:SignaturePolicyIdentifier><etsi:SignaturePolicyImplied/></etsi:SignaturePolicyIdentifier></etsi:SignedSignatureProperties><etsi:SignedDataObjectProperties><etsi:DataObjectFormat ObjectReference="#reference-1-1"><etsi:MimeType>application/xhtml+xml</etsi:MimeType></etsi:DataObjectFormat></etsi:SignedDataObjectProperties></etsi:SignedProperties></XMLContent></ReferenceInputData><SignatureCheck><Code>0</Code></SignatureCheck><SignatureManifestCheck><Code>0</Code></SignatureManifestCheck><CertificateCheck><Code>0</Code></CertificateCheck></VerifyXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.SigManifest.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.SigManifest.xml new file mode 100644 index 000000000..657beca77 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.SigManifest.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"> +  <VerifySignatureInfo> +    <VerifySignatureEnvironment> +      <XMLContent><doc:XMLDocument xmlns:doc="urn:document" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:document http://localhost:8080/referencedData/XMLDocument.xsd"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI="#Para2"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:include href="http://localhost:8080/referencedData/XMLDocument.Para.xsl"/> +</xsl:stylesheet></dsig:Transform><dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>luM3wUmedTvkMHVedQkA/8otXUE=</dsig:DigestValue></dsig:Reference><dsig:Reference Type="http://www.buergerkarte.at/specifications/Security-Layer/20020225#SignatureManifest" URI="#manifest-1-1"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>1aSV+vFkwG6NZCk5ZUzZV3J4eSo=</dsig:DigestValue></dsig:Reference><dsig:Reference Type="http://uri.etsi.org/01903/v1.1.1#SignedProperties" URI="#xmlns(etsi=http://uri.etsi.org/01903/v1.1.1%23)%20xpointer(id('etsi-signed-1-1')/child::etsi:QualifyingProperties/child::etsi:SignedProperties)"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>Dy1xXsV2LgSFJlGwYiunav1KC7A=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>f1v/vi1S7xiL+7ofWOUqBfoqOy42EnlXYFoTYcaUZaBiAecDvyX9StPRWTUls/j2</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object><dsig:Manifest Id="manifest-1-1"><dsig:Reference URI="http://localhost:8080/referencedData/XMLDocument.Para.xsl"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>B9nRChTbct68n9h5+Cb2mfNkASI=</dsig:DigestValue></dsig:Reference></dsig:Manifest></dsig:Object><dsig:Object Id="etsi-signed-1-1"><etsi:QualifyingProperties Target="#signature-1-1" xmlns:etsi="http://uri.etsi.org/01903/v1.1.1#"><etsi:SignedProperties><etsi:SignedSignatureProperties><etsi:SigningTime>2005-03-29T09:55:29</etsi:SigningTime><etsi:SigningCertificate><etsi:Cert><etsi:CertDigest><etsi:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><etsi:DigestValue>FOWcAqaHew69LEIDiGuiWVnB0mc=</etsi:DigestValue></etsi:CertDigest><etsi:IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></etsi:IssuerSerial></etsi:Cert></etsi:SigningCertificate><etsi:SignaturePolicyIdentifier><etsi:SignaturePolicyImplied/></etsi:SignaturePolicyIdentifier></etsi:SignedSignatureProperties><etsi:SignedDataObjectProperties><etsi:DataObjectFormat ObjectReference="#reference-1-1"><etsi:MimeType>application/xhtml+xml</etsi:MimeType></etsi:DataObjectFormat></etsi:SignedDataObjectProperties></etsi:SignedProperties></etsi:QualifyingProperties></dsig:Object></dsig:Signature> +</doc:XMLDocument></XMLContent> +    </VerifySignatureEnvironment> +    <VerifySignatureLocation xmlns:doc="urn:document">/doc:XMLDocument/dsig:Signature</VerifySignatureLocation> +  </VerifySignatureInfo> +  <SignatureManifestCheckParams ReturnReferenceInputData="true"> +    <ReferenceInfo> +      <VerifyTransformsInfoProfile> +        <dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:include href="http://localhost:8080/referencedData/XMLDocument.Para.xsl"/> +</xsl:stylesheet></dsig:Transform><dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></dsig:Transforms> +        <TransformParameter URI="http://localhost:8080/referencedData/XMLDocument.Para.xsl"/> +      </VerifyTransformsInfoProfile> +      <VerifyTransformsInfoProfile> +        <dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/></dsig:Transforms> +      </VerifyTransformsInfoProfile> +    </ReferenceInfo> +  </SignatureManifestCheckParams> +  <TrustProfileID>Test-Signaturdienste</TrustProfileID> +</VerifyXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Simple.resp.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Simple.resp.xml new file mode 100644 index 000000000..2fab33b20 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Simple.resp.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignerInfo><dsig:X509Data><dsig:X509SubjectName>CN=Test: Signaturdienst aller Kunden: ECDSA (P192v1),OU=Technik und Standards,O=Stabsstelle IKT-Strategie des Bundes,C=AT</dsig:X509SubjectName><dsig:X509IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></dsig:X509IssuerSerial><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate><PublicAuthority><Code>BKA-IKT</Code></PublicAuthority></dsig:X509Data></SignerInfo><SignatureCheck><Code>0</Code></SignatureCheck><CertificateCheck><Code>0</Code></CertificateCheck></VerifyXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Simple.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Simple.xml new file mode 100644 index 000000000..5565601d8 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Simple.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#"> +  <VerifySignatureInfo> +    <VerifySignatureEnvironment> +      <XMLContent><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI="#xpointer(id('signed-data-1-1-1')/node())"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>tLODyeiWFbAkQKwhrR23jtcgu4k=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>VEjXB6+geUL16oTPDVx5lcQliGl/oyVobug3BVxVwhu8CU7WK65moTcTuo/CL2hQ</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object Id="signed-data-1-1-1">Diese Daten werden signiert.</dsig:Object></dsig:Signature></XMLContent></VerifySignatureEnvironment> +    <VerifySignatureLocation xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">/dsig:Signature</VerifySignatureLocation> +  </VerifySignatureInfo> +  <TrustProfileID>Test-Signaturdienste</TrustProfileID> +</VerifyXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.resp.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.resp.xml new file mode 100644 index 000000000..2fab33b20 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.resp.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignerInfo><dsig:X509Data><dsig:X509SubjectName>CN=Test: Signaturdienst aller Kunden: ECDSA (P192v1),OU=Technik und Standards,O=Stabsstelle IKT-Strategie des Bundes,C=AT</dsig:X509SubjectName><dsig:X509IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></dsig:X509IssuerSerial><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate><PublicAuthority><Code>BKA-IKT</Code></PublicAuthority></dsig:X509Data></SignerInfo><SignatureCheck><Code>0</Code></SignatureCheck><CertificateCheck><Code>0</Code></CertificateCheck></VerifyXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.response.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.response.xml new file mode 100644 index 000000000..2fab33b20 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.response.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignerInfo><dsig:X509Data><dsig:X509SubjectName>CN=Test: Signaturdienst aller Kunden: ECDSA (P192v1),OU=Technik und Standards,O=Stabsstelle IKT-Strategie des Bundes,C=AT</dsig:X509SubjectName><dsig:X509IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></dsig:X509IssuerSerial><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate><PublicAuthority><Code>BKA-IKT</Code></PublicAuthority></dsig:X509Data></SignerInfo><SignatureCheck><Code>0</Code></SignatureCheck><CertificateCheck><Code>0</Code></CertificateCheck></VerifyXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.xml new file mode 100644 index 000000000..50ddbc1da --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.Supplements.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#"> +  <VerifySignatureInfo> +    <VerifySignatureEnvironment> +      <XMLContent><doc:XMLDocument xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:doc="urn:document" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:document urn:XMLDocument.xsd"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI="#Para2"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:include href="XMLDocument.Para.xsl"/> +</xsl:stylesheet></dsig:Transform><dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>luM3wUmedTvkMHVedQkA/8otXUE=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>vGVimRmUHwrDR8feQCK1DZ2kyDw0CCrXimJi/yCrIoqSkUKFlKrtAyP2RUBXXjye</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo></dsig:Signature> +</doc:XMLDocument></XMLContent> +    </VerifySignatureEnvironment> +    <VerifySignatureLocation xmlns:doc="urn:document" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">/doc:XMLDocument/dsig:Signature</VerifySignatureLocation> +  </VerifySignatureInfo> +  <SupplementProfile> +    <Content Reference="XMLDocument.Para.xsl"> +      <LocRefContent>http://localhost:8080/referencedData/XMLDocument.Para.xsl</LocRefContent> +    </Content> +  </SupplementProfile> +  <SupplementProfile> +    <Content Reference="urn:XMLDocument.xsd"> +      <XMLContent><xs:schema targetNamespace="urn:document" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:document" elementFormDefault="qualified" attributeFormDefault="unqualified"> +  <xs:element name="XMLDocument"> +    <xs:complexType> +      <xs:sequence> +        <xs:element name="Paragraph" maxOccurs="unbounded"> +          <xs:complexType mixed="true"> +            <xs:attribute name="ParaId" type="xs:ID" use="optional"/> +          </xs:complexType> +        </xs:element> +        <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/> +      </xs:sequence> +    </xs:complexType> +  </xs:element> +</xs:schema> + +</XMLContent> +    </Content> +  </SupplementProfile> +  <TrustProfileID>Test-Signaturdienste</TrustProfileID> +</VerifyXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.XMLDSigManifest.resp.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.XMLDSigManifest.resp.xml new file mode 100644 index 000000000..9d3b6dea7 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.XMLDSigManifest.resp.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignerInfo><dsig:X509Data><dsig:X509SubjectName>CN=Test: Signaturdienst aller Kunden: ECDSA (P192v1),OU=Technik und Standards,O=Stabsstelle IKT-Strategie des Bundes,C=AT</dsig:X509SubjectName><dsig:X509IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></dsig:X509IssuerSerial><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate><PublicAuthority><Code>BKA-IKT</Code></PublicAuthority></dsig:X509Data></SignerInfo><SignatureCheck><Code>0</Code></SignatureCheck><XMLDSIGManifestCheck><Code>0</Code><Info><ReferringSigReference>1</ReferringSigReference></Info></XMLDSIGManifestCheck><CertificateCheck><Code>0</Code></CertificateCheck></VerifyXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.XMLDSigManifest.xml b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.XMLDSigManifest.xml new file mode 100644 index 000000000..a57fbb934 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/VerifyXMLSignatureRequest.XMLDSigManifest.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"> +  <VerifySignatureInfo> +    <VerifySignatureEnvironment> +      <XMLContent><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Type="http://www.w3.org/2000/09/xmldsig#Manifest" URI="#dsig-manifest-1-1"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>nUUaW6OtcsNvV/QhqmkU2QXT1Mw=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>pzI1j60BNsnS+zjXYtXlh109HjJGEMrMzTzkUB54rReOpI1ynNkG2RE7AiOlvpPh</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object Id="signed-data-1-1-1">Diese Daten sind signiert.</dsig:Object><dsig:Object><dsig:Manifest Id="dsig-manifest-1-1"><dsig:Reference Id="reference-1-1" URI="#xpointer(id('signed-data-1-1-1')/node())"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>EYxznGxNRAIcHQeUsj+zsK+uaHA=</dsig:DigestValue></dsig:Reference></dsig:Manifest></dsig:Object></dsig:Signature></XMLContent> +    </VerifySignatureEnvironment> +    <VerifySignatureLocation>//dsig:Signature</VerifySignatureLocation> +  </VerifySignatureInfo> +  <TrustProfileID>Test-Signaturdienste</TrustProfileID> +</VerifyXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.Enveloped.response.xml b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.Enveloped.response.xml new file mode 100644 index 000000000..be2eb37ad --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.Enveloped.response.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignatureEnvironment><doc:XMLDocument xmlns:doc="urn:document"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI=""><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>2b83+NbXDFijHzz+sH0T7fM36sA=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>30zsZMPn1mR5G5oIGJvTRmCik3WuepfZF6AhLwxgJDMJlPQ8rheBWCaKihzXnHaS</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo></dsig:Signature> +</doc:XMLDocument></SignatureEnvironment></CreateXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.Enveloped.xml b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.Enveloped.xml new file mode 100644 index 000000000..7f89028c6 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.Enveloped.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"> +  <KeyIdentifier>KG_allgemein</KeyIdentifier> +  <SingleSignatureInfo SecurityLayerConformity="false"> +    <DataObjectInfo Structure="detached"> +      <DataObject Reference=""/> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <dsig:Transforms> +            <dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/> +          </dsig:Transforms> +          <FinalDataMetaInfo> +            <MimeType>text/xml</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <CreateSignatureInfo> +      <CreateSignatureEnvironment Reference="http://localhost:8080/referencedData/XMLDocument.xml"/> +      <CreateSignatureEnvironmentProfile> +        <CreateSignatureLocation Index="4" xmlns:doc="urn:document">/doc:XMLDocument</CreateSignatureLocation> +      </CreateSignatureEnvironmentProfile> +    </CreateSignatureInfo> +  </SingleSignatureInfo> +</CreateXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.SigManifest.response.xml b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.SigManifest.response.xml new file mode 100644 index 000000000..fb4204a09 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.SigManifest.response.xml @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignatureEnvironment><doc:XMLDocument xmlns:doc="urn:document" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:document http://localhost:8080/referencedData/XMLDocument.xsd"> +  <doc:Paragraph>Ich bin der erste Absatz in diesem Dokument.</doc:Paragraph> +  <doc:Paragraph ParaId="Para2">Und ich bin der zweite Absatz in diesem Dokument. +Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Id="reference-1-1" URI="#Para2"><dsig:Transforms><dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:include href="http://localhost:8080/referencedData/XMLDocument.Para.xsl"/> +</xsl:stylesheet></dsig:Transform><dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></dsig:Transforms><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>luM3wUmedTvkMHVedQkA/8otXUE=</dsig:DigestValue></dsig:Reference><dsig:Reference Type="http://www.buergerkarte.at/specifications/Security-Layer/20020225#SignatureManifest" URI="#manifest-1-1"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>1aSV+vFkwG6NZCk5ZUzZV3J4eSo=</dsig:DigestValue></dsig:Reference><dsig:Reference Type="http://uri.etsi.org/01903/v1.1.1#SignedProperties" URI="#xmlns(etsi=http://uri.etsi.org/01903/v1.1.1%23)%20xpointer(id('etsi-signed-1-1')/child::etsi:QualifyingProperties/child::etsi:SignedProperties)"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>Dy1xXsV2LgSFJlGwYiunav1KC7A=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>f1v/vi1S7xiL+7ofWOUqBfoqOy42EnlXYFoTYcaUZaBiAecDvyX9StPRWTUls/j2</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object><dsig:Manifest Id="manifest-1-1"><dsig:Reference URI="http://localhost:8080/referencedData/XMLDocument.Para.xsl"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>B9nRChTbct68n9h5+Cb2mfNkASI=</dsig:DigestValue></dsig:Reference></dsig:Manifest></dsig:Object><dsig:Object Id="etsi-signed-1-1"><etsi:QualifyingProperties Target="#signature-1-1" xmlns:etsi="http://uri.etsi.org/01903/v1.1.1#"><etsi:SignedProperties><etsi:SignedSignatureProperties><etsi:SigningTime>2005-03-29T09:55:29</etsi:SigningTime><etsi:SigningCertificate><etsi:Cert><etsi:CertDigest><etsi:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><etsi:DigestValue>FOWcAqaHew69LEIDiGuiWVnB0mc=</etsi:DigestValue></etsi:CertDigest><etsi:IssuerSerial><dsig:X509IssuerName>CN=Test CA - Signaturdienste,OU=Technik und Standards,O=Stabstelle IKT-Strategie des Bundes,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>9</dsig:X509SerialNumber></etsi:IssuerSerial></etsi:Cert></etsi:SigningCertificate><etsi:SignaturePolicyIdentifier><etsi:SignaturePolicyImplied/></etsi:SignaturePolicyIdentifier></etsi:SignedSignatureProperties><etsi:SignedDataObjectProperties><etsi:DataObjectFormat ObjectReference="#reference-1-1"><etsi:MimeType>application/xhtml+xml</etsi:MimeType></etsi:DataObjectFormat></etsi:SignedDataObjectProperties></etsi:SignedProperties></etsi:QualifyingProperties></dsig:Object></dsig:Signature> +</doc:XMLDocument></SignatureEnvironment></CreateXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.SigManifest.xml b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.SigManifest.xml new file mode 100644 index 000000000..b19f66b61 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.SigManifest.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"> +  <KeyIdentifier>KG_allgemein</KeyIdentifier> +  <SingleSignatureInfo SecurityLayerConformity="true"> +    <DataObjectInfo Structure="detached"> +      <DataObject Reference="#Para2"/> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <dsig:Transforms> +            <dsig:Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116"> +              <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +  <xsl:include href="http://localhost:8080/referencedData/XMLDocument.Para.xsl"/> +</xsl:stylesheet>               +            </dsig:Transform> +            <dsig:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> +          </dsig:Transforms> +          <FinalDataMetaInfo> +            <MimeType>application/xhtml+xml</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +    <CreateSignatureInfo> +      <CreateSignatureEnvironment Reference="http://localhost:8080/referencedData/XMLDocument.withResolvableSchemaHint.xml"/> +      <CreateSignatureEnvironmentProfile> +        <CreateSignatureLocation Index="4" xmlns:doc="urn:document">/doc:XMLDocument</CreateSignatureLocation> +      </CreateSignatureEnvironmentProfile> +    </CreateSignatureInfo> +  </SingleSignatureInfo> +</CreateXMLSignatureRequest> diff --git a/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.XMLDSigManifest.response.xml b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.XMLDSigManifest.response.xml new file mode 100644 index 000000000..a465e2126 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.XMLDSigManifest.response.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureResponse xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><SignatureEnvironment><dsig:Signature Id="signature-1-1" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"><dsig:SignedInfo><dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><dsig:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1"/><dsig:Reference Type="http://www.w3.org/2000/09/xmldsig#Manifest" URI="#dsig-manifest-1-1"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>nUUaW6OtcsNvV/QhqmkU2QXT1Mw=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>pzI1j60BNsnS+zjXYtXlh109HjJGEMrMzTzkUB54rReOpI1ynNkG2RE7AiOlvpPh</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID+DCCA2WgAwIBAgIBCTAJBgUrDgMCHQUAMH8xCzAJBgNVBAYTAkFUMSwwKgYD +VQQKEyNTdGFic3RlbGxlIElLVC1TdHJhdGVnaWUgZGVzIEJ1bmRlczEeMBwGA1UE +CxMVVGVjaG5payB1bmQgU3RhbmRhcmRzMSIwIAYDVQQDExlUZXN0IENBIC0gU2ln +bmF0dXJkaWVuc3RlMB4XDTA0MDgwNDA4MjM0OFoXDTA3MDgwNDA4MjM0OFowgZgx +CzAJBgNVBAYTAkFUMS0wKwYDVQQKEyRTdGFic3N0ZWxsZSBJS1QtU3RyYXRlZ2ll +IGRlcyBCdW5kZXMxHjAcBgNVBAsTFVRlY2huaWsgdW5kIFN0YW5kYXJkczE6MDgG +A1UEAxMxVGVzdDogU2lnbmF0dXJkaWVuc3QgYWxsZXIgS3VuZGVuOiBFQ0RTQSAo +UDE5MnYxKTCB8zCBvAYHKoZIzj0CATCBsAIBATAkBgcqhkjOPQEBAhkA//////// +/////////////v//////////MDQEGP////////////////////7//////////AQY +ZCEFGeWcgOcPp+mrciQwSf643uzBRrmxBDEEGI2oDrAwkPZ8vyDrQ6GIAPT/Cv2C +/xASBxkrlf/I2nhjEBHtayTN1XP5d6EeeUgRAhkA////////////////md74NhRr +ybG00igxAgEBAzIABNHWY9lQOE1zgmpcpjTg2WIg6qgEsGhpXELPinJoMPDVheTv +2BZPG42YJsNfvWgC06OCARwwggEYMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E +AjAAMB0GA1UdDgQWBBRHH5EXnrWosCmIa+JyEM5seMxFVzBdBgNVHSAEVjBUMFIG +DCsGAQQBlRIBAgMBATBCMEAGCCsGAQUFBwICMDQaMkRpZXNlcyBaZXJ0aWZpa2F0 +IGlzdCBudXIgZvxyIFRlc3R6d2Vja2UgZ2VlaWduZXQuMEMGA1UdHwQ8MDowOKA2 +oDSGMmh0dHA6Ly9sYWJzLmNpby5ndi5hdC90ZW1wL2NybHMvc2lnbmF0dXJkaWVu +c3QuY3JsMBQGByooAAoBAQEECQwHQktBLUlLVDAfBgNVHSMEGDAWgBRAl0P5fWaw +vf59+uxGcYY9wffZPTAJBgUrDgMCHQUAA4GBAIMKUsnajgfBtpHeDdMdQMLA8fdt +lluezDOM78WYYSFURP04QZk5iHkShzptgZCF5Y/T4an3dC3SnytL67LJvEoKUyja +iTMLo7650xRTvAjTaMJ+nly/wTRYJKplOLXKWj3WwfObMHXdsDE8NJmpJSRE7Sw7 ++tj+UiTiNNSaXirq</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object Id="signed-data-1-1-1">Diese Daten sind signiert.</dsig:Object><dsig:Object><dsig:Manifest Id="dsig-manifest-1-1"><dsig:Reference Id="reference-1-1" URI="#xpointer(id('signed-data-1-1-1')/node())"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>EYxznGxNRAIcHQeUsj+zsK+uaHA=</dsig:DigestValue></dsig:Reference></dsig:Manifest></dsig:Object></dsig:Signature></SignatureEnvironment></CreateXMLSignatureResponse>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.XMLDSigManifest.xml b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.XMLDSigManifest.xml new file mode 100644 index 000000000..da7e82025 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/signatures2bverified/CreateXMLSignatureRequest.VerifyXML.XMLDSigManifest.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<CreateXMLSignatureRequest xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#"> +  <KeyIdentifier>KG_allgemein</KeyIdentifier> +  <SingleSignatureInfo SecurityLayerConformity="false"> +    <DataObjectInfo Structure="enveloping" ChildOfManifest="true"> +      <DataObject> +        <XMLContent>Diese Daten sind signiert.</XMLContent> +      </DataObject> +      <CreateTransformsInfoProfile> +        <CreateTransformsInfo> +          <FinalDataMetaInfo> +            <MimeType>text/plain</MimeType> +          </FinalDataMetaInfo> +        </CreateTransformsInfo> +      </CreateTransformsInfoProfile> +    </DataObjectInfo> +  </SingleSignatureInfo> +</CreateXMLSignatureRequest>
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/resources/requests/transformResults/CreateXMLSignatureRequest.Transforms.hashinput.ref2.txt b/spss/handbook/clients/webservice/resources/requests/transformResults/CreateXMLSignatureRequest.Transforms.hashinput.ref2.txt new file mode 100644 index 000000000..f8527bb6d --- /dev/null +++ b/spss/handbook/clients/webservice/resources/requests/transformResults/CreateXMLSignatureRequest.Transforms.hashinput.ref2.txt @@ -0,0 +1,8 @@ +<html xmlns="http://www.w3.org/1999/xhtml" xmlns:doc="urn:document"> +<head> +<title>HTML-Dokument</title> +</head> +<body> +<p>Ich bin der erste Absatz in diesem Dokument.</p> +</body> +</html> diff --git a/spss/handbook/clients/webservice/resources/sslKeys/customer1/moa-ssl-kunde1.der b/spss/handbook/clients/webservice/resources/sslKeys/customer1/moa-ssl-kunde1.derBinary files differ new file mode 100644 index 000000000..b6091332c --- /dev/null +++ b/spss/handbook/clients/webservice/resources/sslKeys/customer1/moa-ssl-kunde1.der diff --git a/spss/handbook/clients/webservice/resources/sslKeys/customer1/moa-ssl-kunde1[pwd=kunde1].p12 b/spss/handbook/clients/webservice/resources/sslKeys/customer1/moa-ssl-kunde1[pwd=kunde1].p12Binary files differ new file mode 100644 index 000000000..33f76bf9c --- /dev/null +++ b/spss/handbook/clients/webservice/resources/sslKeys/customer1/moa-ssl-kunde1[pwd=kunde1].p12 diff --git a/spss/handbook/clients/webservice/resources/sslKeys/customer1/trustedServers[pwd=servers].keystore b/spss/handbook/clients/webservice/resources/sslKeys/customer1/trustedServers[pwd=servers].keystoreBinary files differ new file mode 100644 index 000000000..9c6c55359 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/sslKeys/customer1/trustedServers[pwd=servers].keystore diff --git a/spss/handbook/clients/webservice/resources/sslKeys/customer2/moa-ssl-kunde2.der b/spss/handbook/clients/webservice/resources/sslKeys/customer2/moa-ssl-kunde2.derBinary files differ new file mode 100644 index 000000000..20bc38e14 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/sslKeys/customer2/moa-ssl-kunde2.der diff --git a/spss/handbook/clients/webservice/resources/sslKeys/customer2/moa-ssl-kunde2[pwd=kunde2].p12 b/spss/handbook/clients/webservice/resources/sslKeys/customer2/moa-ssl-kunde2[pwd=kunde2].p12Binary files differ new file mode 100644 index 000000000..ec7bf8e48 --- /dev/null +++ b/spss/handbook/clients/webservice/resources/sslKeys/customer2/moa-ssl-kunde2[pwd=kunde2].p12 diff --git a/spss/handbook/clients/webservice/resources/sslKeys/customer2/trustedServers[pwd=servers].keystore b/spss/handbook/clients/webservice/resources/sslKeys/customer2/trustedServers[pwd=servers].keystoreBinary files differ new file mode 100644 index 000000000..d32a22f0f --- /dev/null +++ b/spss/handbook/clients/webservice/resources/sslKeys/customer2/trustedServers[pwd=servers].keystore diff --git a/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTP.java b/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTP.java new file mode 100644 index 000000000..00ae94c11 --- /dev/null +++ b/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTP.java @@ -0,0 +1,204 @@ +package at.gv.egovernment.moa.spss.handbook.clients.webservice; + +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.util.Properties; +import java.util.Vector; + +import javax.xml.namespace.QName; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.rpc.Call; +import javax.xml.rpc.Service; +import javax.xml.rpc.ServiceFactory; + +import org.apache.axis.message.SOAPBodyElement; +import org.apache.xml.serialize.OutputFormat; +import org.apache.xml.serialize.XMLSerializer; +import org.w3c.dom.Document; + +/** + * Diese Klasse implementiert einen einfachen Client für das MOA SP/SS Webservice mittels Apache Axis. Die + * Verbindung erfolgt ungesichert über HTTP. + */ +public class HTTP +{ +  protected Properties props_; + +  /** +   * Methode main. +   *  +   * Enthält den Beispielcode der nötig ist um von Java aus auf MOA-SPSS zugreifen zu können. Der Zugriff +   * passiert über das AXIS-Framework. Die Verbindung erfolgt ungesichert über HTTP. +   *  +   * @param args <ul> +   *             <li> +   *             args[0] enthält entweder die Bezeichnung "sign" oder "verify" zur Kennzeichnung, +   *             ob ein Signaturerstellungsrequest, oder ein Signaturprüfrequest gesendet werden soll. +   *             </li> +   *             <li> +   *             args[1] enthält einen Verweis auf eine Property-Datei, die die nähere Konfiguration +   *             für dieses Beispiel enthält. Der Verweis enthält entweder eine absolute oder eine +   *             relative Pfadangabe, wobei eine relative Angabe als relativ zum Arbeitsverzeichnis der +   *             Java VM interpretiert wird. Folgende Properties müssen in der Property-Datei vorhanden +   *             sein:  +   *             <ul> +   *             <li> +   *             <code>signServiceQName</code>: Name des Webservices, fix "SignatureCreation" +   *             </li> +   *             <li> +   *             <code>signServiceEndPoint</code>: Zugangspunkt des Webservices (URL) +   *             </li> +   *             <li> +   *             <code>signRequest</code>: Name des zu sendenden Signaturerstellungsrequests (entweder +   *             absolute oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum +   *             Arbeitsverzeichnis der Java VM interpretiert) +   *             </li> +   *             <li> +   *             <code>verifyServiceQName</code>: Name des Webservices, fix "SignatureVerification" +   *             </li> +   *             <li> +   *             <code>verifyServiceEndPoint</code>: Zugangspunkt des Webservices (URL) +   *             </li> +   *             <li> +   *             <code>verifyRequest</code>: Name des zu sendenden Signaturprüfrequests (entweder +   *             absolute oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum +   *             Arbeitsverzeichnis der Java VM interpretiert) +   *             </li> +   *             </ul> +   *             </li> +   *             </ul> +   */ +  public static void main(String[] args) +  { +    try +    { +      // Prüfen, ob Beispiel korrekt verwendet wird +      checkArgs(args, "HTTP"); +       +      // Initialisieren des Clients +      HTTP httpClient = new HTTP(args); +       +      // Ausführen der Serviceabfrage +      httpClient.execute(args[0]); +    } +    catch (Exception e) +    { +      e.printStackTrace(); +    } +  } +   +  /**  +   * Prüft, ob das Beispiel korrekt verwendet wird. +   *  +   * @param args Die Aufrufparameter für das Beispiel. Siehe {@link HTTP#main(String[])}. +   *  +   * @param exampleName Der Name dieses Beispiels, der im Hilfetext gedruckt wird. +   */ +  protected static void checkArgs(String[] args, String exampleName) +  { +    if (args == null || args.length != 2 || (!"sign".equals(args[0]) && !"verify".equals(args[0]))) +    { +      System.out.println("Verwendung: " + exampleName + " \"sign\"|\"verify\" Properties-Datei"); +    } +  } +   +  /** +   * Erzeugt den MOA Client. Es erfolgt die Auswertung der übergebenen Aufrufparameter. +   *  +   * @param args Die Aufrufparameter für das Beispiel. Siehe {@link HTTP#main(String[])}. +   *  +   * @throws Exception wenn der MOA Client mit den übergebenen Aufrufparametern nicht korrekt erzeugt +   *         werden konnte.  +   */ +  protected HTTP(String[] args) throws Exception +  { +    props_ = new Properties(); +    props_.load(new FileInputStream(args[1])); +  } +   +  /** +   * Führt die Abfrage beim MOA-Service aus. +   *  +   * @param mode Steuert, ob eine Signatur erstellt ("sign") oder geprüft ("verify") werden soll. +   *  +   * @throws Exception wenn dabei etwas schiegeht. +   */ +  protected void execute(String mode) throws Exception +  { +    // Datei mit Request einlesen +    FileInputStream inputStream = new FileInputStream(getProperty(mode + "Request")); + +    // Parser/DOMBuilder instanzieren +    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); +    factory.setNamespaceAware(true); +    DocumentBuilder builder = factory.newDocumentBuilder(); + +    // XML Datei in einen DOM-Baum umwandeln +    Document xmlRequest = builder.parse(inputStream); + +    // AXIS-Server instanzieren +    Service service = ServiceFactory.newInstance().createService(new QName(getProperty(mode + "ServiceQName"))); + +    // Call öffnen +    Call call = service.createCall(); + +    // Neues BodyElement anlegen und mit dem DOM-Baum füllen +    SOAPBodyElement body = new SOAPBodyElement(xmlRequest.getDocumentElement()); +    SOAPBodyElement[] params = new SOAPBodyElement[] +    { +      body +    }; + +    // Call mit Endpoint verknüpfen +    call.setTargetEndpointAddress(getProperty(mode + "ServiceEndPoint")); + +    // Call auslösen und die Antworten speichern +    System.out.println("Calling ..."); +    Vector responses = (Vector) call.invoke(params); + +    // Erstes Body Element auslesen +    SOAPBodyElement response = (SOAPBodyElement) responses.get(0); + +    // Aus der Response den DOM-Baum lesen +    Document root_response = response.getAsDocument(); +    System.out.println("Return ..."); + +    // XML-Formatierung konfiguieren +    OutputFormat format = new OutputFormat((Document) root_response); +    format.setLineSeparator("\n"); +    format.setIndenting(false); +    format.setPreserveSpace(true); +    format.setOmitXMLDeclaration(false); +    format.setEncoding("UTF-8"); + +    // Ausgabe der Webservice-Antwort auf die Konsole +    XMLSerializer conSerializer = new XMLSerializer(System.out, format); +    conSerializer.serialize(root_response); + +    // Ausgabe der Webservice-Antwort in Datei +    String responseFile = getProperty(mode + "Request").substring(0, getProperty(mode + "Request").lastIndexOf('.')) +      + ".response.xml"; +    XMLSerializer fileSerializer = new XMLSerializer(new FileOutputStream(responseFile), format); +    fileSerializer.serialize(root_response); +  } +   +  /** +   * Prüft ob die Property mit dem angegebenen Namen in den Konfigurations-Properties enthalten ist. +   *   +   * @param propName Name der zu untersuchenden Property. +   *  +   * @return den Wert der gesuchten Property. +   *  +   * @throws Exception wenn die gesuchte Property nicht vorhanden ist. +   */ +  protected String getProperty(String propName) throws Exception +  { +    String propValue = props_.getProperty(propName); +    if ((propValue == null) || "".equals(propValue.trim())) +    { +      throw new Exception("Property named \"" + propName + "\" does not exist."); +    } +    return propValue; +  } +}
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSClientAuth.java b/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSClientAuth.java new file mode 100644 index 000000000..ef509088a --- /dev/null +++ b/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSClientAuth.java @@ -0,0 +1,122 @@ +package at.gv.egovernment.moa.spss.handbook.clients.webservice; + + +/** + * Diese Klasse implementiert einen einfachen Client für das MOA SP/SS Webservice mittels Apache Axis. Die + * Verbindung erfolgt gesichert über SSL, und zwar sowohl mit Server- und Clientauthentisierung. + */ +public class HTTPSClientAuth extends HTTPSServerAuth +{ +  // JSSE Konstanten +  public static final String KEYSTORE = "javax.net.ssl.keyStore"; +  public static final String KEYSTOREPASSWORD = "javax.net.ssl.keyStorePassword"; +  public static final String KEYSTORETYPE = "javax.net.ssl.keyStoreType"; + +  /** +   * Methode main. +   *  +   * Enthält den Beispielcode der nötig ist um von Java aus auf MOA-SPSS zugreifen zu können. Der Zugriff +   * passiert über das AXIS-Framework. Die Verbindung erfolgt gesichert über SSL, und zwar sowohl mit  +   * Server- und Clientauthentisierung. +   *  +   * @param args <ul> +   *             <li> +   *             args[0] enthält entweder die Bezeichnung "sign" oder "verify" zur Kennzeichnung, +   *             ob ein Signaturerstellungsrequest, oder ein Signaturprüfrequest gesendet werden soll. +   *             </li> +   *             <li> +   *             args[1] enthält einen Verweis auf eine Property-Datei, die die nähere Konfiguration +   *             für dieses Beispiel enthält. Der Verweis enthält entweder eine absolute oder eine +   *             relative Pfadangabe, wobei eine relative Angabe als relativ zum Arbeitsverzeichnis der +   *             Java VM interpretiert wird. Folgende Properties müssen in der Properties-Datei vorhanden +   *             sein:  +   *             <ul> +   *             <li> +   *             <code>signServiceQName</code>: Name des Webservices, fix "SignatureCreation" +   *             </li> +   *             <li> +   *             <code>signServiceEndPoint</code>: Zugangspunkt des Webservices (URL) +   *             </li> +   *             <li> +   *             <code>signRequest</code>: Name des zu sendenden Signaturerstellungsrequests (entweder +   *             absolute oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum +   *             Arbeitsverzeichnis der Java VM interpretiert) +   *             </li> +   *             <li> +   *             <code>verifyServiceQName</code>: Name des Webservices, fix "SignatureVerification" +   *             </li> +   *             <li> +   *             <code>verifyServiceEndPoint</code>: Zugangspunkt des Webservices (URL) +   *             </li> +   *             <li> +   *             <code>verifyRequest</code>: Name des zu sendenden Signaturprüfrequests (entweder +   *             absolute oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum +   *             Arbeitsverzeichnis der Java VM interpretiert) +   *             </li> +   *             <li> +   *             <code>ssl.truststore.type</code>: Typ des JSSE-Truststores (entweder "JKS" für einen +   *             Java Key Store oder "PKCS12" für eine PKCS#12-Datei). +   *             </li> +   *             <li><code>ssl.truststore.type</code>: Relativer oder absoluter Pfad zum JSSE-Truststore. +   *             Ein relativer Pfad wird relativ zum Arbeitsverzeichnis der Java VM interpretiert). +   *             </li> +   *             <li><code>ssl.truststore.pwd</code>: Passwort für den JSSE-Truststore. +   *             </li> +   *             <li> +   *             <code>ssl.keystore.type</code>: Typ des JSSE-Keystores (entweder "JKS" für einen +   *             Java Key Store oder "PKCS12" für eine PKCS#12-Datei). +   *             </li> +   *             <li><code>ssl.keystore.type</code>: Relativer oder absoluter Pfad zum JSSE-Keystore. +   *             Ein relativer Pfad wird relativ zum Arbeitsverzeichnis der Java VM interpretiert). +   *             </li> +   *             <li><code>ssl.keystore.pwd</code>: Passwort für den JSSE-Keystore. +   *             </li> +   *             </ul> +   *             </li> +   *             </ul> +   */ +  public static void main(String[] args) +  { +    try +    { +      // Prüfen, ob Beispiel korrekt verwendet wird +      checkArgs(args, "HTTP"); +       +      // Initialisieren des Clients +      HTTPSClientAuth httpClient = new HTTPSClientAuth(args); +       +      // Ausführen der Serviceabfrage +      httpClient.execute(args[0]); +    } +    catch (Exception e) +    { +      e.printStackTrace(); +    } +  } +   +  /** +   * Erzeugt den MOA Client. Es erfolgt die Auswertung der übergebenen Aufrufparameter. +   *  +   * @param args Die Aufrufparameter für das Beispiel. Siehe {@link HTTPSClientAuth#main(String[])}. +   *  +   * @throws Exception wenn der MOA Client mit den übergebenen Aufrufparametern nicht korrekt erzeugt +   *         werden konnte.  +   */ +  protected HTTPSClientAuth(String[] args) throws Exception +  { +    super(args); +  } +   +  /** +   * Konfiguriert JSSE für eine SSL-Verbindung mit Client- und Serverauthentisierung. +   */ +  protected void configureSSL() throws Exception +  { +    super.configureSSL(); +     +    // Konfiguriere Key-Store (enthält privaten Schlüssel und Zertifikat des Clients) +    System.setProperty(KEYSTORETYPE, getProperty("ssl.keystore.type")); +    System.setProperty(KEYSTORE, getProperty("ssl.keystore.loc")); +    System.setProperty(KEYSTOREPASSWORD, getProperty("ssl.keystore.pwd")); +  } +}
\ No newline at end of file diff --git a/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSServerAuth.java b/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSServerAuth.java new file mode 100644 index 000000000..712c9dbe7 --- /dev/null +++ b/spss/handbook/clients/webservice/src/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSServerAuth.java @@ -0,0 +1,125 @@ +package at.gv.egovernment.moa.spss.handbook.clients.webservice; + +import java.security.Security; + +import com.sun.net.ssl.internal.ssl.Provider; + +/** + * Diese Klasse implementiert einen einfachen Client für das MOA SP/SS Webservice mittels Apache Axis. Die + * Verbindung erfolgt gesichert über SSL, und zwar nur mit Serverauthentisierung. + */ +public class HTTPSServerAuth extends HTTP +{ +  // JSSE Konstanten +  public static final String HANDLER = "java.protocol.handler.pkgs"; +  public static final String TRUSTSTORE = "javax.net.ssl.trustStore"; +  public static final String TRUSTSTOREPASSWORD = "javax.net.ssl.trustStorePassword"; +  public static final String TRUSTSTORETYPE = "javax.net.ssl.trustStoreType"; + +  /** +   * Methode main. +   *  +   * Enthält den Beispielcode der nötig ist um von Java aus auf MOA-SPSS zugreifen zu können. Der Zugriff +   * passiert über das AXIS-Framework. Die Verbindung erfolgt gesichert über SSL, und zwar nur mit  +   * Serverauthentisierung. +   *  +   * @param args <ul> +   *             <li> +   *             args[0] enthält entweder die Bezeichnung "sign" oder "verify" zur Kennzeichnung, +   *             ob ein Signaturerstellungsrequest, oder ein Signaturprüfrequest gesendet werden soll. +   *             </li> +   *             <li> +   *             args[1] enthält einen Verweis auf eine Property-Datei, die die nähere Konfiguration +   *             für dieses Beispiel enthält. Der Verweis enthält entweder eine absolute oder eine +   *             relative Pfadangabe, wobei eine relative Angabe als relativ zum Arbeitsverzeichnis der +   *             Java VM interpretiert wird. Folgende Properties müssen in der Properties-Datei vorhanden +   *             sein:  +   *             <ul> +   *             <li> +   *             <code>signServiceQName</code>: Name des Webservices, fix "SignatureCreation" +   *             </li> +   *             <li> +   *             <code>signServiceEndPoint</code>: Zugangspunkt des Webservices (URL) +   *             </li> +   *             <li> +   *             <code>signRequest</code>: Name des zu sendenden Signaturerstellungsrequests (entweder +   *             absolute oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum +   *             Arbeitsverzeichnis der Java VM interpretiert) +   *             </li> +   *             <li> +   *             <code>verifyServiceQName</code>: Name des Webservices, fix "SignatureVerification" +   *             </li> +   *             <li> +   *             <code>verifyServiceEndPoint</code>: Zugangspunkt des Webservices (URL) +   *             </li> +   *             <li> +   *             <code>verifyRequest</code>: Name des zu sendenden Signaturprüfrequests (entweder +   *             absolute oder relative Pfadangabe; eine relative Pfadangabe wird relativ zum +   *             Arbeitsverzeichnis der Java VM interpretiert) +   *             </li> +   *             <li> +   *             <code>ssl.truststore.type</code>: Typ des JSSE-Truststores (entweder "JKS" für einen +   *             Java Key Store oder "PKCS12" für eine PKCS#12-Datei). +   *             </li> +   *             <li><code>ssl.truststore.type</code>: Relativer oder absoluter Pfad zum JSSE-Truststore. +   *             Ein relativer Pfad wird relativ zum Arbeitsverzeichnis der Java VM interpretiert). +   *             </li> +   *             <li><code>ssl.truststore.pwd</code>: Passwort für den JSSE-Truststore. +   *             </li> +   *             </ul> +   *             </li> +   *             </ul> +   */ +  public static void main(String[] args) +  { +    try +    { +      // Prüfen, ob Beispiel korrekt verwendet wird +      checkArgs(args, "HTTP"); +       +      // Initialisieren des Clients +      HTTPSServerAuth httpClient = new HTTPSServerAuth(args); +       +      // Ausführen der Serviceabfrage +      httpClient.execute(args[0]); +    } +    catch (Exception e) +    { +      e.printStackTrace(); +    } +  } +   +  /** +   * Erzeugt den MOA Client. Es erfolgt die Auswertung der übergebenen Aufrufparameter. +   *  +   * @param args Die Aufrufparameter für das Beispiel. Siehe {@link HTTPSServerAuth#main(String[])}. +   *  +   * @throws Exception wenn der MOA Client mit den übergebenen Aufrufparametern nicht korrekt erzeugt +   *         werden konnte.  +   */ +  protected HTTPSServerAuth(String[] args) throws Exception +  { +    super(args); +    configureSSL(); +  } +   +  /** +   * Konfiguriert JSSE für eine SSL-Verbindung mit Serverauthentisierung. +   *  +   * @throws Exception wenn die Konfiguration von JSSE fehlschlägt. +   */ +  protected void configureSSL() throws Exception +  { +    // Aktivieren Sie die nächste Zeile für detailliertes Logging des SSL-Verbindungsaufbaus +    // System.setProperty("javax.net.debug", "all"); +     +    // Setzen des korrekten Protokoll-Handlers für https +    Security.addProvider(new Provider()); +    System.setProperty(HANDLER, "com.sun.net.ssl.internal.www.protocol"); + +    // Konfiguriere Trust-Store (enthält SSL-Zertifikat des MOA Services, dem vertraut wird) +    System.setProperty(TRUSTSTORETYPE, getProperty("ssl.truststore.type")); +    System.setProperty(TRUSTSTORE, getProperty("ssl.truststore.loc")); +    System.setProperty(TRUSTSTOREPASSWORD, getProperty("ssl.truststore.pwd")); +  } +}
\ No newline at end of file | 
