You can choose to use the NSS database on both sides if you wish and use
the JDK's SunPKCS11 bridge from your Java application to get to the keys
and certificates in the NSS keystore/certstore.

Take a look at the source code of StrongKey (www.strongkey.org) on the
client side (Symmetric Key Client Library).  It can use JKS, NSS and
smartcard-based keystores from the same Java-based application.

Arshad Noor
StrongAuth, Inc.

P.S.  If you absolutely needed to keep the keys in JKS on the client
side and NSS on the server side, then you can use the source code in
StrongKey to move the keys/certs from one keystore to the other, if you
wish.  You'll have to write a tiny little application to do the moves,
but the library can take care of the access on both sides.

Yevgeniy Gubenko wrote:
> Let me explain you my motivation:
> I have client java 1.6 application, which runs on windows platform.
> The server java 1.6 application runs on Solaris 10 and should be FIPS140-2 
> compliant.
> Thus, all crypto on server side should pass through the tunnel of PKCS#11 
> provider crypto API to NSS 3.11.4, which is FIPS 140-2 compliant.
> The client server communication is performed by RMI over SSL.
> Therefore, we should keep private/public key pair both on client side and on 
> server side.
> The client keeps both keystores (private and public) on JKS format files 
> (they can be created with certificate, if needed for future NSS issues) , and 
> the server should keep it in NSS db in FIPS mode (otherwise it won't be FIPS 
> 140-2 compliant).
> Still, both application need to share their public keys so that Java 
> applications on both sides will manage to instantiate SSL context for socket 
> traffic over SSL.
> How would you suggest me to design my RMI traffic, so that I'll be able to 
> preserve my FIPS 140-2 compliancy mode?
> Thanks
> Yevgeniy
> 
_______________________________________________
dev-tech-crypto mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-crypto

Reply via email to