Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7600489
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 30, 20262026-05-30T22:55:21+00:00 2026-05-30T22:55:21+00:00

Followed the instructions here and recreated certificates that I previously incorrectly created. Something has

  • 0

Followed the instructions here and recreated certificates that I previously incorrectly created. Something has changed as I am now seeing javax.net.ssl.SSLHandshakeException: no cipher suites in common on the server and javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure on the client. Instead of the errors this question

The server is ClassFileServer.java and the respective client SSLSocketClientWithClientAuth.java

Any tips on getting the two ends to play nicely, note that I am using localhost so I would assume the cipher capabilities are the same.


Update:

Here are the steps I have used to generate the files, I may be confusing the key and truststore.:

On the server (following by this guide):

$ keytool -genkey -alias serverkey -keyalg RSA -keypass p@ssw0rd
-storepass p@ssw0rd -keystore keystore.jks

$ keytool -export -alias serverkey -storepass p@ssw0rd -file
server.cer -keystore keystore.jks

$ keytool -import -v -trustcacerts -alias clientkey -file
../client/client.cer -keystore cacerts.jks -keypass p@ssw0rd
-storepass p@ssw0rd

On the client-side (by this guide):

$ keytool -genkey -alias clientkey -keyalg RSA -keypass changeit
-storepass changeit -keystore keystore.jks

$ keytool -export -alias clientkey -storepass changeit -file
client.cer -keystore keystore.jks

$ keytool -import -v -trustcacerts -alias serverkey -file
../server/server.cer -keystore cacerts.jks -keypass changeit
-storepass changeit

Had to use another medium as the debugging exceeded the body limit of this site:

Client debug error: http://pastebin.com/mHCmEqAk

Server debug error: http://pastebin.com/YZbh7H8f

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-30T22:55:22+00:00Added an answer on May 30, 2026 at 10:55 pm
    javax.net.ssl.SSLHandshakeException: no cipher suites in common
    

    This has two causes:

    1. The server doesn’t have a private key and certificate, and possibly doesn’t have a keystore at all. In such a case it can only use the insecure anonymous cipher suites, which are disabled by default, and should stay that way. So there is no cipher suite that it can agree to use with the client.

    2. Excessive restrictions on cipher suites imposed by client or server or both such that there can be no agreement.

    Re your keystores and truststores, that all looks OK except that you are doing four import steps where you only need two. You don’t need to import the server’s certificate into the server’s own truststore, or the client’s certificate into the client’s truststore. You only need this:

    Server:

    $ keytool -import -v -trustcacerts -alias clientkey -file ../client/client.cer -keystore cacerts.jks -keypass p@ssw0rd -storepass p@ssw0rd
    

    Client:

    $ keytool -import -v -trustcacerts -alias serverkey -file ../server/server.cer -keystore cacerts.jks -keypass changeit -storepass changeit
    

    and you only need it because you’re using a self-signed certificate. Simple solution: don’t. Use a CA-signed certificate, which is trusted by the default truststore shipped with Java.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I followed the instructions here http://support.microsoft.com/kb/825532 After that when I preview my page, I
I followed these instructions here: http://logback.qos.ch/consolePlugin.html I have the correct and found logback.xml, it
I have followed all the instructions here: http://www.tonyspencer.com/2003/10/22/curl-with-php-and-apache-on-windows/ to install & config apache get
Is this possible? I've followed the instructions from here ( http://www.jetbrains.net/confluence/display/TCD4/Setting+up+an+External+Database#SettingupanExternalDatabase-MicrosoftSQLServer2005 ) but I
I've followed the instructions from http://www.lucidimagination.com/blog/2009/03/09/nutch-solr/ Had solr up and running before that, could
I followed the instructions here on how to create an Android library project, and
I'm using compiled OpenSSL for an iPhone app. I followed the instructions here http://www.x2on.de/kontakt/
I followed the instructions here to delete a binary file from my repo using
I've followed the instructions here http://msdn.microsoft.com/en-us/library/ms464040.aspx to the letter, when I run disco.exe I
I have followed the instructions here [MDC - Adding Extensions using the Windows Registry],

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.