A Terminal User Interface (TUI) for inspecting Certificate Revocation Lists (CRL's)
With CertGuard it is currently possible to:
- download & save new CRL files to the local storage
- import locally downloaded CRL files to the local storage
- browse stored CRL's
- list entries in a CRL file
- inspect entries in a CRL file
- copy/paste certificate and certificate chains in PEM format
- import certificate and certificate chains in PEM format
- view certificates and certificate chains
- perform OCSP requests from a certificate chain
CertGuard uses two file locations:
~/.cache/certguard
location of the database/storage file~/.cache/certguard/import
import directory for importing CRLs from file~/.local/share/certguard
for thedebug.log
file
CertGuard has predefined themes that can be switched using the --theme
argument. Currently supported themes are:
- Dracula (Default)
- Gruvbox
Dracula certificate view
Gruvbox certificate view
CertGuard TUI is built with BubbleTea using the Elm architecture. Different screens are built using different states. Below is a statemachine depicting the state model of CertGuard:
All information on CRL's and revoked certificates are stored on a local SQLite database. The Database schema used for Certguard only stores public information:
A MAKE file has been included for convenience:
make run
builds and run thecertguard
application indebug
modemake test
runs all unit testsmake lint
runs the lintermake build
builds the binary filecg
make sqlc
generates the Go source files from SQL files using sqlcmake gif
generates the gif based on the cassette.tape using vhs
Since a TUI application cannot log to stdout
a debug.log
file is used for debug logging. It is located at: ~/.local/share/certguard/debug.log