diff options
| author | gregor <gregor@d688527b-c9ab-4aba-bd8d-4036d912da1d> | 2003-12-03 13:51:39 +0000 | 
|---|---|---|
| committer | gregor <gregor@d688527b-c9ab-4aba-bd8d-4036d912da1d> | 2003-12-03 13:51:39 +0000 | 
| commit | 8584ca9fb0c9a3380d2345cd7d0b99fd3b43c1fd (patch) | |
| tree | 60f5b7a2a7d0bf2d8abf000327f7137df12e88f5 /spss.slinterface | |
| parent | 6c801ae738cdf05c766519d3f7e16d408f1efc63 (diff) | |
| download | moa-id-spss-8584ca9fb0c9a3380d2345cd7d0b99fd3b43c1fd.tar.gz moa-id-spss-8584ca9fb0c9a3380d2345cd7d0b99fd3b43c1fd.tar.bz2 moa-id-spss-8584ca9fb0c9a3380d2345cd7d0b99fd3b43c1fd.zip | |
Erstversion für Demonstration im BKA
git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@72 d688527b-c9ab-4aba-bd8d-4036d912da1d
Diffstat (limited to 'spss.slinterface')
| -rw-r--r-- | spss.slinterface/.tomcatplugin | 2 | ||||
| -rw-r--r-- | spss.slinterface/constraints.txt | 2 | ||||
| -rw-r--r-- | spss.slinterface/pages/images/aut-emb2.gif | bin | 0 -> 4189 bytes | |||
| -rw-r--r-- | spss.slinterface/pages/images/egov.jpg | bin | 0 -> 4974 bytes | |||
| -rw-r--r-- | spss.slinterface/pages/resultOverview.jsp | 135 | ||||
| -rw-r--r-- | spss.slinterface/res/resources/properties/init.properties | 4 | ||||
| -rw-r--r-- | spss.slinterface/test/forms/verify.default.html | 85 | ||||
| -rw-r--r-- | spss.slinterface/test/forms/verify.slxhtml.html | 85 | 
8 files changed, 266 insertions, 47 deletions
| diff --git a/spss.slinterface/.tomcatplugin b/spss.slinterface/.tomcatplugin index 2e649ba5e..c8ae44495 100644 --- a/spss.slinterface/.tomcatplugin +++ b/spss.slinterface/.tomcatplugin @@ -5,6 +5,6 @@      <reloadable>true</reloadable>      <redirectLogger>false</redirectLogger>      <updateXml>false</updateXml> -    <warLocation></warLocation> +    <warLocation>E:\cio\projekte\basismodule\slinterface\moa-spss-sl.war</warLocation>      <webPath>/moa-spss-sl</webPath>  </tomcatProjectProperties> diff --git a/spss.slinterface/constraints.txt b/spss.slinterface/constraints.txt index 6cdb6ee8a..f21d385c8 100644 --- a/spss.slinterface/constraints.txt +++ b/spss.slinterface/constraints.txt @@ -1,4 +1,6 @@  - Prüfung eines ggf. vorhandenen SL-Manifests wird nicht durchgeführt.     In der Antwort wird der Code 98 zurückgeliefert. +- Prüfung von dsig-Manifesten escheint nicht in der Auswertungsseite.   +    - Bei signiertem XHTML-Dokument wird list-style-image-URL nicht geprüft. 
\ No newline at end of file diff --git a/spss.slinterface/pages/images/aut-emb2.gif b/spss.slinterface/pages/images/aut-emb2.gifBinary files differ new file mode 100644 index 000000000..171180fad --- /dev/null +++ b/spss.slinterface/pages/images/aut-emb2.gif diff --git a/spss.slinterface/pages/images/egov.jpg b/spss.slinterface/pages/images/egov.jpgBinary files differ new file mode 100644 index 000000000..adc92b209 --- /dev/null +++ b/spss.slinterface/pages/images/egov.jpg diff --git a/spss.slinterface/pages/resultOverview.jsp b/spss.slinterface/pages/resultOverview.jsp index cda562bbc..5e27178f4 100644 --- a/spss.slinterface/pages/resultOverview.jsp +++ b/spss.slinterface/pages/resultOverview.jsp @@ -17,91 +17,114 @@  <html>
    <head>
 -    <head><title>Resultate der Signaturprüfung</title></head>
 +    <head><title>Bundeskanzleramt der Republik Österreich - Signaturprüfdienst</title></head>
    </head>
    <body>
 -    <h1>Informationen zum Unterzeichner</h1>
 +    <table width="800px" align="center">
 +    <tr>
 +    <td>
 +    <table bgcolor="#eeeeee" width="790px" border="1" cellpadding="3">
 +    <td width="150px" align="center"><img width="70px" 
 +      <% out.print("src=\"" + request.getContextPath() + "/pages/images/aut-emb2.gif\" alt=\"Republik Österreich\""); %>
 +    ></td>
 +    <td align="center"><b>Bundeskanzleramt der Republik Österreich - Signaturprüfdienst</b></td>
 +    </table>
 +    
 +    <p>Nachfolgend finden Sie das Ergebnis der Prüfung der eingereichten elektronischen Signatur.</p>
 +
 +    <p>
 +      <a href="<% out.print(response.encodeURL(request.getContextPath() + "/return")); %>">
 +        Zurück zur Anwendung ...</a>
 +    </p>
      <!-- ######################################################### -->
      <!-- Name des Unterzeichners -->
      <!-- ######################################################### -->
 -    <h2>Name des Unterzeichners</h2>
 -    <p>
 +    <table bgcolor="#eeeeee" width="790px" border="1" cellpadding="3">
 +    <th>
 +    <tr span="2"><b>Unterzeichner</b></tr>
 +    </th>
        <%
  	    String[] subOIDNames = new String[]{"2.5.4.3", "2.5.4.11", "2.5.4.10", "2.5.4.6"}; // CN, OU, O, C
 -	    String[] subOIDRegNames = new String[]{"CN", "OU", "O", "C"};
 +	    String[] subOIDRegNames = new String[]{"Name", "Organisationseinheit", "Organisation", "Staat"};
  	    for (int i = 0; i < subOIDNames.length; i++)
  	    {
  	      signerInfo.setSubjectNameItemSel(subOIDNames[i]);
  	      String currSubjectNameRDN = signerInfo.getSubjectNameItem();
  	      if (currSubjectNameRDN != null)
  	      {
 -	        out.print(subOIDRegNames[i] + ": " + currSubjectNameRDN);
 -	  %>
 -      <br/>
 -      <%	      
 +	        out.print("<tr ><td width=\"150px\" align=\"right\">" + subOIDRegNames[i] + "</td><td align=\"left\"><code>" + currSubjectNameRDN + "</code></td></tr>");
  	      }
  	    }
        %>
 -    </p>
 +    </table>
      <!-- ######################################################### -->
      <!-- Name des Ausstellers -->
      <!-- ######################################################### -->
 -    <h2>Name des Ausstellers</h2>
 -    <p>
 +
 +    <table bgcolor="#eeeeee" width="790px" border="1" cellpadding="3">
 +    <th>
 +    <tr span="2"><b>Aussteller des Zertifikats</b></tr>
 +    </th>
        <%
  	    String[] issuerOIDNames = new String[]{"2.5.4.3", "2.5.4.11", "2.5.4.10", "2.5.4.6"}; // CN, OU, O, C
 -	    String[] issuerOIDRegNames = new String[]{"CN", "OU", "O", "C"};
 +	    String[] issuerOIDRegNames = new String[]{"Name", "Organisationseinheit", "Organisation", "Staat"};
  	    for (int i = 0; i < issuerOIDNames.length; i++)
  	    {
  	      signerInfo.setIssuerNameItemSel(issuerOIDNames[i]);
  	      String currIssuerNameRDN = signerInfo.getIssuerNameItem();
  	      if (currIssuerNameRDN != null)
  	      {
 -	        out.print(issuerOIDRegNames[i] + ": " + currIssuerNameRDN);
 -	  %>
 -      <br/>
 -      <%	      
 +	        out.print("<tr><td width=\"150px\" align=\"right\">" + issuerOIDRegNames[i] + "</td><td align=\"left\"><code>" + currIssuerNameRDN + "</code></td></tr>");
  	      }
  	    }
        %>
 -    </p>
 +      </table>
      <!-- ######################################################### -->
      <!-- Seriennummer des Zertifikats -->
      <!-- ######################################################### -->
 -    <h2>Seriennummer des Zertifikats</h2>
 -    <p>
 -      Seriennummer: 
 +    <table bgcolor="#eeeeee" width="790px" border="1" cellpadding="3">
 +    <th>
 +    <tr span="2"><b>Informationen zum Zertifikat</b></tr>
 +    </th>
 +    <tr>
 +    <td width="150px" align="right">Seriennummer</td>
 +    <td align="left"><code> 
        <%
          out.print(signerInfo.getSerial());
  	  %>
 -    </p>
 +	</code></td>  
 +	</tr>
      <!-- ######################################################### -->
      <!-- Qualifiziertes Zertifikat? -->
      <!-- ######################################################### -->
 -    <h2>Qualität des Zertifikats</h2>
 -    <p>
 -      Das Zertifikat ist ein 
 -      <% out.print(signerInfo.getIsQualified() ? "qualifiziertes" : "gewöhnliches"); %>
 -      Zertifikat.
 -    </p>
 +    <tr>
 +    <td align="right">Qualität</td>
 +    <td align="left"><code> 
 +        <% out.print(signerInfo.getIsQualified() ? "qualifiziertes" : "gewöhnliches"); %> Zertifikat
 +	</code></td>  
 +	</tr>
 +	</table>
 -    <h1>Prüfungen</h1>
 +    <table bgcolor="#eeeeee" width="790px" border="1" cellpadding="3">
 +    <th>
 +    <tr span="2"><b>Prüfungen</b></tr>
 +    </th>
      <!-- ######################################################### -->
      <!-- Signaturprüfung -->
      <!-- ######################################################### -->
 -    <h2>Signaturprüfung</h2>
 -    <p>
 +    <tr>
 +    <td width="150px" align="right">Signatur</td>
      <%
        String [] sigCheckMsgs = new String[]
        {
 @@ -111,14 +134,17 @@        };
        int sigCheckCode = Integer.parseInt(checksInfo.getSigCheckCode());
 +      out.print("<td align=\"left\"><p><code>");
 +      if (sigCheckCode != 0) out.print("<font color=\"red\">");
        out.print(sigCheckMsgs[sigCheckCode]);
 +      if (sigCheckCode != 0) out.print("</font>");
      %>
 -    <br/>
 +    </code></p>
      <%
        if (sigCheckCode == 1)
        {
      %>
 -      Fehlerhafte Referenzen: 
 +      <p><code><font color="red">Fehlerhafte Referenzen: 
      <%  
          int count = 0;
          do
 @@ -131,9 +157,12 @@            count++;  
          } 
          while (true);
 +    %>
 +    </code></font></p>
 +    <%
        }
      %>
 -    </p>
 +    </td></tr>
      <!-- ######################################################### -->
      <!-- Signaturmanifestprüfung -->
 @@ -151,8 +180,8 @@      <!-- Zertifikatsprüfung -->
      <!-- ######################################################### -->
 -    <h2>Zertifikatsprüfung</h2>
 -    <p>
 +    <tr>
 +    <td align="right">Zertifikat</td>
      <%
        String [] certCheckMsgs = new String[]
        {
 @@ -166,17 +195,24 @@        };
        int certCheckCode = Integer.parseInt(checksInfo.getCertCheckCode());
        certCheckCode = (certCheckCode == 99) ? 6 : certCheckCode;
 +      out.print("<td align=\"left\"><p><code>");
 +      if (certCheckCode != 0) out.print("<font color=\"red\">");
        out.print(certCheckMsgs[certCheckCode]);
 +      if (certCheckCode != 0) out.print("</font>");
      %>
 +    </code></p></td></tr></table>
      <!-- ######################################################### -->
      <!-- Signierte Daten -->
      <!-- ######################################################### -->
 -    <h1>Signierte Daten</h1>
 -    <p>
 +    <table bgcolor="#eeeeee" width="790px" border="1" cellpadding="3">
 +    <th>
 +    <tr span="2"><b>Signierte Daten</b></tr>
 +    </th>
      <%
        int i = 0;
 +      int j = 0;
        do
        {
          dataInfo.setHashInputDataCount(i);
 @@ -185,24 +221,35 @@          boolean doShow = dataInfo.getShowHashInputData();
          if (doShow)
          {
 -	        if (i > 0) out.println("<br/>");
 +	        out.print("<tr><td width=\"150px\" align=\"right\"><code>");
  	        out.print("<a href=\"" + response.encodeURL(request.getContextPath() + dataInfo.getHashInputDataURL()) + "\"");
  	        boolean isSLXHTML = dataInfo.getIsSLXHTMLDocument();
  	        if (isSLXHTML) out.write(" target=\"_blank\"");
 -	        out.print(">Datum Nr." + (i + 1));
 -	        if (isSLXHTML) out.print(" (SLXHTML Dokument)");
 -	        out.print("</a>");
 +	        out.print(">Datum Nr." + (j + 1) + "</a>");
 +	        out.print("</code></td><td align=\"left\">");
 +	        if (isSLXHTML) 
 +	        {
 +	          out.print(" Die Datei ist vom Typ SLXHTML und kann angezeigt werden.");
 +	        }
 +	        else
 +	        {
 +	         out.print("Der Typ der Datei ist nicht bekannt. Die Datei kann in Binärform heruntergeladen werden.");
 +	        }
 +	        out.print("</td><tr>");
 +	        j++;
  	    }
          i++;
        }
        while (true);
      %>
 -    </p>
 +    </table>
      <p>
        <a href="<% out.print(response.encodeURL(request.getContextPath() + "/return")); %>">
          Zurück zur Anwendung ...</a>
      </p>
 -    
 +    </td>
 +    </tr>
 +    </table>
    </body>
  </html>  
\ No newline at end of file diff --git a/spss.slinterface/res/resources/properties/init.properties b/spss.slinterface/res/resources/properties/init.properties index 9025644c9..59724d207 100644 --- a/spss.slinterface/res/resources/properties/init.properties +++ b/spss.slinterface/res/resources/properties/init.properties @@ -10,5 +10,5 @@ location.tempdir = /workDir/temp/  service.sp.endpoint = http://localhost:8080/moa-spss/services/SignatureVerification  service.sp.trustProfileId = TrustProfile1 -result.showetsi = true -result.showslmanifest = true
\ No newline at end of file +result.showetsi = false +result.showslmanifest = false
\ No newline at end of file diff --git a/spss.slinterface/test/forms/verify.default.html b/spss.slinterface/test/forms/verify.default.html new file mode 100644 index 000000000..2f381d9b8 --- /dev/null +++ b/spss.slinterface/test/forms/verify.default.html @@ -0,0 +1,85 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +  <title>Test Securitylayer-Interface für MOA</title> +</head> + <body> +<h1>Test Securitylayer-Interface für MOA</h1> +<h2>Kein SLXHTML-Dokument</h2> +<form action="http://localhost:8080/moa-spss-sl/http-security-layer-request" method="post"> +<p> +XMLRequest:  +<textarea name="XMLRequest" cols=80 rows=20> +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureRequest xmlns="http://www.buergerkarte.at/namespaces/securitylayer/20031231#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:sl10="http://www.buergerkarte.at/namespaces/securitylayer/20020225#" xmlns:sl11="http://www.buergerkarte.at/namespaces/securitylayer/20020831#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> +  <SignatureInfo> +    <SignatureEnvironment> +      <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/2000/09/xmldsig#rsa-sha1"/><dsig:Reference Id="reference-1-1" URI="xmlDocument.xml"><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:import href="stylesheet.xsl"/> +              </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>qWbsEi/iFwXaXZvCBanbFu7poqQ=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-2" URI="bild1.gif"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>mCGwDv9ku7uHVbL4bkNC8o52LrE=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-3" URI="bild2.jpg"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>Jc6oVCCGjgvFFYQR6jklGkGL4l4=</dsig:DigestValue></dsig:Reference><dsig:Reference Type="http://www.buergerkarte.at/specifications/Securitylayer/20020225#SignatureManifest" URI="#manifest-1-1"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>8HbxBKILDNRUeewGlObTKbBsB18=</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>hgityh9+8rEQjPzU0+6R/6rol3k=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>AfkIFItBFm9bTyciEQFwd+nx/5wfuDzAOPhfgEl8s8OVeyL/ZH99+4inrDTcrM6E +yhnKu/OZYfBdZicia9SGwXtnXabaUrOu/yMoxyh0DYoJY0ujLZFr6ywg4vZkM6X3 +tif5UrwAlSqnfJquT203GqpOS6euTZW86RRnvdR/4Jc=</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID1zCCA0SgAwIBAgIGAPMkfTU7MAkGBSsOAwIdBQAwgawxCzAJBgNVBAYTAkFU +MSYwJAYDVQQKEx1HUkFaIFVOSVZFUlNJVFkgT0YgVEVDSE5PTE9HWTFHMEUGA1UE +CxM+SW5zaXR1dGUgZm9yIEFwcGxpZWQgSW5mb3JtYXRpb24gUHJvY2Vzc2luZyBh +bmQgQ29tbXVuaWNhdGlvbnMxFTATBgNVBAsTDElBSUsgVGVzdCBDQTEVMBMGA1UE +AxMMSUFJSyBUZXN0IENBMB4XDTAzMDIwMzE2MjA1NVoXDTAzMTIzMDIyNTkzMFow +gZgxCzAJBgNVBAYTAkFUMSYwJAYDVQQKEx1HUkFaIFVOSVZFUlNJVFkgT0YgVEVD +SE5PTE9HWTFHMEUGA1UECxM+SW5zaXR1dGUgZm9yIEFwcGxpZWQgSW5mb3JtYXRp +b24gUHJvY2Vzc2luZyBhbmQgQ29tbXVuaWNhdGlvbnMxGDAWBgNVBAMUD0lzb2xk +ZSBC/HJnZXJpbjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA53m0qng6O9zV +IAuJ22Ps91X+pddhMiA9P0QusMexQ+QEkfe43nEFIToUZ3uuoAQFd+n4MXM6D68t +ZctGU5O4W5Aq/bEjI4efIHS0EThzgNAymqmT9Z9IIEhqm/1jhQ4SXTW33y3Xn3lx +26DiTeApftuQB388YlV+Rs+rTyF9iRUCAwEAAaOCARwwggEYMAwGA1UdEwEB/wQC +MAAwDgYDVR0PAQH/BAQDAgbAMBEGCWCGSAGG+EIBAQQEAwIFIDBnBgNVHSAEYDBe +MFwGDCsGAQQBlRIBAnsBATBMMEoGCCsGAQUFBwICMD4aPFRoaXMgY2VydGlmaWNh +dGUgb25seSBtYXkgYmUgdXNlZCBmb3IgZGVtb25zdHJhdGlvbiBwdXJwb3NlczA8 +BgNVHR8ENTAzMDGgL6AthitodHRwOi8vd3d3LmlhaWsuYXQvdGVzdENBL2lhaWtf +dGVzdF9zaWcuY3JsMB0GA1UdDgQWBBQoOuoIxS8M1o/DTZkJUs0lnN5A7TAfBgNV +HSMEGDAWgBRMILBWAgz3iAqWiKUUtFHMOrXyvzAJBgUrDgMCHQUAA4GBACY81o8m +zb8YCuTMgeplySm5nAkxjsv1T5n/Hzz1cLfSDJZ0HyNTVx/GDszY+Dx28MdW+6DL +o9nWPSE/4P+k9HXJe/wEyAv44OrjvpzGGKjqoc3X8v4rzMo6MBRNluu0m3y1pktT +V/q4aiWD/nbGXdrn/AoKAvOSAQ3Qe6X+dT/1</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object><dsig:Manifest Id="manifest-1-1"><dsig:Reference URI="stylesheet.xsl"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>/KjC84jSkt2ZHN35vNKXBvI2p80=</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>2003-12-03T11:51:13</etsi:SigningTime><etsi:SigningCertificate><etsi:Cert><etsi:CertDigest><etsi:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><etsi:DigestValue>dL59VDpBsujcngd207z0ohPl1/U=</etsi:DigestValue></etsi:CertDigest><etsi:IssuerSerial><dsig:X509IssuerName>CN=IAIK Test CA,OU=IAIK Test CA,OU=Insitute for Applied Information Processing and Communications,O=GRAZ UNIVERSITY OF TECHNOLOGY,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>1044289238331</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>text/html</etsi:MimeType></etsi:DataObjectFormat><etsi:DataObjectFormat ObjectReference="#reference-1-2"><etsi:MimeType>img/gif</etsi:MimeType></etsi:DataObjectFormat><etsi:DataObjectFormat ObjectReference="#reference-1-3"><etsi:MimeType>img/jpg</etsi:MimeType></etsi:DataObjectFormat></etsi:SignedDataObjectProperties></etsi:SignedProperties></etsi:QualifyingProperties></dsig:Object></dsig:Signature> +      </XMLContent> +    </SignatureEnvironment> +    <SignatureLocation>/dsig:Signature</SignatureLocation> +  </SignatureInfo> +  <Supplement> +    <Content Reference="stylesheet.xsl"> +      <LocRefContent>http://localhost:8080/moa-spss-sl/stylesheet.xsl</LocRefContent> +    </Content> +  </Supplement> +  <Supplement> +    <Content Reference="xmlDocument.xml"> +      <XMLContent> +        <XMLDarstellung xmlns="urn:instance">Etwas Text. Dann kommt das erste Bild.<Bild Reference="bild1.gif"/>Wieder etwas Text. Dann kommt das zweite Bild.<Bild Reference="bild2.jpg"/>Und noch ein wenig finaler Text.</XMLDarstellung> +      </XMLContent> +    </Content> +  </Supplement> +  <Supplement> +    <Content Reference="bild1.gif"> +      <Base64Content>R0lGODlhHgAPAJEAAAD/AAAAAAAAAAAAACwAAAAAHgAPAAAIJAABCBxIsKDBgwgTKlzIsKHD +hxAjSpxIsaLFixgzatzIsePDgAA7</Base64Content> +    </Content> +  </Supplement> +  <Supplement> +    <Content Reference="bild2.jpg"> +      <LocRefContent>http://localhost:8080/moa-spss-sl/bildspeicher/bild2.jpg</LocRefContent> +    </Content> +  </Supplement> +</VerifyXMLSignatureRequest> +</textarea> +<p> +<!-- +RedirectURL: <input name="RedirectURL" value="" size=70> +http://stud.fbi.fh-darmstadt.de/~adams/mathe/poesie.html#bit +<p>--> +DataURL: <input name="DataURL" value="http://localhost:8080/moa-spss-sl/dataurl" size=70/> +<p> +<!--StylesheetURL: <input name="StylesheetURL" value="" size=70> +http://localhost/securitylayer.xsl--> +<p> +<input type="submit"> +</form> +</body> +</html> diff --git a/spss.slinterface/test/forms/verify.slxhtml.html b/spss.slinterface/test/forms/verify.slxhtml.html new file mode 100644 index 000000000..e01ae9dd0 --- /dev/null +++ b/spss.slinterface/test/forms/verify.slxhtml.html @@ -0,0 +1,85 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +  <title>Test Securitylayer-Interface für MOA</title> +</head> + <body> +<h1>Test Securitylayer-Interface für MOA</h1> +<h2>SLXHTML-Dokument</h2> +<form action="http://localhost:8080/moa-spss-sl/http-security-layer-request" method="post"> +<p> +XMLRequest:  +<textarea name="XMLRequest" cols=80 rows=20> +<?xml version="1.0" encoding="UTF-8"?> +<VerifyXMLSignatureRequest xmlns="http://www.buergerkarte.at/namespaces/securitylayer/20031231#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:sl10="http://www.buergerkarte.at/namespaces/securitylayer/20020225#" xmlns:sl11="http://www.buergerkarte.at/namespaces/securitylayer/20020831#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> +  <SignatureInfo> +    <SignatureEnvironment> +      <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/2000/09/xmldsig#rsa-sha1"/><dsig:Reference Id="reference-1-1" URI="xmlDocument.xml"><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:import href="stylesheet.xsl"/> +              </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>qWbsEi/iFwXaXZvCBanbFu7poqQ=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-2" Type="http://www.buergerkarte.at/specifications/Security-Layer/20031113?Name=SignedImage&amp;InstanceDocRef=0" URI="bild1.gif"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>mCGwDv9ku7uHVbL4bkNC8o52LrE=</dsig:DigestValue></dsig:Reference><dsig:Reference Id="reference-1-3" Type="http://www.buergerkarte.at/specifications/Security-Layer/20031113?Name=SignedImage&amp;InstanceDocRef=0" URI="bild2.jpg"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>Jc6oVCCGjgvFFYQR6jklGkGL4l4=</dsig:DigestValue></dsig:Reference><dsig:Reference Type="http://www.buergerkarte.at/specifications/Securitylayer/20020225#SignatureManifest" URI="#manifest-1-1"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>8HbxBKILDNRUeewGlObTKbBsB18=</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>QixjzDGm3YVNnrWBVdkNLlp2Pmk=</dsig:DigestValue></dsig:Reference></dsig:SignedInfo><dsig:SignatureValue>wAt9rJy+7xx4b5VcMyGC9iwAtK+bHpMrqsiz5fLyXQJ11Iq+ME/yHhglv3u3cp6d +BCsNAuMacqEM0qGJ2xoIaxVPS5QIPJoF6KuS7t4rPGRW9g04EgE8xyRkH6qyxP9J +ilfBOISA/1GJcEejFeJdOkTLFrH7toE+IqB2fEl7eKs=</dsig:SignatureValue><dsig:KeyInfo><dsig:X509Data><dsig:X509Certificate>MIID1zCCA0SgAwIBAgIGAPMkfTU7MAkGBSsOAwIdBQAwgawxCzAJBgNVBAYTAkFU +MSYwJAYDVQQKEx1HUkFaIFVOSVZFUlNJVFkgT0YgVEVDSE5PTE9HWTFHMEUGA1UE +CxM+SW5zaXR1dGUgZm9yIEFwcGxpZWQgSW5mb3JtYXRpb24gUHJvY2Vzc2luZyBh +bmQgQ29tbXVuaWNhdGlvbnMxFTATBgNVBAsTDElBSUsgVGVzdCBDQTEVMBMGA1UE +AxMMSUFJSyBUZXN0IENBMB4XDTAzMDIwMzE2MjA1NVoXDTAzMTIzMDIyNTkzMFow +gZgxCzAJBgNVBAYTAkFUMSYwJAYDVQQKEx1HUkFaIFVOSVZFUlNJVFkgT0YgVEVD +SE5PTE9HWTFHMEUGA1UECxM+SW5zaXR1dGUgZm9yIEFwcGxpZWQgSW5mb3JtYXRp +b24gUHJvY2Vzc2luZyBhbmQgQ29tbXVuaWNhdGlvbnMxGDAWBgNVBAMUD0lzb2xk +ZSBC/HJnZXJpbjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA53m0qng6O9zV +IAuJ22Ps91X+pddhMiA9P0QusMexQ+QEkfe43nEFIToUZ3uuoAQFd+n4MXM6D68t +ZctGU5O4W5Aq/bEjI4efIHS0EThzgNAymqmT9Z9IIEhqm/1jhQ4SXTW33y3Xn3lx +26DiTeApftuQB388YlV+Rs+rTyF9iRUCAwEAAaOCARwwggEYMAwGA1UdEwEB/wQC +MAAwDgYDVR0PAQH/BAQDAgbAMBEGCWCGSAGG+EIBAQQEAwIFIDBnBgNVHSAEYDBe +MFwGDCsGAQQBlRIBAnsBATBMMEoGCCsGAQUFBwICMD4aPFRoaXMgY2VydGlmaWNh +dGUgb25seSBtYXkgYmUgdXNlZCBmb3IgZGVtb25zdHJhdGlvbiBwdXJwb3NlczA8 +BgNVHR8ENTAzMDGgL6AthitodHRwOi8vd3d3LmlhaWsuYXQvdGVzdENBL2lhaWtf +dGVzdF9zaWcuY3JsMB0GA1UdDgQWBBQoOuoIxS8M1o/DTZkJUs0lnN5A7TAfBgNV +HSMEGDAWgBRMILBWAgz3iAqWiKUUtFHMOrXyvzAJBgUrDgMCHQUAA4GBACY81o8m +zb8YCuTMgeplySm5nAkxjsv1T5n/Hzz1cLfSDJZ0HyNTVx/GDszY+Dx28MdW+6DL +o9nWPSE/4P+k9HXJe/wEyAv44OrjvpzGGKjqoc3X8v4rzMo6MBRNluu0m3y1pktT +V/q4aiWD/nbGXdrn/AoKAvOSAQ3Qe6X+dT/1</dsig:X509Certificate></dsig:X509Data></dsig:KeyInfo><dsig:Object><dsig:Manifest Id="manifest-1-1"><dsig:Reference URI="stylesheet.xsl"><dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><dsig:DigestValue>/KjC84jSkt2ZHN35vNKXBvI2p80=</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>2003-12-03T10:13:28</etsi:SigningTime><etsi:SigningCertificate><etsi:Cert><etsi:CertDigest><etsi:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><etsi:DigestValue>dL59VDpBsujcngd207z0ohPl1/U=</etsi:DigestValue></etsi:CertDigest><etsi:IssuerSerial><dsig:X509IssuerName>CN=IAIK Test CA,OU=IAIK Test CA,OU=Insitute for Applied Information Processing and Communications,O=GRAZ UNIVERSITY OF TECHNOLOGY,C=AT</dsig:X509IssuerName><dsig:X509SerialNumber>1044289238331</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>text/html</etsi:MimeType></etsi:DataObjectFormat><etsi:DataObjectFormat ObjectReference="#reference-1-2"><etsi:MimeType>img/gif</etsi:MimeType></etsi:DataObjectFormat><etsi:DataObjectFormat ObjectReference="#reference-1-3"><etsi:MimeType>img/jpg</etsi:MimeType></etsi:DataObjectFormat></etsi:SignedDataObjectProperties></etsi:SignedProperties></etsi:QualifyingProperties></dsig:Object></dsig:Signature> +      </XMLContent> +    </SignatureEnvironment> +    <SignatureLocation>/dsig:Signature</SignatureLocation> +  </SignatureInfo> +  <Supplement> +    <Content Reference="stylesheet.xsl"> +      <LocRefContent>http://localhost:8080/moa-spss-sl/stylesheet.xsl</LocRefContent> +    </Content> +  </Supplement> +  <Supplement> +    <Content Reference="xmlDocument.xml"> +      <XMLContent> +        <XMLDarstellung xmlns="urn:instance">Etwas Text. Dann kommt das erste Bild.<Bild Reference="bild1.gif"/>Wieder etwas Text. Dann kommt das zweite Bild.<Bild Reference="bild2.jpg"/>Und noch ein wenig finaler Text.</XMLDarstellung> +      </XMLContent> +    </Content> +  </Supplement> +  <Supplement> +    <Content Reference="bild1.gif"> +      <Base64Content>R0lGODlhHgAPAJEAAAD/AAAAAAAAAAAAACwAAAAAHgAPAAAIJAABCBxIsKDBgwgTKlzIsKHD +hxAjSpxIsaLFixgzatzIsePDgAA7</Base64Content> +    </Content> +  </Supplement> +  <Supplement> +    <Content Reference="bild2.jpg"> +      <LocRefContent>http://localhost:8080/moa-spss-sl/bildspeicher/bild2.jpg</LocRefContent> +    </Content> +  </Supplement> +</VerifyXMLSignatureRequest> +</textarea> +<p> +<!-- +RedirectURL: <input name="RedirectURL" value="" size=70> +http://stud.fbi.fh-darmstadt.de/~adams/mathe/poesie.html#bit +<p>--> +DataURL: <input name="DataURL" value="http://localhost:8080/moa-spss-sl/dataurl" size=70/> +<p> +<!--StylesheetURL: <input name="StylesheetURL" value="" size=70> +http://localhost/securitylayer.xsl--> +<p> +<input type="submit"> +</form> +</body> +</html> | 
