由于支付项目出现这种报错
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: Certificates does not conform to algorithm constraints
最终查找原因是java7/8添加了安全机制 导致md5验签问题
解决方法:
把JAVA_HOME/jre/lib/security/java.security文件里的jdk.certpath.disabledAlgorithms=MD2,
DSA, RSA keySize < 2048,改成jdk.certpath.disabledAlgorithms=,去掉 “MD2,
DSA, RSA keySize < 2048” 或者 把$JAVA_HOME/jre/lib/security/java.security
文件里
jdk.certpath.disabledAlgorithms=MD2, MD5, RSA keySize < 1024
jdk.tls.disabledAlgorithms=SSLv3, RC4, MD5withRSA, DH keySize < 768
改成
jdk.certpath.disabledAlgorithms=MD2, RSA keySize < 1024
jdk.tls.disabledAlgorithms=SSLv3, RC4, DH keySize < 768