Hi
I have debugged a bit further and the problem occurs not in WSS4J but in
XML Security. And the code does not specifiy the bouncy castle provider:
instance._contextCipher = Cipher.getInstance(jceAlgorithm);
The chiper that returns are a com.ibm.crypto.provider.DESedeChiper and
not from BC. So I am going to change this line and specifiy the
BouncyCastle provider when calling getInstance and hopefully this helps
Websphere to return the right provider.
Regards,
Markus
Markus Backman wrote:
Hi
I have tried to change the location of the bouncycastle jar, in the
ext lib, the war files lib dir and the ear. Nothing seams to work. The
wss4j code used the following to get the padding mechanism (as far as
I can tell. I am going to takes this on their dev mailinglist also).
Cipher.getInstance("RSA/NONE/OAEPPADDING", "BC");
So it mentions the BC as provider so it must be something that is
wrong with the Websphere 5.1.2 enviroment. A possible solution is to
make changes to the wss4j code to ignore BC and use algorithm
supported by IBM JCE. But I havn't investigated the amount of work
this would require.
I also been in contact with Benjamin Francioni that posted the first
question about websphere and bouncycastle on this mailinglist (link in
my previous mail). And he didn't find any solution to the problem so
he used jakarta tomcat instead. Below is a cut from he's answer:
Unfortunately, I didn't solve this problem:
IBM JRE doesn't support this algo.
IBM JRE doesn't support BouncyCastle that implements this algo.
IBM support wasn't able to help me .
So I decided myself to use Tomcat with a Sun JVM.
So it seams that this is a very annoying limit in the IBM websphere
product. Hopefully I will get some form of response for this problem
by IBM and put some pressure on them to make it work in future
versions so that Bouncycastle can be used also under a IBM jre.
Regards,
Markus
David Hook wrote:
The only thing I can suggest is it's a class loader issue, although I've
no idea how it would be caused. Does your use of the padding mechanism
explicitly mention BC? That might help, other than that I'd try moving
the provider jar around if possible.
Regards,
David
On Wed, 2006-05-03 at 17:25 +0200, Markus Backman wrote:
Hi
The problem I have encountered was during a development of a WSS4J
(Web Service Security four Java) based Web Service. WSS4J has
requirement that BouncyCastle is availible as a provider. The following
description states the enviroment and the development process not only
for the use of bouncycastle but also the WSS4J.
I have successfully managed to secure an Axis based Web Service with
WSS4J. During the development I used SUNs JDK1.4.2_11 and Jakarta
Tomcat 5.0.30. I ran the test client and the deployed Web Service on
the same machine both running under jre1.4.2_11. This due to make
sure that it ran on the only requirement we have on the client
platform, jre1.4.2 or later. This testcases worked fine. But as the
company I work for has Websphere 5.1 as J2EE servers I started to
move the Web Service to WSAD and a Websphere 5.1 server. When doing
so I ran into a problem. I know WSS4J has a requriment on
BouncyCastle so I started with updating the java.security file under
the IBM 1.4 jre Websphere 5.1 is running on. I added the
BouncyCastle provider as number 4, as number one needs to be suns
default and 2 and 3 needs to be to IBM providers as the server would
start otherwise, and started the server. I ran the testclient(under
SUNs jre 1.4.2_11) again but recieved the following exception on
the server.
"Original Exception was javax.crypto.NoSuchPaddingException:
Padding: ISO10126Padding not implemented"
A quick check on BouncyCastles website stated that ISO10126Padding
is implemented. So the BouncyCastle provider can't be correctly
installed on the Websphere 5.1 server. A google later showed that a
small number of people encountered this before, but with no
description on what the solution are, for example:
http://article.gmane.org/gmane.comp.encryption.bouncy-castle.devel/2378/match=com+ibm+security+bootstrap+jdkmessagedigest+sha1
Has anyone successfully deployed BouncyCastle in a Websphere 5.1.2
enviroment? If so how did you set up your java.security file?
I am using WSS4J 1.1.0 that ships with bcprov-jdk13-128.jar. I have
placed
it in the ext lib under the IBM jre(1.4) that runs the 5.1.2 server.
I am desperate for some assistance.
Thanks
Markus
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]