From cadf8aeca12cb25c84db6a740bc5587363191f1d Mon Sep 17 00:00:00 2001
From: Thomas Lenz <tlenz@iaik.tugraz.at>
Date: Tue, 7 Jun 2016 13:07:35 +0200
Subject: update local development demo appl.

---
 .../src/test/java/test/tlenz/simpletest.java       | 197 +++++++++++++--------
 1 file changed, 128 insertions(+), 69 deletions(-)

(limited to 'id/server/idserverlib/src')

diff --git a/id/server/idserverlib/src/test/java/test/tlenz/simpletest.java b/id/server/idserverlib/src/test/java/test/tlenz/simpletest.java
index 2c80b7ffd..05cd74ed2 100644
--- a/id/server/idserverlib/src/test/java/test/tlenz/simpletest.java
+++ b/id/server/idserverlib/src/test/java/test/tlenz/simpletest.java
@@ -1,23 +1,23 @@
 package test.tlenz;
 
-import java.io.File;
 import java.io.FileInputStream;
-import java.io.InputStream;
-import java.io.ObjectInputStream;
-import java.net.URI;
-import java.net.URISyntaxException;
+import java.util.HashMap;
+import java.util.List;
 
-import org.w3c.dom.Element;
+import org.apache.commons.io.IOUtils;
+import org.w3c.dom.NodeList;
 
-import iaik.asn1.structures.Name;
-import iaik.utils.RFC2253NameParser;
-import iaik.utils.RFC2253NameParserException;
-import at.gv.egovernment.moa.id.auth.data.IdentityLink;
-import at.gv.egovernment.moa.id.auth.parser.IdentityLinkAssertionParser;
-import at.gv.egovernment.moa.id.data.AuthenticationRole;
-import at.gv.egovernment.moa.id.data.AuthenticationRoleFactory;
-import at.gv.egovernment.moa.id.util.IdentityLinkReSigner;
-import at.gv.egovernment.moa.util.DOMUtils;
+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.ContentBinary;
+import at.gv.egovernment.moa.spss.api.common.ContentXML;
+import at.gv.egovernment.moa.spss.api.common.InputData;
+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;
 
 /*******************************************************************************
  * Copyright 2014 Federal Chancellery Austria
@@ -62,71 +62,130 @@ import at.gv.egovernment.moa.util.DOMUtils;
 public class simpletest {
 //
 	public static void main(String[] args) {
-				
 		
-		URI fileURI = null;
-		try {
-			fileURI = new URI("file:c:/moa3/tomcat8/conf/moa-id/moa-id.properties");
-			File propertiesFile = new File(fileURI);
+		try  {
+			FileInputStream sigDocFIS = null;
+			sigDocFIS = new FileInputStream("D:/idl_test/identity_link.xml");
 			
-			InputStream in = new FileInputStream(propertiesFile);
-			ObjectInputStream testOIS = new ObjectInputStream(in);
+			SPSSFactory spssFac = SPSSFactory.getInstance();
+	        SignatureVerificationService sigVerifyService = SignatureVerificationService.getInstance();
+	        Content sigDocContent = spssFac.createContent(sigDocFIS, null);
+	        
+	        
+	     // Position der zu pruefenden Signatur
+	        HashMap nSMap = new HashMap();
+	        nSMap.put("dsig", "http://www.w3.org/2000/09/xmldsig#");
+	        VerifySignatureLocation sigLocation = spssFac.createVerifySignatureLocation("//dsig:Signature", nSMap);
+
+	        // Pruefrequest zusammenstellen
+	        VerifySignatureInfo sigInfo = spssFac.createVerifySignatureInfo(sigDocContent, sigLocation);
+	        VerifyXMLSignatureRequest verifyRequest = spssFac.createVerifyXMLSignatureRequest(
+	                null,    // Verwende aktuelle Zeit als Pruefzeit
+	                sigInfo,
+	                null,    // Keine Ergaenzungsobjekte
+	                null,    // Signaturmanifest-Pruefung soll nicht durchgefuehrt werden
+	                true,   // Hash-Inputdaten, d.h. tatsaechlich signierte Daten werden nicht zurueckgeliefert
+	                "MOAIDBuergerkarteAuthentisierungsDaten");
+	        
+	        
+	        VerifyXMLSignatureResponse verifyResponse = null;
+	        verifyResponse = sigVerifyService.verifyXMLSignature(verifyRequest);
+	        
+	        SignerInfo signerInfo = verifyResponse.getSignerInfo();
+	        String signerCertificateEncoded = null;
+
+	        List hashInputDatas = verifyResponse.getHashInputDatas();
+	        if (hashInputDatas != null && !hashInputDatas.isEmpty()) {
+	        	for (Object el : hashInputDatas) {
+	        		InputData inputData = (InputData) el;
+	        		switch (inputData.getContentType()) {
+	        	      case Content.XML_CONTENT :
+	        	        ContentXML contentXml = (ContentXML) inputData;
+	        	        NodeList input_XML = contentXml.getXMLContent();
+	        	     
+	        	        break;
+	        	      case Content.BINARY_CONTENT :
+	        	          ContentBinary contentBinary = (ContentBinary) inputData;	        	       
+	        	          String input_Binary = IOUtils.toString(contentBinary.getBinaryContent());
+	        	          	        	        
+	        		}	        		
+	        	}	        	
+	        }
+	        
+	        
 			
-			Object test = testOIS.readObject();
+		} catch (Exception e) {
 			
 			
-		} catch (Exception e1) {
-			e1.printStackTrace();
-		}
-		
-		try {
-			fileURI = new URI("file:/c:/moa3/tomcat8/conf/moa-id/moa-id.properties");
-			File propertiesFile = new File(fileURI);
-		} catch (Exception e1) {
-			e1.printStackTrace();
-		}
-		
-		try {
-			fileURI = new URI("file://c:/moa3/tomcat8/conf/moa-id/moa-id.properties");
-			File propertiesFile = new File(fileURI);
-		} catch (Exception e1) {
-			e1.printStackTrace();
-		}
-		
-		try {
-			fileURI = new URI("file:///c:/moa3/tomcat8/conf/moa-id/moa-id.properties");
-			File propertiesFile = new File(fileURI);
-		} catch (Exception e1) {
-			e1.printStackTrace();
 		}
 		
 		
 		
-		try {
-		InputStream s = new FileInputStream("D:/idl_test/identity_link.xml");
-		Element idlTemplate = DOMUtils.parseXmlValidating(s);
-		
-        //resign IDL
-		IdentityLinkReSigner identitylinkresigner = IdentityLinkReSigner.getInstance();
-		Element resignedilAssertion = identitylinkresigner.resignIdentityLink(idlTemplate, "IDLSigning");
-		IdentityLink identityLink = new IdentityLinkAssertionParser(resignedilAssertion).parseIdentityLink();
-		
-		} catch (Exception e) {
-			System.out.println(e.getMessage());
-			
-		}
 		
-		String subjectName = "serialNumber=896929130327, givenName=OCSP, SN=Responder 03-1, CN=OCSP Responder 03-1, C=AT";
 		
-		try {
-			Name test = new RFC2253NameParser(subjectName).parse();
-			
-			System.out.println(test.getRFC2253String());
-			
-		} catch (RFC2253NameParserException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
+//		URI fileURI = null;
+//		try {
+//			fileURI = new URI("file:c:/moa3/tomcat8/conf/moa-id/moa-id.properties");
+//			File propertiesFile = new File(fileURI);
+//			
+//			InputStream in = new FileInputStream(propertiesFile);
+//			ObjectInputStream testOIS = new ObjectInputStream(in);
+//			
+//			Object test = testOIS.readObject();
+//			
+//			
+//		} catch (Exception e1) {
+//			e1.printStackTrace();
+//		}
+//		
+//		try {
+//			fileURI = new URI("file:/c:/moa3/tomcat8/conf/moa-id/moa-id.properties");
+//			File propertiesFile = new File(fileURI);
+//		} catch (Exception e1) {
+//			e1.printStackTrace();
+//		}
+//		
+//		try {
+//			fileURI = new URI("file://c:/moa3/tomcat8/conf/moa-id/moa-id.properties");
+//			File propertiesFile = new File(fileURI);
+//		} catch (Exception e1) {
+//			e1.printStackTrace();
+//		}
+//		
+//		try {
+//			fileURI = new URI("file:///c:/moa3/tomcat8/conf/moa-id/moa-id.properties");
+//			File propertiesFile = new File(fileURI);
+//		} catch (Exception e1) {
+//			e1.printStackTrace();
+//		}
+//		
+//		
+//		
+//		try {
+//		InputStream s = new FileInputStream("D:/idl_test/identity_link.xml");
+//		Element idlTemplate = DOMUtils.parseXmlValidating(s);
+//		
+//        //resign IDL
+//		IdentityLinkReSigner identitylinkresigner = IdentityLinkReSigner.getInstance();
+//		Element resignedilAssertion = identitylinkresigner.resignIdentityLink(idlTemplate, "IDLSigning");
+//		IdentityLink identityLink = new IdentityLinkAssertionParser(resignedilAssertion).parseIdentityLink();
+//		
+//		} catch (Exception e) {
+//			System.out.println(e.getMessage());
+//			
+//		}
+//		
+//		String subjectName = "serialNumber=896929130327, givenName=OCSP, SN=Responder 03-1, CN=OCSP Responder 03-1, C=AT";
+//		
+//		try {
+//			Name test = new RFC2253NameParser(subjectName).parse();
+//			
+//			System.out.println(test.getRFC2253String());
+//			
+//		} catch (RFC2253NameParserException e) {
+//			// TODO Auto-generated catch block
+//			e.printStackTrace();
+//		}
 		
 		
 //		AuthenticationRole test = AuthenticationRoleFactory.buildFormPVPole("ecas-demo-EUROPEAN_COMMISSION(key=A\\,B)");
-- 
cgit v1.2.3