{"id":19233035,"url":"https://github.com/reflexdemon/java-ssl-test","last_synced_at":"2025-08-16T11:09:24.306Z","repository":{"id":57279507,"uuid":"128050578","full_name":"reflexdemon/java-ssl-test","owner":"reflexdemon","description":"Simple Java based CLI Tool to test SSL connection and list the ciphers","archived":false,"fork":false,"pushed_at":"2022-04-14T11:07:39.000Z","size":1142,"stargazers_count":6,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-26T11:47:30.730Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://blog.vpv.io/2018/04/java-ssltls-testing-tool-cipher-suite.html","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/reflexdemon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-04-04T11:07:08.000Z","updated_at":"2025-05-04T08:52:28.000Z","dependencies_parsed_at":"2022-09-13T19:30:47.525Z","dependency_job_id":null,"html_url":"https://github.com/reflexdemon/java-ssl-test","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/reflexdemon/java-ssl-test","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reflexdemon%2Fjava-ssl-test","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reflexdemon%2Fjava-ssl-test/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reflexdemon%2Fjava-ssl-test/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reflexdemon%2Fjava-ssl-test/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/reflexdemon","download_url":"https://codeload.github.com/reflexdemon/java-ssl-test/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reflexdemon%2Fjava-ssl-test/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270702562,"owners_count":24630877,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-16T02:00:11.002Z","response_time":91,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T16:08:32.584Z","updated_at":"2025-08-16T11:09:24.276Z","avatar_url":"https://github.com/reflexdemon.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Java SSL Test\nThis is a CLI utility that is used to test the connectivity between your JDK/JRE to an SSL endpoint. This outputs SSL information like the Ciphers, Protocol, prints Certificate details and it is fully customizable using CLI.\nThis is based upon [ssltest](https://github.com/ChristopherSchultz/ssltest). Unlike, [ssltest](https://github.com/ChristopherSchultz/ssltest), this is multi threaded and is supposed to be `10x` times faster to produce results. \n\n\n[![GitHub version](https://badge.fury.io/gh/reflexdemon%2Fjava-ssl-test.png)](http://badge.fury.io/gh/reflexdemon%2Fjava-ssl-test)\n[![npm version](https://badge.fury.io/js/java-ssltest-cli.png)](http://badge.fury.io/js/java-ssltest-cli)\n[![Build status](https://ci.appveyor.com/api/projects/status/kper4nraqsbrhui6/branch/master?svg=true)](https://ci.appveyor.com/project/reflexdemon/java-ssl-test/branch/master)\n\n## Usage\n\n```\nUsage: javassltest [opts] host[:port]\n\nOptions:\n-sslprotocol                 Sets the SSL/TLS protocol to be used (e.g. SSL, TLS, SSLv3, TLSv1.2, etc.)\n-enabledprotocols protocols  Sets individual SSL/TLS ptotocols that should be enabled\n-ciphers cipherspec          A comma-separated list of SSL/TLS ciphers\n\n-keystore                    Sets the key store for connections (for TLS client certificates)\n-keystoretype type           Sets the type for the key store\n-keystorepassword pass       Sets the password for the key store\n-keystoreprovider provider   Sets the crypto provider for the key store\n\n-truststore                  Sets the trust store for connections\n-truststoretype type         Sets the type for the trust store\n-truststorepassword pass     Sets the password for the trust store\n-truststorealgorithm alg     Sets the algorithm for the trust store\n-truststoreprovider provider Sets the crypto provider for the trust store\n-crlfilename                 Sets the CRL filename to use for the trust store\n\n-check-certificate           Checks certificate trust (default: false)\n-no-check-certificate        Ignores certificate errors (default: true)\n-verify-hostname             Verifies certificate hostname (default: false)\n-no-verify-hostname          Ignores hostname mismatches (default: true)\n\n-showsslerrors               Show SSL/TLS error details\n-showhandshakeerrors         Show SSL/TLS handshake error details\n-showerrors                  Show all connection error details\n-hiderejects                 Only show protocols/ciphers which were successful\n-showcerts                   Shows some basic Certificate details\n\n-h -help --help              Shows this help message\n-v -version --version        Shows the version information and exists\n\n```\n\n\n## Installation\n\nTo make the distribution seamless, we have used Node Package Manager (NPM) based approach. That will require you to install the application using NPM.\n\n\n### Prerequisites\n\n\n1. NodeJS\n2. Probably a pre-installed JDK/JRE on your computer.\n\nRuns on any platform that supports requirements including Mac, Windows, and Linux.\n\n\n### Install the application\n\nTo install the CLI tool just run  the following command.\n\n```\nnpm i -g java-ssltest-cli\n```\n\n\n#### Troubleshooting on Permissions\nIf you are running into permission issues on installing global application please refer to this link. https://docs.npmjs.com/getting-started/fixing-npm-permissions\n\n\n\n## Issues\n\n### Common Issues #1\n\nOne of the known issue is some of the node versions that do not work and throws errors. In that case please consider the following,\n\nDowngrade the Node Version to the previous stable LTS (Long Term Support) version of nodejs.\n\nSteps to be followed,\n1. Install NVM: https://github.com/creationix/nvm/blob/master/README.md#installation\n2. Install the stable version of nodjs using: `nvm install v8.11.1`\n3. Install your cli tool: `npm i -g \u003cyour-app-name\u003e`\n\n### Common Issues #2\n\nThe other issue could be your JDK or JRE are conflicting on the path and that is causing the mixed runtime and Java SSL API is not able to use the correct runtime values.\n\nSteps to be followed,\n1. Set the `JAVA_HOME` correctly\n\nOn linux/unix based systems,\n\n```\nexport JAVA_HOME=\u003c/path/to/your/java/home\u003e\nexport PATH=$JAVA_HOME/bin:$PATH\n```\n\nOn Windows,\n```\nset JAVA_HOME=\u003c/path/to/your/java/home\u003e\nset PATH=%JAVA_HOME%\\bin;%PATH%\n```\n\n2. Now run your command\n\nIf the above options did not help and you wish to report issues please visit https://github.com/reflexdemon/java-ssl-test/issues and log your issues with the following details,\n\n1. `java -version` output\n2. `javac -version` output\n3. `npm -v` output\n4. `node -v` output\n\n## Thanks\nTo make this happen I will have to thank the below people and their creations.\n1. [Christopher Schultz](https://github.com/ChristopherSchultz) for [ssltest](https://github.com/ChristopherSchultz/ssltest)\n2. [Steve Hannah](https://github.com/shannah) for [jdeploy](https://github.com/shannah/jdeploy).\n\n## Licence\n\nMIT","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freflexdemon%2Fjava-ssl-test","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Freflexdemon%2Fjava-ssl-test","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freflexdemon%2Fjava-ssl-test/lists"}