# Glossary

This glossary explains how the following terms are to be understood in the context of this WoT algorithm implementation.

- `WOT Network`: A Web-of-Trust network is a directed graph where the edges are weighted trust delegations and the nodes are **Certificates**.
- `Certificate`: **Certificate** refers to the fingerprint/identifier of an [OpenPGP Certificate].
  In OpenPGP the word "Certificate" is ambiguously used for both the fingerprint **and** the full certificate. We explicitly use it as fingerprints/identifiers. \
  **Certificates** are effectively the nodes in our trust network.
- `Identity`: A [User Id] that can be a name, an email address or any other identifying string.
  An identity becomes more meaningful when **Bindings** are involved.
- `Binding`: A **Binding** refers to an [Identity Claim]. It's the [Identity Component] of the **Certificate** it's bound to.
- `Certification`: An OpenPGP [Third-party Identity Certification].
  For example, certificate `B` holder certifies that certificate `A`'s [Identity Component] really belongs to that certificate.
  It's a mechanism to verify identities in the web of trust.
- `Delegation`: In contrast to **Certification**s, a [Delegation] has a different semantic meaning.
  In a Web of Trust, certificate holders may "trust" other certificate holders to "forward" trust decisions. This delegation of trust can be capped to a [Trust Amount] and a [Trust Depth]. \
  **Delegations** are effectively the forward edges in our trust network.
- `Trust Amount` Delegations may be capped to a specific value, which can be used to express intermediate "trust" relationships. Everything above 120 is considered "full" trust as of the PGP specification, everything below "partial" trust.
   For example, Alice knows Bob from work but doesn't fully trust him, so she might delegate trust towards Bob with level `80`. \
- `Trust Depth` Trust decisions can be delegated in a recursive manner. \
    Consider the trust graph of `Alice -> Bob -> Jenny -> Anton -> Mark`.
    If a delegation from `Alice -> Bob` has a trust depth of 2, Alice forwards trust decisions via `Bob` towards `Jenny` and even `Anton` (as long as both `Bob` also delegates their towards `Jenny` trust accordingly).
- `Reverse Edge` A reverse edge is a mechanic introduced by the [Ford-Fulkerson] algorithm. These edges are artifacts that are introduced between steps in the algorithm. Their purpose is to allow backtracking in a residual network.
- `reroute` The term used to express the simulation of redirecting trust along a different path when using a reverse edge.


[Binding]: https://openpgp.dev/book/signing_components.html#binding-identities-to-a-certificate
[Certification]: https://openpgp.dev/book/glossary.html#term-Certification
[Delegation]: https://openpgp.dev/book/glossary.html#term-Delegation
[Identity Claim]: https://openpgp.dev/book/glossary.html#term-Identity-Claim
[Identity Component]: https://openpgp.dev/book/glossary.html#term-Identity-Component
[Identity]: https://openpgp.dev/book/glossary.html#term-Identity-Component
[OpenPGP Certificate]: https://openpgp.dev/book/glossary.html#term-OpenPGP-Certificate
[Third-party Identity Certification]: https://openpgp.dev/book/glossary.html#term-Third-party-Identity-Certification
[User Id]: https://openpgp.dev/book/glossary.html#term-User-ID
[Trust Amount]: https://openpgp.dev/book/glossary.html#term-Trust-Amount
[Trust Depth]: https://openpgp.dev/book/glossary.html#term-Trust-Depth
[Ford-Fulkerson]: https://en.wikipedia.org/wiki/Ford%E2%80%93Fulkerson_algorithm
