THIS PROJECT IS NOT BEING ACTIVELY MAINTAINED. I DON'T RECOMMEND THE IT BE USED FOR ANYTHING IMPORTANT; HOWEVER, IT REMAINS AVAIABLE FOR ARCHIVAL PURPOSES. THIS PROJECT WAS A FUN EXPERIMENT AND IT WAS EXCITING TO SHARE IT WITH EVERYONE. AT THIS TIME, I'M PLACING MY TIME AND ENERGY INTO OTHER AREAS. JUN 27, 2019 --MILTON
OWASP DeepViolet TLS/SSL API
DeepViolet is a TLS/SSL scanning API written in Java. To keep DeepViolet easy to use, identify bugs, reference implementations have been developed that consume the API. If you want to see what DeepViolet can do, use it from the command line in your scripts or use the graphical tool from the comfort of your desktop. Both tools can be used to scan HTTPS web servers to check server certificate trust chains, revocation status, check certificates for pending expiration, weak signing algorithms and much more. Original blog article post describing this project, http://www.securitycurmudgeon.com/2014/07/ssltls-introspection.html
Use X.509 certificate metadata in creative ways. Extend security tooling to include TLS analysis. See the project wiki
How do I include DeepViolet API in my projects?
DeepViolet is deployed in Maven Central repository. Include the following DeepViolet release dependency in your pom.xml,
<dependency> <groupId>com.github.spoofzu</groupId> <artifactId>DeepViolet</artifactId> <version>5.1.16</version> </dependency>
Alternatively, include the latest development build which will someday become the next release build.
<dependency> <groupId>com.github.spoofzu</groupId> <artifactId>DeepViolet</artifactId> <version>5.1.17-SNAPSHOT</version> </dependency>
See the project wiki
This project leverages the works of other open source community projects and is provided for educational purposes. Use at your own risk. See LICENSE for further information.
This tool implements ideas, code, and takes inspiration from other projects and leaders like: Qualys SSL Labs and Ivan Ristić, OpenSSL, and Oracle's Java Security Team. Many thanks negotiating TLS/SSL handshakes and ciphersuite handling adapted from code examples by Thomas Pornin.