Java “pas de suites de chiffrement en commun” problème lorsque vous essayez de connecter de manière sécurisée à un serveur
J'ai un problème quand un client (pas le mien) se connecte à mon serveur de manière sécurisée.
Il semble que la connexion est refusée sur la base de la non-concordance des algorithmes de chiffrements, mais j'ai vérifié que le serveur, en effet, les actions de certains des algorithmes avec le client.
Pourrait-il être un problème avec l'inconnu de chiffrement (Inconnu 0x0:0x60)? Si oui, que dois-je faire pour le réparer?
Java SSL journaux sont affichés ci-dessous:
Listener-https, setSoTimeout(30000) called
Worker-30, READ: SSLv3 Handshake, length = 63
*** ClientHello, SSLv3
RandomCookie: GMT: 1267050437 bytes = { 23, 244, 228, 68, 161, 225, 218, 222, 207, 128, 228, 138, 127, 141, 159, 63, 232, 48, 242, 240, 26, 76, 58, 158, 179, 0, 192, 140 }
Session ID: {}
Cipher Suites: [TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_IDEA_CBC_SHA, SSL_RSA_WITH_RC4_128_SHA, SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_EXPORT1024_WITH_RC4_56_SHA, Unknown 0x0:0x60, SSL_RSA_EXPORT_WITH_RC4_40_MD5]
Compression Methods: { 0 }
***
Worker-30, SEND SSLv3 ALERT: fatal, description = handshake_failure
Worker-30, WRITE: SSLv3 Alert, length = 2
Worker-30, called closeSocket()
Worker-30, handling exception: javax.net.ssl.SSLHandshakeException: no cipher suites in common
Worker-30, called close()
Worker-30, called closeInternal(true)
Worker-30, called close()
Worker-30, called closeInternal(true)
Grâce,
-Ben
Vous devez vous connecter pour publier un commentaire.
L'ajout d'erickson réponse, si votre certificat n'utilisez pas une clé RSA-paire, et au lieu de cela s'avère d'utiliser une clé DSA-paire, aucun montant de l'algorithme de chiffrement RSA suite de "farce" aide à la résolution de ce problème. Vous aurez besoin pour activer le DSA liées suites de chiffrement (ils sont généralement indiquées par la DSS mot-clé en eux), et ont également le client à utiliser les mêmes suites de chiffrement.
La raison de ce cas limite est peut-être votre problème est dû au comportement par défaut de l'utilitaire keytool lors de la génération de paires de clés secrètes - DSA et RSA est pas l'algorithme par défaut.
Vous dire que certains le client est prié de chiffrements sont activés sur votre serveur. Avez-vous connecté avec succès avec l'un d'entre eux? Essayez, par exemple, l'installation de OpenSSL
s_client
utilitaire avec le-cipher
option indiquant seulement que la suite de chiffrement.Peut-être le fournisseur ne prend pas en charge tous les algorithmes de chiffrement que vous pensez que vous avez activé, ou peut-être la force illimitée de la compétence des fichiers ne sont pas correctement installés sur votre serveur.