The following code lists the supported cipher suites by Java SE 8:
import java.io.IOException;
import java.net.UnknownHostException;
import java.util.Arrays;
How can I edit the list of cipher suite in Java using Bouncy Castle
See Which Cipher Suites to enable for SSL Socket? and use SSLSocketFactoryEx. Its a drop-in replacement for Java's SSLSocketFactory
If you don't want to use SSLSocketFactoryEx
, then rip the code to find the intersection of cipher suites.
It controls both protocols and cipher suites. There are no unexpected surprises, like getting a SSLv3 socket back from SSLSocketFactory.getInstance("TLS");
.
Nothing is configurable, so the user cannot shoot themselves in the foot. It's also ready for TLS 1.3