<commit_before>tlsenum
=======

[![Build Status](https://travis-ci.org/Ayrx/tlsenum.svg?branch=add-travis)](htt
ps://travis-ci.org/Ayrx/tlsenum)

tlsenum is a command-line TLS enumeration tool that attempts to enumerate what
TLS cipher suites a server supports and list them in order of priority.

It works by sending out sending out TLS `ClientHello` messages and parsing the
`ServerHello` responses from the server.

tlsenum assumes that the server decides the preferred cipher suite, ignoring
the preference indicated by the client. While this is not strictly guaranteed
by the TLS specification, it seems like a fairly common implementation detail.

Requirements
------------

The basic functionality of tlsenum simply require Python 3. It has been written
and tested with Python 3.3.

Some optional features may require additional modules to be installed. The
specific modules required will be listed when using the features if they are
not already installed.

A complete list of dependencies can be found in `requirements.txt`. Simply
install the dependencies using `pip` to access all the features of tlsenum.

```
pip install -r requirements.txt
```
<commit_msg>Add coverage status to README.md<commit_after>tlsenum
=======

[![Build Status](https://travis-ci.org/Ayrx/tlsenum.svg?branch=add-travis)](htt
ps://travis-ci.org/Ayrx/tlsenum)
[![Coverage Status](https://coveralls.io/repos/Ayrx/tlsenum/badge.png?branch=ma
ster)](https://coveralls.io/r/Ayrx/tlsenum?branch=master)

tlsenum is a command-line TLS enumeration tool that attempts to enumerate what
TLS cipher suites a server supports and list them in order of priority.

It works by sending out sending out TLS `ClientHello` messages and parsing the
`ServerHello` responses from the server.

tlsenum assumes that the server decides the preferred cipher suite, ignoring
the preference indicated by the client. While this is not strictly guaranteed
by the TLS specification, it seems like a fairly common implementation detail.

Requirements
------------

The basic functionality of tlsenum simply require Python 3. It has been written
and tested with Python 3.3.

Some optional features may require additional modules to be installed. The
specific modules required will be listed when using the features if they are
not already installed.

A complete list of dependencies can be found in `requirements.txt`. Simply
install the dependencies using `pip` to access all the features of tlsenum.

```
pip install -r requirements.txt
```

{'fraction_non_alphanumeric': 0.07609130957148579, 'fraction_numerical': 0.0024028834601521826, 'mean_word_length': 4.6643990929705215, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1133106', 'n_tokens_mistral': 665, 'n_tokens_neox': 631, 'n_words': 317}