Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ECS-3156 Review glossary. Adjust capitalization and bolding. #1158

Merged
merged 2 commits into from
Aug 16, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
90 changes: 45 additions & 45 deletions docs/website/root/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,100 +4,100 @@ sidebar_position: 1

# Glossary

Here is a comprehensive list of definitions for some common terms used in this guide.
Below is a comprehensive list of definitions for some common terms used in the Mithril guide.

## Beacon

A **Beacon** represents a point of the Blockchain for which a [**Mithril Certificate**](#certificate) is created. It embeds at least the version of the [**Cardano Network**](#cardano-network) that is targeted, and the associated [**epoch**](#epoch) and [**immutable file number**](#immutable-file-number).
A beacon represents a point of the blockchain for which a [Mithril certificate](#certificate) is created. It embeds at least the version of the [Cardano network](#cardano-network) that is targeted, the associated [epoch](#epoch), and the [immutable file number](#immutable-file-number).

## Cardano Network
## Cardano network

The **Cardano Network** is a **Proof-of-Stake** Blockchain platform that supports the ADA cryptocurrency.
The Cardano network is a proof-of-stake blockchain platform that supports the ada cryptocurrency.

> More information is available [here](https://docs.cardano.org/introduction)
> More information is available on the [introduction page](https://docs.cardano.org/introduction).

## Cardano Node
## Cardano node

A **Cardano Node** is a node that runs in a [**Cardano Network**](#cardano-network). There are several types of nodes, among them are **Cardano Full Nodes** that hold a copy of the whole Blockchain. They can be used by **Wallets**, [**Stake Pool Operator**](#stake-pool-operator-spo), **Exchanges** or **Dapps**. One of the use cases of the [**Mithril Network**](#mithril-network) is to bootsrap rapidly a **Cardano Full Node**.
A Cardano node is a node that runs in a [Cardano network](#cardano-network). There are several types of nodes, among them Cardano full nodes that hold a copy of the whole blockchain. They can be used by wallets, [stake pool operators](#stake-pool-operator-spo), exchanges or DApps. One of the uses of the [Mithril network](#mithril-network) is to rapidly bootstrap a Cardano full node.

## Cardano Key Pair
## Cardano key pair

A **Cardano Key Pair** is an asymmetric key pair used to identify a [**Stake Pool Operator**](#stake-pool-operator-spo) on the [**Cardano Network**](#cardano-network).
A Cardano key pair is an asymmetric key pair used to identify a [stake pool operator](#stake-pool-operator-spo) on the [Cardano network](#cardano-network).

## Certificate

The **Mithril Aggregator** combines the produced [**multi signature**](#multi-signature) and some metadata into a [**Mithril Certificate**](#certificate) that will be later used by the [**Mithril Client**](#mithril-client) to verify the authenticity of a [**snapshot**](#snapshot). The certificates are chained so that the [**stake distribution**](#stake-distribution) used to create the signatures is verifiably genuine.
The Mithril aggregator combines the produced [multi-signature](#multi-signature) and some metadata into a Mithril certificate that will be later used by the [Mithril client](#mithril-client) to verify the authenticity of a [snapshot](#snapshot). The certificates are chained so that the [stake distribution](#stake-distribution) used to create the signatures is verifiably genuine.

> More information is available [here](./mithril/mithril-protocol/certificates.md)
> More information is available on the [certificates page](./mithril/mithril-protocol/certificates.md).

## Epoch

The [**Cardano Network**](#cardano-network) uses **Epochs** to group blocks computed in a certain amount of time (approximately 5 days). It is part of the design of its **Proof-of-Stake** consensus **Ouroboros**. At the end of each epoch, the [**stake distribution**](#stake-distribution) of the ending epoch is computed.
The [Cardano network](#cardano-network) uses epochs to group blocks computed in a certain amount of time (approximately five days). It is part of the design of its proof-of-stake consensus Ouroboros. At the end of each epoch, the [stake distribution](#stake-distribution) of the ending epoch is computed.

## Immutable File Number
## Immutable file number

Inside a the database of a [**Cardano Node**](#cardano-node), the Blockchain state is stored in **Immutable files** which never change once committed. These immutable files are designed so that they are deterministically produced and thus are the same on any **Cardano Node**. These files are created by following an incremental number, the **Immutable File Number** and there are three different immutable files for each number (i.e. _chunk_, _primary_ and _secondary_). Only the files up to the penultimate **Immutable File Number** are considered as committed and final, the last **Immutable File Number** files are constantly evolving. The [**Snapshots**](#snapshot) produced by the [**Mithril Network**](#mithril-network) rely on these **immutable files**.
Inside the database of a [Cardano node](#cardano-node), the blockchain state is stored in immutable files which never change once committed. These immutable files are designed so that they are deterministically produced and thus are the same on any Cardano node. These files are created by following an incremental number, the immutable file number, and there are three different immutable files for each number (ie, _chunk_, _primary_, and _secondary_). Only the files up to the penultimate immutable file number are considered as committed and final, the last immutable file number files are constantly evolving. The [snapshots](#snapshot) produced by the [Mithril network](#mithril-network) rely on these immutable files.

## Individual Signature
## Individual signature

For each [**Beacon**](#beacon), the [**Mithril Signers**](#mithril-signer) will compute on their end a message representing the Blockchain state, and sign it with their **Verification Keys** in order to create an [**Individual Signature**](#individual-signature). Upon winning one or multiple lotteries, the **Mithril Signer** will be able to use this **Individual Signature** to participate in the creation of a [**Multi Signature**](#multi-signature).
For each [beacon](#beacon), the [Mithril signers](#mithril-signer) will compute on their end a message representing the blockchain state, and sign it with their verification keys to create an [individual signature](#individual-signature). Upon winning one or more lotteries, the Mithril signer will be able to use this individual signature to participate in the creation of a [multi-signature](#multi-signature).

> More information is available [here](./mithril/mithril-protocol/protocol.md)
> More information is available on the [protocol page](./mithril/mithril-protocol/protocol.md).

## Mithril Aggregator
## Mithril aggregator

The **Mithril Aggregator** is a trustless node of the [**Mithril Network**](#mithril-network) that orchestrates the work of the [**Mithril Signer**](#mithril-signer) nodes and that gathers their [**individual signatures**](#individual-signature) to produce [**Mithril multi signatures**](#multi-signature) and their associated [**certificates**](#certificate).
The Mithril aggregator is a trustless node of the [Mithril network](#mithril-network) that orchestrates the work of the [Mithril signer](#mithril-signer) nodes and gathers their [individual signatures](#individual-signature) to produce [Mithril multi-signatures](#multi-signature) and their associated [certificates](#certificate).

It is also in charge of creating and storing the [**snapshot**](#snapshot) archive.
It is also in charge of creating and storing the [snapshot](#snapshot) archive.

> More information is available [here](./mithril/mithril-network/aggregator.md)
> More information is available on the [aggregator page](./mithril/mithril-network/aggregator.md).

## Mithril Client
## Mithril client

The **Mithril Client** node of the [**Mithril Network**](#mithril-network) is used to restore a [**Cardano full node**](#cardano-node) by retrieving, from a [**Mithril Aggregator**](#mithril-aggregator), a remote [**snapshot**](#snapshot), its [**certificate**](#certificate) chain and by verifying their validity thanks to the Mithril cryptographic primitives.
The Mithril client node within the [Mithril network](#mithril-network) is used to restore a [Cardano full node](#cardano-node) by retrieving, from a [Mithril aggregator](#mithril-aggregator), a remote [snapshot](#snapshot) and its [certificate](#certificate) chain. Finally, it is used to verify snapshot and certificate validity using the Mithril cryptographic primitives.

> More information is available [here](./mithril/mithril-network/client.md)
> More information is available on the [client page](./mithril/mithril-network/client.md).

## Mithril Network
## Mithril network

In its current version, the **Mithril Network** is a network of nodes responsible for creating [**Snapshots**](#snapshot) and [**Certificates**](#certificate) that enable fast bootstrap of a [**Cardano Node**](#cardano-node). It runs on top of the [**Cardano Network**](#cardano-network).
In its current version, the Mithril network is a network of nodes responsible for creating [snapshots](#snapshot) and [certificates](#certificate) that enable fast bootstrap of a [Cardano node](#cardano-node). It runs on top of the [Cardano network](#cardano-network).

> More information is available [here](./mithril/mithril-network/architecture.md)
> More information is available on the [architecture page](./mithril/mithril-network/architecture.md).

## Mithril Protocol
## Mithril protocol

The **Mithril Protocol** allows **stakeholders** in a **Proof-of-Stake** Blockchain network to individually **sign messages** that are aggregated into a **multi signature** which guarantees that they represent a minimum share of the total stakes.
The Mithril protocol allows stakeholders in a proof-of-stake blockchain network to individually sign messages that are aggregated into a multi-signature which guarantees that they represent a minimum share of the total stake.

> More information is available [here](./mithril/mithril-protocol/protocol.md)
> More information is on the [protocol page](./mithril/mithril-protocol/protocol.md).

## Mithril Signer
## Mithril signer

The **Mithril Signer** is a node of the [**Mithril Network**](#mithril-network) that works transparently on top of the [**Stake Pool Operator**](#stake-pool-operator-spo) Cardano nodes and which individually signs the ledger state.
The Mithril signer is a node of the [Mithril network](#mithril-network) that works transparently on top of the [stake pool operator](#stake-pool-operator-spo) Cardano nodes and which individually signs the ledger state.

> More information is available [here](./mithril/mithril-network/signer.md)
> More information is available on the [signer page](./mithril/mithril-network/signer.md).

## Multi Signature
## Multi-signature

The **Mithril Multi Signature** is an aggregate of [**Individual Signatures**](#individual-signature) which guarantees that a minimum share of the total stakes has participated in its creation.
The Mithril multi-signature is an aggregate of [individual signatures](#individual-signature), which guarantees that a minimum share of the total stake has participated in its creation.

> More information is available [here](./mithril/mithril-protocol/protocol.md)
> More information is available on the [protocol page](./mithril/mithril-protocol/protocol.md).

## Snapshot

A Mithril Snapshot is a signed archive of the Blockchain state that can be used by [**Mithril Clients**](#mithril-client) to restore a [**Cardano Full Node**](#cardano-node). It is uniquely identified by its fingerprint or **Digest** which is part of the message signed by the [**Mithril Network**](#mithril-network).
A Mithril snapshot is a signed archive of the blockchain state that can be used by [Mithril clients](#mithril-client) to restore a [Cardano full node](#cardano-node). It is uniquely identified by its fingerprint or digest which is part of the message signed by the [Mithril network](#mithril-network).

## Stake Distribution
## Stake distribution

The **Cardano Stake Distribution** is the list of all the [**Stake Pool Operators**](#stake-pool-operator-spo) **Pool Id** addresses and their associated **Stakes Share** of the total **Stakes** of the [**Cardano Network**](#cardano-network).
The Cardano stake distribution is the list of all the [stake pool operators'](#stake-pool-operator-spo) pool Id addresses and their associated share of the total stake of the [Cardano network](#cardano-network).

The **Mithril Stake Distribution** is the list of all the [**Stake Pool Operators**](#stake-pool-operator-spo) (that are running a [**Mithril Signer**](#mithril-signer)) **Pool Id** addresses, their associated **Stakes Share** of the total **Stakes** of the [**Cardano Network**](#cardano-network), and their signing [**Verification Key**](#verification-key).
The Mithril stake distribution is the list of all the [stake pool operators'](#stake-pool-operator-spo) (that are running a [Mithril signer](#mithril-signer)) pool Id addresses, their associated share of the total stake of the [Cardano network](#cardano-network), and their signing [verification key](#verification-key).

## Stake Pool Operator (SPO)
## Stake pool operator (SPO)

A **Stake Pool Operator**, also known as a **SPO**, represents a party that holds (via delegation) **Stakes** in the [**Cardano Network**](#cardano-network). The stakes entitle it to participate in the block production thanks to the Cardano consensus mechanism.
A stake pool operator, also known as an SPO, represents a party that holds (via delegation) stake in the [Cardano network](#cardano-network). The stake entitles it to participate in block production thanks to the Cardano consensus mechanism.

## Verification Key
## Verification key

In order to create [**Individual Signatures**](#individual-signature), the [**Mithril Signers**](#mithril-signer) must register their signing public key: the **Verification Keys**. To garantee their genuineness, they are signed by the associated [**Cardano Key Pair**](#cardano-key-pair). It is worth mentioning that a [**Mithril Signer**](#mithril-signer) must be aware of the **Verification Keys** of all the other **Mithril Signers** in order to produce valid **Individual Signatures**.
To create [individual signatures](#individual-signature), [Mithril signers](#mithril-signer) must register their signing public key: the verification key. To guarantee their genuineness, they are signed by the associated [Cardano key pair](#cardano-key-pair). It is worth mentioning that a [Mithril signer](#mithril-signer) must be aware of the verification keys of all the other Mithril signers to produce valid individual signatures.

> More information is available [here](./mithril/mithril-protocol/protocol.md)
> More information is available on the [protocol page](./mithril/mithril-protocol/protocol.md).
Loading