diff options
Diffstat (limited to 'spss.test/src/testgenerator/TestGeneratorCX1.java')
-rw-r--r-- | spss.test/src/testgenerator/TestGeneratorCX1.java | 1054 |
1 files changed, 0 insertions, 1054 deletions
diff --git a/spss.test/src/testgenerator/TestGeneratorCX1.java b/spss.test/src/testgenerator/TestGeneratorCX1.java deleted file mode 100644 index 44670742b..000000000 --- a/spss.test/src/testgenerator/TestGeneratorCX1.java +++ /dev/null @@ -1,1054 +0,0 @@ -package testgenerator; - -import iaik.ixsil.algorithms.Transform; -import iaik.ixsil.algorithms.TransformImplBase64Decode; -import iaik.ixsil.algorithms.TransformImplCanonicalXML; -import iaik.ixsil.algorithms.TransformImplCanonicalXMLWithComments; -import iaik.ixsil.algorithms.TransformImplEnvelopedSignature; -import iaik.ixsil.algorithms.TransformImplExclusiveCanonicalXML; -import iaik.ixsil.algorithms.TransformImplExclusiveCanonicalXMLWithComments; -import iaik.ixsil.algorithms.TransformImplXPath; -import iaik.ixsil.algorithms.TransformImplXPath2; -import iaik.ixsil.algorithms.TransformImplXSLT; -import iaik.ixsil.core.Position; -import iaik.ixsil.util.URI; -import java.io.BufferedWriter; -import java.io.ByteArrayInputStream; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.FileWriter; -import java.io.InputStream; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.HashMap; - -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; - -import org.w3c.dom.Document; -import org.w3c.dom.Node; - -import at.gv.egovernment.moa.util.Base64Utils; -import at.gv.egovernment.moa.util.DOMUtils; - -/** - * @author Administrator - * - * To change this generated comment edit the template variable "typecomment": - * Window>Preferences>Java>Templates. - * To enable and disable the creation of type comments go to - * Window>Preferences>Java>Code Generation. - */ -public class TestGeneratorCX1 extends TestCases { - - String datadirectory = "data/CX1/"; - - String base64content = "RGllcyBzaW5kIFRlc3RkYXRlbg=="; - - String defaultblock = - "<?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>PKCS12RSAKey1</KeyIdentifier>"+ - "<SingleSignatureInfo SecurityLayerConformity=\"false\">"+ - "<DataObjectInfo Structure=\"detached\" ChildOfManifest=\"false\">"+ - "<DataObject Reference=\""+configuration_.getProperty("webbaseDir")+"resources/BookData.xml"+"\">"+ - "<XMLContent xml:space=\"preserve\">"+ - "<data:book xmlns:data=\"http://uri.data.org\" data:hardback=\"yes\">"+ - "<data:title>Gesundheitliche Auswirkungen elektronischer Signaturen</data:title>"+ - "<data:first-name>Ellipse</data:first-name>"+ - "<data:last-name>Kurvenreich</data:last-name>"+ - "<data:birth-date>1951-04-16</data:birth-date>"+ - "<data:birth-location>Hinterm Berg</data:birth-location>"+ - "<data:register-number>6-930-21512-12</data:register-number>"+ - "</data:book>"+ - "</XMLContent>"+ - "</DataObject>"+ - "<CreateTransformsInfoProfile>"+ - "<CreateTransformsInfo>"+ - "<dsig:Transforms>"+ - "<!-- insert transform -->"+ - "</dsig:Transforms>"+ - "<FinalDataMetaInfo>"+ - "<MimeType>text/html</MimeType>"+ - "<Description>http://www.description.com</Description>"+ - "</FinalDataMetaInfo>"+ - "</CreateTransformsInfo>"+ - "<!-- insert supp -->"+ - "</CreateTransformsInfoProfile>"+ - "</DataObjectInfo>"+ - "<!-- insert data2 -->"+ - "</SingleSignatureInfo>"+ - "</CreateXMLSignatureRequest>"; - - private static final int canAlgCanXML = 1; - private static final int canAlgCanXMLwithCom = 2; - private static final int canAlgExcXML = 3; - private static final int canAlgExcXMLwithCom = 4; - - - public String fileprefix = null; - public String filesuffix = null; - - public TestGeneratorCX1() throws Exception { - - super(); - - // Set config properties - configuration_.setProperty("TestClass", "TestGeneratorCX1"); -// configuration_.setProperty("privateKeyFile", baseDir + "additionalFiles/keys/RSAPrivateKey.der"); -// configuration_.setProperty("publicKeyFile", baseDir + "additionalFiles/keys/RSAPublicKey.der"); -// configuration_.setProperty("signatureFile", baseDir + "additionalFiles/signatures/Signature.unit1.xml"); - - iaik.security.provider.IAIK.addAsProvider(); - iaik.security.ecc.provider.ECCProvider.addAsProvider(); - } - - public static void main(String[] args) throws Exception { - TestGeneratorCX1 testcase = new TestGeneratorCX1(); - - testcase.createConfig(); - testcase.create001(); - testcase.create002(); - testcase.create003(); - testcase.create004(); - testcase.create005(); - testcase.create006(); - testcase.create007(); - testcase.create008(); - testcase.create009(); - testcase.create010(); - testcase.create011(); - testcase.create012(); - testcase.create013(); - testcase.create014(); - - testcase.create051(); - testcase.create052(); - testcase.create053(); - testcase.create054(); - testcase.create055(); - - } - - public void createConfig() throws Exception { - - String file = configuration_.getProperty("baseDir") + datadirectory + - configuration_.getProperty("TestClass") + - ".Config.xml"; - String config = - - "<MOAConfiguration xmlns=\"http://reference.e-government.gv.at/namespace/moaconfig/20021122#\">"+ - " <KeyGroup id=\"PKCS12RSAKey1\"> <Key id=\"resources/test-ee2003_normal(buergerkarte).p12\"/> </KeyGroup>"+ - " <KeyGroup id=\"PKCS12RSAKeyExpired\"> <Key id=\"sicher-demo(buergerkarte).p12\"/> </KeyGroup>"+ - - " <KeyGroup id=\"PKCS12ECDSAKey1\"> <Key id=\"ecc.p12\"/> </KeyGroup> "+ - " <KeyGroup id=\"HSMRSAKey1\"> <Key id=\"???\"/> </KeyGroup>"+ - " <KeyGroup id=\"HSMECDSAKey1\"> <Key id=\"???\"/> </KeyGroup>"+ - " <DigestMethodAlgorithm name=\"http://www.w3.org/2000/09/xmldsig#sha1\"/>"+ - " <SignatureAlgorithm name=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/>"+ - " <CanonicalizationAlgorithm name=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/>"+ - " <CreateTransformsInfoProfile id=\"CreateTransformsInfoProfile1\" filename=\""+"file:/"+configuration_.getProperty("webbaseDir")+"CX1_bookprofile.xsl\"/>"+ - "</MOAConfiguration>"; - - - /*"<MOAConfiguration>"+ - " <KeyGroup id=\"PKCS12RSAKey1\"/> <!-- mapped auf \"test(1234).p12\" -->"+ - "</MOAConfiguration>"+ - "<!-- CanonicalizationMethod = http://www.w3.org/TR/2001/REC-xml-c14n-20010315 -->" + - "<!-- SignatureMethod = http://www.w3.org/2000/09/xmldsig#rsa-sha1 -->";*/ - - FileOutputStream fos = new FileOutputStream(file); - fos.write(config.getBytes()); - fos.flush(); - fos.close(); - - fileprefix = configuration_.getProperty("baseDir")+ datadirectory + configuration_.getProperty("TestClass") + "."; - filesuffix = ".xml"; - } - - public void create001() throws Exception { - - String TestNumber = "001"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xslt-19991116\">"+ - "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\"><xsl:output method=\"html\" indent=\"no\"/><xsl:template match=\"data:book\" xmlns:data=\"http://uri.data.org\"><HTML><BODY><H1>Buch: <xsl:value-of select=\"data:title\"/></H1></BODY></HTML></xsl:template></xsl:stylesheet>"+ - "</dsig:Transform>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplXSLT trans = new TransformImplXSLT(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - trans.setInput(s,null); - trans.setStyleSheet(s,null); - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create002() throws Exception { - - String TestNumber = "002"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xslt-19991116\">"+ - "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:output method=\"html\" indent=\"no\"/>"+ - "<xsl:template match=\"data:book\" xmlns:data=\"http://uri.data.org\">"+ - "<HTML>"+ - "<BODY>"+ - "<H1>Buch: <xsl:value-of select=\"data:title\"/>"+ - "</H1>"+ - "</BODY>"+ - "</HTML>"+ - "</xsl:template>"+ - "</xsl:stylesheet>"+ - "</dsig:Transform>"); - - req = replaceString(req,"SecurityLayerConformity=\"false\"","SecurityLayerConformity=\"true\""); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplXSLT trans = new TransformImplXSLT(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - trans.setInput(s,null); - trans.setStyleSheet(s,null); - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - //cpkcs.createReferenceWithManifest(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),"manifestObject"); - cpkcs.createETSIObjects("file:/"+configuration_.getProperty("webbaseDir")+"resources/BookData.xml"); - cpkcs.setKeyInformation(1); - - cpkcs.signer.getSignature().setId("signature-1-1"); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create003() throws Exception { - - String TestNumber = "003"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xpath-19991116\">"+ - "<dsig:XPath xmlns:data=\"http://uri.data.org\">//data:book/data:first-name</dsig:XPath>"+ - "</dsig:Transform>"); - - req = replaceString(req,"<MimeType>text/html</MimeType>","<MimeType>text/plain</MimeType>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplXPath trans = new TransformImplXPath(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/BookData.xml"); - trans.setInput(s,null); - trans.addNSDeclaration("data",new URI("http://uri.data.org")); - trans.setXPath("//data:book/data:first-name"); - //trans.setXPath("ancestor-or-self::data:first-name"); - - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - output = replaceString(output,"<dsig:XPath xmlns:data=\"http://uri.data.org\">","<dsig:XPath>"); // workaround - - writeFile(resFile, output); - - } - - public void create004() throws Exception { - - String TestNumber = "004"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/2002/06/xmldsig-filter2\">"+ - "<xf2:XPath Filter=\"subtract\" xmlns:xf2=\"http://www.w3.org/2002/06/xmldsig-filter2\" xmlns:data=\"http://uri.data.org\">//data:book/data:first-name</xf2:XPath>"+ - "</dsig:Transform>"); - - req = replaceString(req,"<MimeType>text/html</MimeType>","<MimeType>text/xml</MimeType>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplXPath2 trans = new TransformImplXPath2(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/BookData.xml"); - trans.setInput(s,null); - //trans.addNSDeclaration("data",new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml")); - //trans.setXPath("/data:book/data:first-name/node()"); - HashMap temp = new HashMap(); - temp.put("data",new URI("http://uri.data.org")); - trans.addXPathFilter("//data:book/data:first-name",TransformImplXPath2.FILTER_MODE_SUBTRACT_,temp); - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - output = replaceString(output,"<xf2:XPath Filter=\"subtract\" xmlns:data=\"http://uri.data.org\"","<xf2:XPath Filter=\"subtract\" "); - - writeFile(resFile, output); - - } - - public void create005() throws Exception { - - String TestNumber = "005"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/>"); - - req = replaceString(req,"<MimeType>text/html</MimeType>","<MimeType>text/xml</MimeType>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplCanonicalXML trans = new TransformImplCanonicalXML(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - trans.setInput(s,null); - /*trans.addNSDeclaration("data",new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml")); - trans.setXPath("/data:book/data:first-name/node()"); - trans.*/ - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create006() throws Exception { - - String TestNumber = "006"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments\"/>"); - - req = replaceString(req,"<MimeType>text/html</MimeType>","<MimeType>text/xml</MimeType>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplCanonicalXMLWithComments trans = new TransformImplCanonicalXMLWithComments(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - trans.setInput(s,null); - /*trans.addNSDeclaration("data",new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml")); - trans.setXPath("/data:book/data:first-name/node()"); - trans.*/ - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create007() throws Exception { - - String TestNumber = "007"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/2001/10/xml-exc-c14n#\"><ec:InclusiveNamespaces PrefixList=\"dsig\" xmlns:ec=\"http://www.w3.org/2001/10/xml-exc-c14n#\"/></dsig:Transform>"); - - req = replaceString(req,"<MimeType>text/html</MimeType>","<MimeType>text/xml</MimeType>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplExclusiveCanonicalXML trans = new TransformImplExclusiveCanonicalXML(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - trans.setInput(s,null); - trans.setInclusiveNamespacePrefixes("dsig"); - /*trans.addNSDeclaration("data",new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml")); - trans.setXPath("/data:book/data:first-name/node()"); - trans.*/ - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create008() throws Exception { - - String TestNumber = "008"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/2001/10/xml-exc-c14n#WithComments\"><ec:InclusiveNamespaces PrefixList=\"dsig\" xmlns:ec=\"http://www.w3.org/2001/10/xml-exc-c14n#\"/></dsig:Transform>"); - - req = replaceString(req,"<MimeType>text/html</MimeType>","<MimeType>text/xml</MimeType>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplExclusiveCanonicalXMLWithComments trans = new TransformImplExclusiveCanonicalXMLWithComments(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - trans.setInput(s,null); - trans.setInclusiveNamespacePrefixes("dsig"); - /*trans.addNSDeclaration("data",new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml")); - trans.setXPath("/data:book/data:first-name/node()"); - trans.*/ - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create009() throws Exception { - - String TestNumber = "009"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/>"); - - req = replaceString(req,"<XMLContent xml:space=\"preserve\">"+ - "<data:book xmlns:data=\"http://uri.data.org\" data:hardback=\"yes\">"+ - "<data:title>Gesundheitliche Auswirkungen elektronischer Signaturen</data:title>"+ - "<data:first-name>Ellipse</data:first-name>"+ - "<data:last-name>Kurvenreich</data:last-name>"+ - "<data:birth-date>1951-04-16</data:birth-date>"+ - "<data:birth-location>Hinterm Berg</data:birth-location>"+ - "<data:register-number>6-930-21512-12</data:register-number>"+ - "</data:book>"+ - "</XMLContent>",""); - - req = replaceString(req, - "<DataObject Reference=\""+configuration_.getProperty("webbaseDir")+"resources/BookData.xml"+"\">", - "<DataObject Reference=\"\">"); - - //req = replaceString(req,"Structure=\"detached\"","Structure=\"enveloping\""); - - - req = replaceString(req,"<!-- insert data2 -->", - "<CreateSignatureInfo><CreateSignatureEnvironment><XMLContent xml:space=\"preserve\"><env:Document xmlns:env=\"http://uri.env.org\">Text</env:Document></XMLContent></CreateSignatureEnvironment><CreateSignatureEnvironmentProfile><CreateSignatureLocation xmlns:env=\"http://uri.env.org\" Index=\"1\">//env:Document</CreateSignatureLocation></CreateSignatureEnvironmentProfile></CreateSignatureInfo>"); - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - InputStream bis = new ByteArrayInputStream(("<env:Document xmlns:env=\"http://uri.env.org\">Text</env:Document>").getBytes()); - //Document-Builder holen - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - factory.setNamespaceAware(true); - DocumentBuilder builder = factory.newDocumentBuilder(); - //Dokument Parsen - Document reqDoc = builder.parse(bis); - - System.out.println(DOMUtils.serializeNode(reqDoc.getDocumentElement())); - //Position für die Signatur angeben - String xPath_Pos = "/node()"; - //XPAth-Prefixe deklarieren - String xPath_Prefix = "env xmlns:env=\"http://uri.env.org\""; - Position pos = new Position(xPath_Pos, xPath_Prefix,0); - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init(reqDoc,pos,"signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplEnvelopedSignature trans = new TransformImplEnvelopedSignature(); - - /*trans.addNSDeclaration("data",new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml")); - trans.setXPath("/data:book/data:first-name/node()"); - trans.*/ - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(""),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - output = replaceString(output,"<dsig:Signature","<env:Document xmlns:env=\"http://uri.env.org\">Text<dsig:Signature"); - output = replaceString(output,"</dsig:Signature>","</dsig:Signature></env:Document>"); - - - - writeFile(resFile, output); - - } - - public void create010() throws Exception { - - String TestNumber = "010"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/>"+ - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xslt-19991116\">"+ - "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:output method=\"html\" indent=\"no\"/>"+ - "<xsl:template match=\"data:book\" xmlns:data=\"http://uri.data.org\">"+ - "<HTML>"+ - "<BODY>"+ - "<H1>Buch: <xsl:value-of select=\"data:title\"/>"+ - "</H1>"+ - "</BODY>"+ - "</HTML>"+ - "</xsl:template>"+ - "</xsl:stylesheet>"+ - "</dsig:Transform>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[2]; - TransformImplCanonicalXML trans = new TransformImplCanonicalXML(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - trans.setInput(s,null); - /*trans.addNSDeclaration("data",new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml")); - trans.setXPath("/data:book/data:first-name/node()"); - trans.*/ - tr[0] = trans; - - TransformImplXSLT tr2 = new TransformImplXSLT(); - InputStream s2 = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - tr2.setInput(s2,null); - tr2.setStyleSheet(s2,null); - tr[1] = tr2; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create011() throws Exception { - - String TestNumber = "011"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xslt-19991116\">"+ - "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:include href=\""+configuration_.getProperty("webbaseDir")+"resources/CX1_book_not_here.xsl"+"\"/>"+ - "</xsl:stylesheet>"+ - "</dsig:Transform>"); - - req = replaceString(req,"<!-- insert supp -->", - "<Supplement>"+ - "<Content Reference=\""+configuration_.getProperty("webbaseDir")+"resources/CX1_book_not_here.xsl"+"\">"+ - "<Base64Content>"+ - Base64Utils.encode(("<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:output method=\"html\" indent=\"no\"/>"+ - "<xsl:template match=\"data:book\" xmlns:data=\"http://uri.data.org\">"+ - "<HTML>"+ - "<BODY>"+ - "<H1>Buch: <xsl:value-of select=\"data:title\"/>"+ - "</H1>"+ - "</BODY>"+ - "</HTML>"+ - "</xsl:template>"+ - "</xsl:stylesheet>").getBytes())+ - "</Base64Content>"+ - "</Content>"+ - "</Supplement>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplXSLT trans = new TransformImplXSLT(); - URL u = new URL(configuration_.getProperty("webbaseDir")+"resources/CX1_bookref_not_here.xsl"); - URLConnection hu = u.openConnection(); - //trans.setInput(s,null); - trans.setStyleSheet(hu.getInputStream(),new URI(configuration_.getProperty("webbaseDir")+"resources/CX1_bookref_not_here.xsl")); - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - //cpkcs.createReferenceWithManifest(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),"manifestObject"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - } - - public void create012() throws Exception { - - String TestNumber = "012"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xslt-19991116\">"+ - "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:include href=\""+configuration_.getProperty("webbaseDir")+"resources/CX1_book_not_here.xsl"+"\"/>"+ - "</xsl:stylesheet>"+ - "</dsig:Transform>"); - - req = replaceString(req,"<!-- insert data2 -->", - "<DataObjectInfo Structure=\"detached\" ChildOfManifest=\"false\">"+ - "<DataObject Reference=\""+configuration_.getProperty("webbaseDir")+"resources/BookData.xml"+"\">"+ - "<XMLContent xml:space=\"preserve\">"+ - "<data:book xmlns:data=\"http://uri.data.org\" data:hardback=\"yes\">"+ - "<data:title>Gesundheitliche Auswirkungen elektronischer Signaturen</data:title>"+ - "<data:first-name>Ellipse</data:first-name>"+ - "<data:last-name>Kurvenreich</data:last-name>"+ - "<data:birth-date>1951-04-16</data:birth-date>"+ - "<data:birth-location>Hinterm Berg</data:birth-location>"+ - "<data:register-number>6-930-21512-12</data:register-number>"+ - "</data:book>"+ - "</XMLContent>"+ - "</DataObject>"+ - "<CreateTransformsInfoProfile>"+ - "<CreateTransformsInfo>"+ - "<dsig:Transforms>"+ - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xslt-19991116\">"+ - "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:include href=\""+configuration_.getProperty("webbaseDir")+"resources/CX1_book_not_here.xsl\"/>"+ - "</xsl:stylesheet>"+ - "</dsig:Transform>"+ - "</dsig:Transforms>"+ - "<FinalDataMetaInfo>"+ - "<MimeType>text/html</MimeType>"+ - "</FinalDataMetaInfo>"+ - "</CreateTransformsInfo>"+ - "<Supplement>"+ - "<Content Reference=\""+configuration_.getProperty("webbaseDir")+"resources/CX1_book_not_here.xsl"+"\">"+ - "<Base64Content>"+ - Base64Utils.encode(("<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:output method=\"html\" indent=\"no\"/>"+ - "<xsl:template match=\"data:book\" xmlns:data=\"http://uri.data.org\">"+ - "<HTML>"+ - "<BODY>"+ - "<H1>Buch: <xsl:value-of select=\"data:title\"/>"+ - "</H1>"+ - "</BODY>"+ - "</HTML>"+ - "</xsl:template>"+ - "</xsl:stylesheet>").getBytes())+ - "</Base64Content>"+ - "</Content>"+ - "</Supplement>"+ - "</CreateTransformsInfoProfile>"+ - "</DataObjectInfo>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplXSLT trans = new TransformImplXSLT(); - URL u = new URL(configuration_.getProperty("webbaseDir")+"resources/CX1_bookref_not_here.xsl"); - URLConnection hu = u.openConnection(); - //trans.setInput(s,null); - trans.setStyleSheet(hu.getInputStream(),new URI(configuration_.getProperty("webbaseDir")+"resources/CX1_bookref_not_here.xsl")); - - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-2"); - //cpkcs.createReferenceWithManifest(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),"manifestObject"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create013() throws Exception { - - String TestNumber = "013"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock, - "<CreateTransformsInfoProfile>"+ - "<CreateTransformsInfo>"+ - "<dsig:Transforms>"+ - "<!-- insert transform -->"+ - "</dsig:Transforms>"+ - "<FinalDataMetaInfo>"+ - "<MimeType>text/html</MimeType>"+ - "<Description>http://www.description.com</Description>"+ - "</FinalDataMetaInfo>"+ - "</CreateTransformsInfo>"+ - "<!-- insert supp -->"+ - "</CreateTransformsInfoProfile>", - "<CreateTransformsInfoProfileID>CreateTransformsInfoProfile1</CreateTransformsInfoProfileID>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplXSLT trans = new TransformImplXSLT(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/CX1_book.xsl"); - trans.setInput(s,null); - trans.setStyleSheet(s,null); - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),tr,"reference-1-1"); - //cpkcs.createReferenceWithManifest(new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml"),"manifestObject"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create014() throws Exception { - - String TestNumber = "014"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#base64\"/>"); - - req = replaceString(req, - "<DataObject Reference=\""+configuration_.getProperty("webbaseDir")+"resources/BookData.xml"+"\">", - "<DataObject Reference=\""+configuration_.getProperty("webbaseDir")+"resources/testBase64.txt"+"\">"); - - req = replaceString(req, - "<XMLContent xml:space=\"preserve\">"+ - "<data:book xmlns:data=\"http://uri.data.org\" data:hardback=\"yes\">"+ - "<data:title>Gesundheitliche Auswirkungen elektronischer Signaturen</data:title>"+ - "<data:first-name>Ellipse</data:first-name>"+ - "<data:last-name>Kurvenreich</data:last-name>"+ - "<data:birth-date>1951-04-16</data:birth-date>"+ - "<data:birth-location>Hinterm Berg</data:birth-location>"+ - "<data:register-number>6-930-21512-12</data:register-number>"+ - "</data:book>"+ - "</XMLContent>", - /*"<Base64Content>RGllcyBzaW5kIFRlc3RkYXRlbg==</Base64Content>"*/""); - - req = replaceString(req,"<MimeType>text/html</MimeType>","<MimeType>text/plain</MimeType>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".Res"+filesuffix; - - CreatePKCSSignature cpkcs = new CreatePKCSSignature(); - cpkcs.init("signature-1-1"); - cpkcs.setCanoncialization(canAlgCanXML); - //cpkcs.createReference(true,"Dies sind testdaten"); - - Transform[] tr = new Transform[1]; - TransformImplBase64Decode trans = new TransformImplBase64Decode(); - InputStream s = new FileInputStream(configuration_.getProperty("baseDir")+"resources/testBase64.txt"); - trans.setInput(s,null); - /*trans.addNSDeclaration("data",new URI(configuration_.getProperty("webbaseDir")+"resources/BookData.xml")); - trans.setXPath("/data:book/data:first-name/node()"); - trans.*/ - tr[0] = trans; - - cpkcs.createReferenceWithTransforms(new URI(configuration_.getProperty("webbaseDir")+"resources/testBase64.txt"),tr,"reference-1-1"); - cpkcs.setKeyInformation(1); - - Document doc = cpkcs.returnSig(); - - String output = makeOutputFile(doc); - - writeFile(resFile, output); - - } - - public void create051() throws Exception { - - String TestNumber = "051"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xpath-19991116\">"+ - "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:output method=\"html\" indent=\"no\"/>"+ - "<xsl:template match=\"data:book\" xmlns:data=\"http://uri.data.org\">"+ - "<HTML>"+ - "<BODY>"+ - "<H1>Buch: <xsl:value-of select=\"data:title\"/>"+ - "</H1>"+ - "</BODY>"+ - "</HTML>"+ - "</xsl:template>"+ - "</xsl:stylesheet>"+ - "</dsig:Transform>"); - - req = replaceString(req,"SecurityLayerConformity=\"false\"","SecurityLayerConformity=\"true\""); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".ErrRes"+filesuffix; - - writeFile(resFile,"2202"); - } - - public void create052() throws Exception { - - String TestNumber = "052"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xslt-19991116\">"+ - "<XPath>/data:book/data:first-name/node()</XPath>"+ - "</dsig:Transform>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".ErrRes"+filesuffix; - - writeFile(resFile,"2215"); - - - } - - public void create053() throws Exception { - - String TestNumber = "053"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - " <dsig:Transform Algorithm=\"http://www.w3.org/TR/1999/REC-xslt-19991116\">"+ - " <xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - " <xsl:include href=\"file:/transform.xsl\"/>"+ - " </xsl:stylesheet>"+ - " </dsig:Transform>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".ErrRes"+filesuffix; - - writeFile(resFile,"2220"); - - } - - public void create054() throws Exception { - - String TestNumber = "054"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock, - "<CreateTransformsInfoProfile>"+ - "<CreateTransformsInfo>"+ - "<dsig:Transforms>"+ - "<!-- insert transform -->"+ - "</dsig:Transforms>"+ - "<FinalDataMetaInfo>"+ - "<MimeType>text/html</MimeType>"+ - "<Description>http://www.description.com</Description>"+ - "</FinalDataMetaInfo>"+ - "</CreateTransformsInfo>"+ - "<!-- insert supp -->"+ - "</CreateTransformsInfoProfile>", - "<CreateTransformsInfoProfileID>CreateTransformsInfoProfileNonValid</CreateTransformsInfoProfileID>"); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".ErrRes"+filesuffix; - - writeFile(resFile,"2234"); - - } - - public void create055() throws Exception { - - String TestNumber = "055"; - String reqFile = fileprefix + TestNumber + ".Req"+filesuffix; - - String req = replaceString(defaultblock,"<!-- insert transform -->", - "<dsig:Transform Algorithm=\"http://www.w3.org/2002/06/xmldsig-filter2\">"+ - "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"1.0\">"+ - "<xsl:output method=\"html\" indent=\"no\"/>"+ - "<xsl:template match=\"data:book\" xmlns:data=\"http://uri.data.org\">"+ - "<HTML>"+ - "<BODY>"+ - "<H1>Buch: <xsl:value-of select=\"data:title\"/>"+ - "</H1>"+ - "</BODY>"+ - "</HTML>"+ - "</xsl:template>"+ - "</xsl:stylesheet>"+ - "</dsig:Transform>"); - - req = replaceString(req,"SecurityLayerConformity=\"false\"","SecurityLayerConformity=\"true\""); - - writeFile(reqFile,req); - - String resFile = fileprefix + TestNumber + ".ErrRes"+filesuffix; - - writeFile(resFile,"2216"); - } - - public void writeFile(String filename,String data) throws Exception - { - BufferedWriter bw = new BufferedWriter(new FileWriter(filename)); - bw.write(data); - bw.close(); - } - - public String makeOutputFile(Document signatureDoc) throws Exception - { - ArrayList foundNodes = new ArrayList(); - findNode(signatureDoc.getDocumentElement(),"dsig:Signature",foundNodes); - - Node outputNode = null; - - if(foundNodes.size()>0) - { - outputNode = (Node)foundNodes.get(0); - } - - String erg = Node2String(outputNode); - - // remove the <?xml ?> Prologue - int pos = erg.indexOf("<dsig"); - erg = erg.substring(pos); - - // insert the dsig:signature element in a MOA Response Message - erg = "<?xml version=\"1.0\" encoding=\"utf-8\"?>"+ - "<CreateXMLSignatureResponse" + - " xmlns=\"http://reference.e-government.gv.at/namespace/moa/20020822#\""+ - ">"+ - //" xmlns:etsi=\"http://uri.etsi.org/01903/v1.1.1#\">"+ - "<SignatureEnvironment>" + - erg + "</SignatureEnvironment> </CreateXMLSignatureResponse>"; - - return erg; - } -} |