An open API service indexing awesome lists of open source software.

https://github.com/crocs-muni/cevast

CEVAST: SSL Certificate Validation and Statistics tool
https://github.com/crocs-muni/cevast

certificate ssl validation-engine x509certificates

Last synced: 13 days ago
JSON representation

CEVAST: SSL Certificate Validation and Statistics tool

Awesome Lists containing this project

README

          

Cevast: Certificate Validation Statistics Tool
==============================================

![Python application](https://github.com/crocs-muni/cevast/workflows/Python%20application/badge.svg?branch=master)

Cevast is an open source tool for collection, management and validation of SSL/TLS certificates.

Installation
------------

#### Requirements

* python3.6+
* everything listed in _requirements.txt_

You can install Cevast as follows:

git clone https://github.com/crocs-muni/cevast
cd cevast
pip3 install --quiet -r requirements.txt
make install

or without `make` tool on the system, equivalently using python:

python3 setup.py install

Running above commands installs Cevast to your system as a runnable python package. You can then import
and use `cevast` modules in your own applications or run `cevast` command in your terminal to invoke
command line interface. Run either `cevast --help` or see the [cli documentation](https://crocs-muni.github.io/cevast/cli.html)
for more information about using Cevast.

Depending on your OS, you might require root permissions to install Cevast to a system directory as by default.
Without having the permissions, you can install Cevast in your home directory instead:

make user_install

or

python3 setup.py install --user

and correspondingly the requirements:

pip3 install --quiet -r requirements.txt --user

You can verify that Cevast is running correctly in your environment by executing unit tests as follows:

make test

Developing
----------

As only a single developer is working on the project at the moment, only master (eh, sorry... main) branch is used.

#### Continuous Integration
CI is set up with use of [GitHub Actions workflow](https://github.com/crocs-muni/cevast/actions?query=workflow%3A%22Python+application%22).
CI workflow runs unit tests and lint the code.

#### Testing
Tests are located in `tests/` and can be executed by running `unittest` via `make` target:

make test

#### Code style
Code should follow coding conventions of standard __PEP 8__. Two linters are set up in CI build - [Pylint](https://www.pylint.org/) and [Flake8](https://github.com/PyCQA/flake8). There is a usefull `make` target for local linting (has the same set of settings as CI):

make check

#### Documentation
Documentation is generated by [pdoc](https://pdoc3.github.io/pdoc/) to `docs/` directory. There is a usefull `make` target for that too:

make docs

To not forget, you might be interested to set up git _pre-commit hook_ with following commands:

make docs
git add docs

Licensing
---------

This project is licensed under MIT License.

Documentation
------------

For more information about the tool and how to use it, please visit the project [documentation pages](https://crocs-muni.github.io/cevast/).

Authors
------------

The tool is developed at the [Centre for Research on Cryptography and Security (CRoCS)](https://crocs.fi.muni.cz), at the [Masaryk University](http://www.muni.cz/) in Brno, Czech Republic.
* **Radim Podola** 2020 (developer)
* **Róbert Šuška** 2021 (developer)
* **Martin Ukrop** 2020-2021 (project lead)