Author: coheigea
Date: Fri Apr 10 11:31:25 2009
New Revision: 763911
URL: http://svn.apache.org/viewvc?rev=763911&view=rev
Log:
[WSS-40] - Added some signature tests.
Added:
webservices/wss4j/trunk/keys/ca.db.certs/12.pem
webservices/wss4j/trunk/keys/wss40.cer
webservices/wss4j/trunk/keys/wss40.jks (with props)
webservices/wss4j/trunk/keys/wss40.pem
webservices/wss4j/trunk/keys/wss40CA.jks (with props)
webservices/wss4j/trunk/keys/wss40CA.pem
webservices/wss4j/trunk/keys/wss40CAKey.pem
webservices/wss4j/trunk/test/wss40.properties
webservices/wss4j/trunk/test/wss40CA.properties
webservices/wss4j/trunk/test/wssec/TestWSSecurityWSS40.java
Modified:
webservices/wss4j/trunk/keys/ca.config
webservices/wss4j/trunk/keys/ca.db.index
webservices/wss4j/trunk/keys/ca.db.serial
webservices/wss4j/trunk/test/wssec/PackageTests.java
Modified: webservices/wss4j/trunk/keys/ca.config
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/ca.config?rev=763911&r1=763910&r2=763911&view=diff
==============================================================================
Binary files - no diff available.
Added: webservices/wss4j/trunk/keys/ca.db.certs/12.pem
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/ca.db.certs/12.pem?rev=763911&view=auto
==============================================================================
--- webservices/wss4j/trunk/keys/ca.db.certs/12.pem (added)
+++ webservices/wss4j/trunk/keys/ca.db.certs/12.pem Fri Apr 10 11:31:25 2009
@@ -0,0 +1,65 @@
+Certificate:
+ Data:
+ Version: 3 (0x2)
+ Serial Number: 18 (0x12)
+ Signature Algorithm: md5WithRSAEncryption
+ Issuer: C=DE, ST=Bayern, L=Munich, O=Home, OU=Apache WSS4J, CN=Werner
+ Validity
+ Not Before: Apr 10 09:41:09 2009 GMT
+ Not After : Apr 8 09:41:09 2019 GMT
+ Subject: C=IE, ST=Leinster, L=Dublin, O=Apache, OU=WSS4J, CN=Colm
+ Subject Public Key Info:
+ Public Key Algorithm: rsaEncryption
+ RSA Public Key: (1024 bit)
+ Modulus (1024 bit):
+ 00:91:05:87:f8:1d:f6:63:46:fd:52:34:47:25:ff:
+ 67:57:bf:d8:1f:42:96:ea:10:f5:f9:d3:22:d1:be:
+ 6f:72:88:37:96:d9:bf:0d:d1:c1:0d:6b:f4:ba:1a:
+ 5d:a4:9c:cb:04:bc:e5:b0:0e:94:89:1d:5e:d9:50:
+ 86:72:6e:71:cb:e3:6d:72:d6:63:d0:cf:8e:61:1e:
+ 24:58:89:61:95:ac:22:89:0d:80:33:03:58:72:94:
+ e4:c4:70:ea:ee:a0:67:48:57:a6:47:8e:86:27:25:
+ d8:20:f1:c9:a2:31:4a:c1:fe:d4:57:39:12:c4:1f:
+ e5:92:5d:78:f5:dd:38:f3:b5
+ Exponent: 65537 (0x10001)
+ X509v3 extensions:
+ X509v3 Basic Constraints:
+ CA:FALSE
+ Netscape Comment:
+ OpenSSL Generated Certificate
+ X509v3 Subject Key Identifier:
+ 11:7F:5F:33:D6:CE:38:B0:9D:87:C9:77:EF:6F:6C:85:08:11:B1:20
+ X509v3 Authority Key Identifier:
+
keyid:2B:83:7C:A1:7D:26:0F:D0:2C:F6:1B:CF:D0:D5:5E:A1:9B:AF:91:5A
+ DirName:/C=DE/ST=Bayern/L=Munich/O=Home/OU=Apache
WSS4J/CN=Werner
+ serial:DF:03:2C:56:D6:F5:09:DB
+
+ Signature Algorithm: md5WithRSAEncryption
+ 91:d1:57:49:84:7d:c0:4d:96:ac:d2:aa:d5:71:73:11:05:41:
+ d0:59:d3:65:f0:ad:bc:76:50:4b:6f:ca:56:b2:05:05:d4:7b:
+ aa:30:9b:3f:80:45:52:f8:54:fb:96:58:f5:ad:c8:70:a4:c5:
+ d4:fe:f4:2b:a7:9c:a4:56:af:e1:ae:fa:b2:98:73:45:a2:e9:
+ 72:51:77:f0:81:81:fa:cf:01:99:40:8f:09:4d:5f:de:68:c2:
+ d7:44:d4:21:da:04:5a:b7:55:1c:ed:ca:7e:33:bd:6d:da:e1:
+ 14:ec:8d:a8:4a:13:26:38:cc:fc:45:b5:55:68:cb:04:a6:00:
+ 9a:3a
+-----BEGIN CERTIFICATE-----
+MIIDNDCCAp2gAwIBAgIBEjANBgkqhkiG9w0BAQQFADBmMQswCQYDVQQGEwJERTEP
+MA0GA1UECBMGQmF5ZXJuMQ8wDQYDVQQHEwZNdW5pY2gxDTALBgNVBAoTBEhvbWUx
+FTATBgNVBAsTDEFwYWNoZSBXU1M0SjEPMA0GA1UEAxMGV2VybmVyMB4XDTA5MDQx
+MDA5NDEwOVoXDTE5MDQwODA5NDEwOVowYTELMAkGA1UEBhMCSUUxETAPBgNVBAgT
+CExlaW5zdGVyMQ8wDQYDVQQHEwZEdWJsaW4xDzANBgNVBAoTBkFwYWNoZTEOMAwG
+A1UECxMFV1NTNEoxDTALBgNVBAMTBENvbG0wgZ8wDQYJKoZIhvcNAQEBBQADgY0A
+MIGJAoGBAJEFh/gd9mNG/VI0RyX/Z1e/2B9CluoQ9fnTItG+b3KIN5bZvw3RwQ1r
+9LoaXaScywS85bAOlIkdXtlQhnJuccvjbXLWY9DPjmEeJFiJYZWsIokNgDMDWHKU
+5MRw6u6gZ0hXpkeOhicl2CDxyaIxSsH+1Fc5EsQf5ZJdePXdOPO1AgMBAAGjgfYw
+gfMwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5lcmF0ZWQg
+Q2VydGlmaWNhdGUwHQYDVR0OBBYEFBF/XzPWzjiwnYfJd+9vbIUIEbEgMIGYBgNV
+HSMEgZAwgY2AFCuDfKF9Jg/QLPYbz9DVXqGbr5FaoWqkaDBmMQswCQYDVQQGEwJE
+RTEPMA0GA1UECBMGQmF5ZXJuMQ8wDQYDVQQHEwZNdW5pY2gxDTALBgNVBAoTBEhv
+bWUxFTATBgNVBAsTDEFwYWNoZSBXU1M0SjEPMA0GA1UEAxMGV2VybmVyggkA3wMs
+Vtb1CdswDQYJKoZIhvcNAQEEBQADgYEAkdFXSYR9wE2WrNKq1XFzEQVB0FnTZfCt
+vHZQS2/KVrIFBdR7qjCbP4BFUvhU+5ZY9a3IcKTF1P70K6ecpFav4a76sphzRaLp
+clF38IGB+s8BmUCPCU1f3mjC10TUIdoEWrdVHO3KfjO9bdrhFOyNqEoTJjjM/EW1
+VWjLBKYAmjo=
+-----END CERTIFICATE-----
Modified: webservices/wss4j/trunk/keys/ca.db.index
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/ca.db.index?rev=763911&r1=763910&r2=763911&view=diff
==============================================================================
Binary files - no diff available.
Modified: webservices/wss4j/trunk/keys/ca.db.serial
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/ca.db.serial?rev=763911&r1=763910&r2=763911&view=diff
==============================================================================
Binary files - no diff available.
Added: webservices/wss4j/trunk/keys/wss40.cer
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/wss40.cer?rev=763911&view=auto
==============================================================================
--- webservices/wss4j/trunk/keys/wss40.cer (added)
+++ webservices/wss4j/trunk/keys/wss40.cer Fri Apr 10 11:31:25 2009
@@ -0,0 +1,10 @@
+-----BEGIN NEW CERTIFICATE REQUEST-----
+MIIBoTCCAQoCAQAwYTELMAkGA1UEBhMCSUUxETAPBgNVBAgTCExlaW5zdGVyMQ8wDQYDVQQHEwZE
+dWJsaW4xDzANBgNVBAoTBkFwYWNoZTEOMAwGA1UECxMFV1NTNEoxDTALBgNVBAMTBENvbG0wgZ8w
+DQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAJEFh/gd9mNG/VI0RyX/Z1e/2B9CluoQ9fnTItG+b3KI
+N5bZvw3RwQ1r9LoaXaScywS85bAOlIkdXtlQhnJuccvjbXLWY9DPjmEeJFiJYZWsIokNgDMDWHKU
+5MRw6u6gZ0hXpkeOhicl2CDxyaIxSsH+1Fc5EsQf5ZJdePXdOPO1AgMBAAGgADANBgkqhkiG9w0B
+AQQFAAOBgQAZSvE+V+XSwmO7CREAcNLljiBvLLAmyhPxzsKmoEHSenvWXjLVCOyVwspmED2aqyMe
+X+1J6TTQYjd1AKUZFm9L7reKrHDC9ipCPvyU+KfYl3/cy7IV4bgA1cIquFkZyeGEnjhrgIMW/htf
+zeqRtFtCaHiHv+tlT4kEdTQEp1yIcg==
+-----END NEW CERTIFICATE REQUEST-----
Added: webservices/wss4j/trunk/keys/wss40.jks
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/wss40.jks?rev=763911&view=auto
==============================================================================
Binary file - no diff available.
Propchange: webservices/wss4j/trunk/keys/wss40.jks
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: webservices/wss4j/trunk/keys/wss40.pem
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/wss40.pem?rev=763911&view=auto
==============================================================================
--- webservices/wss4j/trunk/keys/wss40.pem (added)
+++ webservices/wss4j/trunk/keys/wss40.pem Fri Apr 10 11:31:25 2009
@@ -0,0 +1,65 @@
+Certificate:
+ Data:
+ Version: 3 (0x2)
+ Serial Number: 18 (0x12)
+ Signature Algorithm: md5WithRSAEncryption
+ Issuer: C=DE, ST=Bayern, L=Munich, O=Home, OU=Apache WSS4J, CN=Werner
+ Validity
+ Not Before: Apr 10 09:41:09 2009 GMT
+ Not After : Apr 8 09:41:09 2019 GMT
+ Subject: C=IE, ST=Leinster, L=Dublin, O=Apache, OU=WSS4J, CN=Colm
+ Subject Public Key Info:
+ Public Key Algorithm: rsaEncryption
+ RSA Public Key: (1024 bit)
+ Modulus (1024 bit):
+ 00:91:05:87:f8:1d:f6:63:46:fd:52:34:47:25:ff:
+ 67:57:bf:d8:1f:42:96:ea:10:f5:f9:d3:22:d1:be:
+ 6f:72:88:37:96:d9:bf:0d:d1:c1:0d:6b:f4:ba:1a:
+ 5d:a4:9c:cb:04:bc:e5:b0:0e:94:89:1d:5e:d9:50:
+ 86:72:6e:71:cb:e3:6d:72:d6:63:d0:cf:8e:61:1e:
+ 24:58:89:61:95:ac:22:89:0d:80:33:03:58:72:94:
+ e4:c4:70:ea:ee:a0:67:48:57:a6:47:8e:86:27:25:
+ d8:20:f1:c9:a2:31:4a:c1:fe:d4:57:39:12:c4:1f:
+ e5:92:5d:78:f5:dd:38:f3:b5
+ Exponent: 65537 (0x10001)
+ X509v3 extensions:
+ X509v3 Basic Constraints:
+ CA:FALSE
+ Netscape Comment:
+ OpenSSL Generated Certificate
+ X509v3 Subject Key Identifier:
+ 11:7F:5F:33:D6:CE:38:B0:9D:87:C9:77:EF:6F:6C:85:08:11:B1:20
+ X509v3 Authority Key Identifier:
+
keyid:2B:83:7C:A1:7D:26:0F:D0:2C:F6:1B:CF:D0:D5:5E:A1:9B:AF:91:5A
+ DirName:/C=DE/ST=Bayern/L=Munich/O=Home/OU=Apache
WSS4J/CN=Werner
+ serial:DF:03:2C:56:D6:F5:09:DB
+
+ Signature Algorithm: md5WithRSAEncryption
+ 91:d1:57:49:84:7d:c0:4d:96:ac:d2:aa:d5:71:73:11:05:41:
+ d0:59:d3:65:f0:ad:bc:76:50:4b:6f:ca:56:b2:05:05:d4:7b:
+ aa:30:9b:3f:80:45:52:f8:54:fb:96:58:f5:ad:c8:70:a4:c5:
+ d4:fe:f4:2b:a7:9c:a4:56:af:e1:ae:fa:b2:98:73:45:a2:e9:
+ 72:51:77:f0:81:81:fa:cf:01:99:40:8f:09:4d:5f:de:68:c2:
+ d7:44:d4:21:da:04:5a:b7:55:1c:ed:ca:7e:33:bd:6d:da:e1:
+ 14:ec:8d:a8:4a:13:26:38:cc:fc:45:b5:55:68:cb:04:a6:00:
+ 9a:3a
+-----BEGIN CERTIFICATE-----
+MIIDNDCCAp2gAwIBAgIBEjANBgkqhkiG9w0BAQQFADBmMQswCQYDVQQGEwJERTEP
+MA0GA1UECBMGQmF5ZXJuMQ8wDQYDVQQHEwZNdW5pY2gxDTALBgNVBAoTBEhvbWUx
+FTATBgNVBAsTDEFwYWNoZSBXU1M0SjEPMA0GA1UEAxMGV2VybmVyMB4XDTA5MDQx
+MDA5NDEwOVoXDTE5MDQwODA5NDEwOVowYTELMAkGA1UEBhMCSUUxETAPBgNVBAgT
+CExlaW5zdGVyMQ8wDQYDVQQHEwZEdWJsaW4xDzANBgNVBAoTBkFwYWNoZTEOMAwG
+A1UECxMFV1NTNEoxDTALBgNVBAMTBENvbG0wgZ8wDQYJKoZIhvcNAQEBBQADgY0A
+MIGJAoGBAJEFh/gd9mNG/VI0RyX/Z1e/2B9CluoQ9fnTItG+b3KIN5bZvw3RwQ1r
+9LoaXaScywS85bAOlIkdXtlQhnJuccvjbXLWY9DPjmEeJFiJYZWsIokNgDMDWHKU
+5MRw6u6gZ0hXpkeOhicl2CDxyaIxSsH+1Fc5EsQf5ZJdePXdOPO1AgMBAAGjgfYw
+gfMwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5lcmF0ZWQg
+Q2VydGlmaWNhdGUwHQYDVR0OBBYEFBF/XzPWzjiwnYfJd+9vbIUIEbEgMIGYBgNV
+HSMEgZAwgY2AFCuDfKF9Jg/QLPYbz9DVXqGbr5FaoWqkaDBmMQswCQYDVQQGEwJE
+RTEPMA0GA1UECBMGQmF5ZXJuMQ8wDQYDVQQHEwZNdW5pY2gxDTALBgNVBAoTBEhv
+bWUxFTATBgNVBAsTDEFwYWNoZSBXU1M0SjEPMA0GA1UEAxMGV2VybmVyggkA3wMs
+Vtb1CdswDQYJKoZIhvcNAQEEBQADgYEAkdFXSYR9wE2WrNKq1XFzEQVB0FnTZfCt
+vHZQS2/KVrIFBdR7qjCbP4BFUvhU+5ZY9a3IcKTF1P70K6ecpFav4a76sphzRaLp
+clF38IGB+s8BmUCPCU1f3mjC10TUIdoEWrdVHO3KfjO9bdrhFOyNqEoTJjjM/EW1
+VWjLBKYAmjo=
+-----END CERTIFICATE-----
Added: webservices/wss4j/trunk/keys/wss40CA.jks
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/wss40CA.jks?rev=763911&view=auto
==============================================================================
Binary file - no diff available.
Propchange: webservices/wss4j/trunk/keys/wss40CA.jks
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: webservices/wss4j/trunk/keys/wss40CA.pem
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/wss40CA.pem?rev=763911&view=auto
==============================================================================
--- webservices/wss4j/trunk/keys/wss40CA.pem (added)
+++ webservices/wss4j/trunk/keys/wss40CA.pem Fri Apr 10 11:31:25 2009
@@ -0,0 +1,19 @@
+-----BEGIN CERTIFICATE-----
+MIIDFjCCAn+gAwIBAgIJAN8DLFbW9QnbMA0GCSqGSIb3DQEBBQUAMGYxCzAJBgNV
+BAYTAkRFMQ8wDQYDVQQIEwZCYXllcm4xDzANBgNVBAcTBk11bmljaDENMAsGA1UE
+ChMESG9tZTEVMBMGA1UECxMMQXBhY2hlIFdTUzRKMQ8wDQYDVQQDEwZXZXJuZXIw
+HhcNMDkwNDEwMDkzODUyWhcNMDkwNTEwMDkzODUyWjBmMQswCQYDVQQGEwJERTEP
+MA0GA1UECBMGQmF5ZXJuMQ8wDQYDVQQHEwZNdW5pY2gxDTALBgNVBAoTBEhvbWUx
+FTATBgNVBAsTDEFwYWNoZSBXU1M0SjEPMA0GA1UEAxMGV2VybmVyMIGfMA0GCSqG
+SIb3DQEBAQUAA4GNADCBiQKBgQCmgtgDI2hycWmG0OCXo/fGYS2myNb8Ye+TvjkF
+XyrMogWNSTVBQQi8OHOuZQeHYCP83edVO3dbZ/VCJ+4KqfXptLoFAvoiT+1Rv8Ul
+MMASnfGn2ZLlrShCQaaPzhI+Uy2C6RoQY7yjJUv7bdC8WSNca6N9H1JWliruaysI
+F7+lQQIDAQABo4HLMIHIMB0GA1UdDgQWBBQrg3yhfSYP0Cz2G8/Q1V6hm6+RWjCB
+mAYDVR0jBIGQMIGNgBQrg3yhfSYP0Cz2G8/Q1V6hm6+RWqFqpGgwZjELMAkGA1UE
+BhMCREUxDzANBgNVBAgTBkJheWVybjEPMA0GA1UEBxMGTXVuaWNoMQ0wCwYDVQQK
+EwRIb21lMRUwEwYDVQQLEwxBcGFjaGUgV1NTNEoxDzANBgNVBAMTBldlcm5lcoIJ
+AN8DLFbW9QnbMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAk2DCM7yQ
+AFEiAtcM8B8slyE99FLtaQlagT9KMpL3uVg3O/DF57HDjBXIO+rP75aGbGGaOq1G
+qxenhazkEFnsA20oqUYX5j9gk66glvBJn0LThmIifWHfe9e781uSx2qdhl6NHj3D
+er26SAtz2BLjeiptxz/LmGLKoMC40S1+4Wo=
+-----END CERTIFICATE-----
Added: webservices/wss4j/trunk/keys/wss40CAKey.pem
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/keys/wss40CAKey.pem?rev=763911&view=auto
==============================================================================
--- webservices/wss4j/trunk/keys/wss40CAKey.pem (added)
+++ webservices/wss4j/trunk/keys/wss40CAKey.pem Fri Apr 10 11:31:25 2009
@@ -0,0 +1,18 @@
+-----BEGIN RSA PRIVATE KEY-----
+Proc-Type: 4,ENCRYPTED
+DEK-Info: DES-EDE3-CBC,D5836A91B65E76D5
+
+2DeecNm4txyxfdUe//EE24gvZ6gjsXyt2nCK6QqRKQWl2U36J9gczWdD9R2u7GcM
+1fcz1k/PovM0xVSFPNn1Vlwmeqmn2ECNI5UXzaiSAizMySADhxpWzg76OqFvx52K
+65La0DoIUuT7mqvGoVL9KuHxQZ6FbKqKVMFa/UDDOqq4upCec7Jf4B4UUKgJPEu7
+4uscLCehcUKAmyJ8qDd7jWDGCXYLdR+ZZg8qWgysdFThks0vX++WESa0lS0n8eg6
+xKAgd6BzemmZmkCcnxCmjLbW8eAj9um/dbe3C2gnfKE/NlHWDzEa7ru1Jz5o92wg
+OqNfdKvlgCNVsds1B+aHVLdypvVKy3N93pNRX19e3chWj3lEwFG2tA7ctvxPz4Rc
+vzbc3y4k5oHo4AqPZnq++GGsBc1OVOdgFk5RUtsHjFIaJBwjvkvrGhWm4BuFbue7
+Nap9KjqD9Wu+9cqR/wew+F1pTrPcxDv0u6QGJhq4waCJmyQEGfJInQaVsZSCzm/0
+tNeqOvp0oyemy2jHcsfgSpCJ1P+kf3trD7hssSupsHF0kuqzgDsPy4USuH1oxA8O
+TeesRJpP1h5yhWM8ohnqkET2wZ54zGyPXsgdboX2DBKMEzcoz0mE6SQXbRJB+SPM
+LNWs9qL8vwSykIRcbDpa/dq8oIfzyggcfn5NA0TtCHG20siMaulxIQMrWnEAkHXB
+lfImh3HmqHQ3OaMA70bcOpUpqkS+jw4M0oHVuxdTuEv6H+YP0KGg8bs6foPrZmjU
+EAw5sWw5aU2lYfchZEVXpktae4nua5iRM4z6AGtk6Et3UegZ0kApsw==
+-----END RSA PRIVATE KEY-----
Added: webservices/wss4j/trunk/test/wss40.properties
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/test/wss40.properties?rev=763911&view=auto
==============================================================================
--- webservices/wss4j/trunk/test/wss40.properties (added)
+++ webservices/wss4j/trunk/test/wss40.properties Fri Apr 10 11:31:25 2009
@@ -0,0 +1,5 @@
+org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
+org.apache.ws.security.crypto.merlin.keystore.type=jks
+org.apache.ws.security.crypto.merlin.keystore.password=security
+org.apache.ws.security.crypto.merlin.keystore.alias=wss40
+org.apache.ws.security.crypto.merlin.file=keys/wss40.jks
Added: webservices/wss4j/trunk/test/wss40CA.properties
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/test/wss40CA.properties?rev=763911&view=auto
==============================================================================
--- webservices/wss4j/trunk/test/wss40CA.properties (added)
+++ webservices/wss4j/trunk/test/wss40CA.properties Fri Apr 10 11:31:25 2009
@@ -0,0 +1,4 @@
+org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
+org.apache.ws.security.crypto.merlin.keystore.type=jks
+org.apache.ws.security.crypto.merlin.keystore.password=security
+org.apache.ws.security.crypto.merlin.file=keys/wss40CA.jks
Modified: webservices/wss4j/trunk/test/wssec/PackageTests.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/test/wssec/PackageTests.java?rev=763911&r1=763910&r2=763911&view=diff
==============================================================================
--- webservices/wss4j/trunk/test/wssec/PackageTests.java (original)
+++ webservices/wss4j/trunk/test/wssec/PackageTests.java Fri Apr 10 11:31:25
2009
@@ -82,6 +82,7 @@
suite.addTestSuite(TestWSSecurityUTSignature.class);
suite.addTestSuite(TestWSSecurityWSS60.class);
suite.addTestSuite(TestWSSecurityWSS86.class);
+ suite.addTestSuite(TestWSSecurityWSS40.class);
suite.addTestSuite(TestWSSecurityKerberosTokenProfile.class);
suite.addTestSuite(TestWSSecurityTimestamp.class);
suite.addTestSuite(SignatureKeyValueTest.class);
Added: webservices/wss4j/trunk/test/wssec/TestWSSecurityWSS40.java
URL:
http://svn.apache.org/viewvc/webservices/wss4j/trunk/test/wssec/TestWSSecurityWSS40.java?rev=763911&view=auto
==============================================================================
--- webservices/wss4j/trunk/test/wssec/TestWSSecurityWSS40.java (added)
+++ webservices/wss4j/trunk/test/wssec/TestWSSecurityWSS40.java Fri Apr 10
11:31:25 2009
@@ -0,0 +1,226 @@
+/*
+ * Copyright 2003-2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package wssec;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+import org.apache.axis.Message;
+import org.apache.axis.MessageContext;
+import org.apache.axis.client.AxisClient;
+import org.apache.axis.configuration.NullProvider;
+import org.apache.axis.message.SOAPEnvelope;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.ws.security.WSPasswordCallback;
+import org.apache.ws.security.WSSecurityEngine;
+import org.apache.ws.security.WSConstants;
+import org.apache.ws.security.WSSecurityException;
+import org.apache.ws.security.components.crypto.Crypto;
+import org.apache.ws.security.components.crypto.CryptoFactory;
+import org.apache.ws.security.message.WSSecSignature;
+import org.apache.ws.security.message.WSSecHeader;
+import org.w3c.dom.Document;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * This is a test for WSS-40. Essentially it just tests that a message is
signed using a
+ * keyEntry from one keystore, and verified at the other end with a keystore
with just the
+ * CA cert in it.
+ *
+ * http://issues.apache.org/jira/browse/WSS-40
+ *
+ * Generate the CA keys/certs + export the CA cert to a keystore
+ *
+ * openssl req -x509 -newkey rsa:1024 -keyout wss40CAKey.pem -out wss40CA.pem
+ * -config ca.config
+ * openssl x509 -outform DER -in wss40CA.pem -out wss40CA.crt
+ * keytool -import -file wss40CA.crt -alias wss40CA -keystore wss40CA.jks
+ *
+ * Generate the client keypair, make a csr, sign it with the CA key and
re-import it
+ *
+ * keytool -genkey -validity 3650 -alias wss40 -keyalg RSA -keystore wss40.jks
+ * -dname "CN=Colm,OU=WSS4J,O=Apache,L=Dublin,ST=Leinster,C=IE"
+ * keytool -certreq -alias wss40 -keystore wss40.jks -file wss40.cer
+ * openssl ca -config ca.config -policy policy_anything -days 3650 -out
wss40.pem
+ * -infiles wss40.cer
+ * openssl x509 -outform DER -in wss40.pem -out wss40.crt
+ * keytool -import -file wss40.crt -alias wss40CA -keystore wss40.jks
+ *
+ */
+public class TestWSSecurityWSS40 extends TestCase implements CallbackHandler {
+ private static final Log LOG =
LogFactory.getLog(TestWSSecurityWSS40.class);
+ private static final String SOAPMSG =
+ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ + "<SOAP-ENV:Envelope "
+ + "xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" "
+ + "xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" "
+ + "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">"
+ + "<SOAP-ENV:Body>"
+ + "<add
xmlns=\"http://ws.apache.org/counter/counter_port_type\">"
+ + "<value xmlns=\"\">15</value>"
+ + "</add>"
+ + "</SOAP-ENV:Body>"
+ + "</SOAP-ENV:Envelope>";
+ private WSSecurityEngine secEngine = new WSSecurityEngine();
+ private Crypto crypto = CryptoFactory.getInstance("wss40.properties");
+ private MessageContext msgContext;
+ private Message message;
+
+ /**
+ * TestWSSecurity constructor
+ *
+ * @param name name of the test
+ */
+ public TestWSSecurityWSS40(String name) {
+ super(name);
+ }
+
+ /**
+ * JUnit suite
+ *
+ * @return a junit test suite
+ */
+ public static Test suite() {
+ return new TestSuite(TestWSSecurityWSS40.class);
+ }
+
+ /**
+ * Setup method
+ *
+ * @throws Exception Thrown when there is a problem in setup
+ */
+ protected void setUp() throws Exception {
+ AxisClient tmpEngine = new AxisClient(new NullProvider());
+ msgContext = new MessageContext(tmpEngine);
+ message = getSOAPMessage();
+ }
+
+ /**
+ * Constructs a soap envelope
+ *
+ * @return soap envelope
+ * @throws Exception if there is any problem constructing the soap envelope
+ */
+ protected Message getSOAPMessage() throws Exception {
+ InputStream in = new ByteArrayInputStream(SOAPMSG.getBytes());
+ Message msg = new Message(in);
+ msg.setMessageContext(msgContext);
+ return msg;
+ }
+
+
+ /**
+ * Test signing a SOAP message using a BST.
+ */
+ public void testSignatureDirectReference() throws Exception {
+ SOAPEnvelope unsignedEnvelope = message.getSOAPEnvelope();
+ WSSecSignature sign = new WSSecSignature();
+ sign.setUserInfo("wss40", "security");
+ sign.setKeyIdentifierType(WSConstants.BST_DIRECT_REFERENCE);
+
+ Document doc = unsignedEnvelope.getAsDocument();
+
+ WSSecHeader secHeader = new WSSecHeader();
+ secHeader.insertSecurityHeader(doc);
+ Document signedDoc = sign.build(doc, crypto, secHeader);
+
+ if (LOG.isDebugEnabled()) {
+ String outputString =
+
org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ LOG.debug(outputString);
+ }
+ verify(signedDoc);
+ }
+
+
+ /**
+ * Test signing a SOAP message using Issuer Serial. Note that this should
fail, as the
+ * trust-store does not contain the cert corresponding to wss40, only the
CA cert
+ * wss40CA.
+ */
+ public void testSignatureIssuerSerial() throws Exception {
+ SOAPEnvelope unsignedEnvelope = message.getSOAPEnvelope();
+ WSSecSignature sign = new WSSecSignature();
+ sign.setUserInfo("wss40", "security");
+ sign.setKeyIdentifierType(WSConstants.ISSUER_SERIAL);
+
+ Document doc = unsignedEnvelope.getAsDocument();
+
+ WSSecHeader secHeader = new WSSecHeader();
+ secHeader.insertSecurityHeader(doc);
+ Document signedDoc = sign.build(doc, crypto, secHeader);
+
+ if (LOG.isDebugEnabled()) {
+ String outputString =
+
org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ LOG.debug(outputString);
+ }
+
+ try {
+ verify(signedDoc);
+ throw new Exception("Failure expected on issuer serial");
+ } catch (WSSecurityException ex) {
+ assertTrue(ex.getErrorCode() == WSSecurityException.FAILED_CHECK);
+ // expected
+ }
+ }
+
+ /**
+ * Verifies the soap envelope
+ * <p/>
+ *
+ * @param doc
+ * @throws Exception Thrown when there is a problem in verification
+ */
+ private void verify(Document doc) throws WSSecurityException {
+ secEngine.processSecurityHeader(
+ doc, null, this, CryptoFactory.getInstance("wss40CA.properties")
+ );
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Verfied and decrypted message:");
+ String outputString =
+
org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(doc);
+ LOG.debug(outputString);
+ }
+ }
+
+ public void handle(Callback[] callbacks)
+ throws IOException, UnsupportedCallbackException {
+ for (int i = 0; i < callbacks.length; i++) {
+ if (callbacks[i] instanceof WSPasswordCallback) {
+ WSPasswordCallback pc = (WSPasswordCallback) callbacks[i];
+ /*
+ * here call a function/method to lookup the password for
+ * the given identifier (e.g. a user name or keystore alias)
+ * e.g.:
pc.setPassword(passStore.getPassword(pc.getIdentfifier))
+ * for Testing we supply a fixed name here.
+ */
+ pc.setPassword("security");
+ } else {
+ throw new UnsupportedCallbackException(callbacks[i],
"Unrecognized Callback");
+ }
+ }
+ }
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]