Skip to content
Web of trust grapher
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples
wotmate
.gitignore
COPYING
README.rst
export-keyring.py
graph-paths.py
graph-pgp-pathfinder.py
graph-to-full.py
make-sqlitedb.py
requirements.txt

README.rst

WOTMATE

This is an attempt to reimplement the PGP pathfinder without needing anything other than your own keyring. It still requires that you first make a sqlite database (reimplementation of wotsap) before running the actual graphers, but on the upside it doesn't require that a key is in the "strong set" before you are able to graph paths to it.

This is very much a work in progress. Currently, the following tools are available:

graph-paths.py

Draws the shortest path between each key you have personally signed and the target key. For simpler setups, it exactly mirrors the web of trust, but the resulting graph is not necessarily one-to-one (because you can assign ownertrust to a key you did not directly sign).

Example usage:

./graph-paths.py --fromkey torvalds jeyu

Example graph produced

graph-to-full.py

Very similar, but finds shortest paths to each fully-trusted key in your keyring. Handy for open-source projects where someone maintains a "web of trust."

Example usage:

./graph-to-full.py jeyu

Example graph produced

graph-pgp-pathfinder.py

If you don't want to use a local source of PGP key info, you can query the PGP Pathfinder service, hosted at https://pgp.cs.uu.nl/. Note, that both top and bottom keys must be in the "strong set" as defined by Wotsap.

Example usage:

./graph-pgp-pathfinder.py 79BE3E4300411886 89A4A8DEECE1C170

Example graph produced

You can’t perform that action at this time.