Sure,
Here is a small piece of code:
public static void main(final String[] args) {
final Provider[] providers = Security.getProviders();
for (int i = 0; i < providers.length; i++) {
final String name = providers[i].getName();
final double version = providers[i].getVersion();
System.out.println("Provider[" + i + "]:: " + name + " " + version);
if (args.length > 0) {
final Iterator it = providers[i].keySet().iterator();
while (it.hasNext()) {
final String element = (String) it.next();
if (element.toLowerCase().startsWith(args[0].toLowerCase())
|| args[0].equals("-all"))
System.out.println("\t" + element);
}
}
}
}
When you run it you will get all installed providers:
These are mine just as example:
Provider[0]:: SUN 1.6
Provider[1]:: Apple 1.0
Provider[2]:: SunRsaSign 1.5
Provider[3]:: SunJSSE 1.6
Provider[4]:: SunJCE 1.6
Provider[5]:: SunJGSS 1.0
Provider[6]:: SunSASL 1.5
Provider[7]:: XMLDSig 1.0
Provider[8]:: SunPCSC 1.6
If you need more, you can activate the inner loop of the code by giving the "-all" argument.
To check your Max key length you can use this:
System.out.println(Cipher.getMaxAllowedKeyLength("AES"));
Without the unlimited strength policy files this results in 128, after they have been installed properly the result is 2147483647.