# Glossary

| Term                                     | Definition                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Notes |
| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- |
| Distributed Ledger                       | A distributed ledger (also called a shared ledger or distributed ledger technology or DLT) is the consensus of replicated, shared, and synchronized digital data that is geographically spread (distributed) across many sites, countries, or institutions.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |       |
| Hash                                     | A cryptographic hash function (CHF) is a [hash algorithm](https://en.wikipedia.org/wiki/Hash_algorithm) (a [map](https://en.wikipedia.org/wiki/Map_\(mathematics\)) of an arbitrary binary string to a binary string with a fixed size of �![{\displaystyle n}](https://wikimedia.org/api/rest_v1/media/math/render/svg/a601995d55609f2d9f5e233e36fbe9ea26011b3b) bits) that has special properties desirable for a [cryptographic](https://en.wikipedia.org/wiki/Cryptography) application:                                                                                                                                                                                                                                                                                                                                                                                                                                |       |
| Merkle Tree                              | In [cryptography](https://en.wikipedia.org/wiki/Cryptography) and [computer science](https://en.wikipedia.org/wiki/Computer_science), a hash tree or Merkle tree is a [tree](https://en.wikipedia.org/wiki/Tree_\(data_structure\)) in which every "leaf" [node](https://en.wikipedia.org/wiki/Tree_\(data_structure\)#Terminology) is labelled with the [cryptographic hash](https://en.wikipedia.org/wiki/Cryptographic_hash_function) of a data block, and every node that is not a leaf (called a *branch*, *inner node*, or *inode*) is labelled with the cryptographic hash of the labels of its child nodes. A hash tree allows efficient and secure verification of the contents of a large [data structure](https://en.wikipedia.org/wiki/Data_structure). A hash tree is a generalization of a [hash list](https://en.wikipedia.org/wiki/Hash_list) and a [hash chain](https://en.wikipedia.org/wiki/Hash_chain). |       |
| Blocks                                   | **Blocks** are data containers where data is permanently recorded on a blockchain.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |       |
| Finite-state machine                     | A behavior model that consists of finite number of states                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |       |
| Public Key                               | The key available for anyone to use when utilizing Public Key Cryptography                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |       |
| Private Key                              | The key designed to decrypt data encrypted with the public key                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |       |
| Cryptography                             | the practice and study of techniques for [secure communication](https://en.wikipedia.org/wiki/Secure_communication) in the presence of [adversarial](https://en.wikipedia.org/wiki/Adversary_\(cryptography\)) behavior.[\[](https://en.wikipedia.org/wiki/Cryptography#cite_note-rivest90-2)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |       |
| Authentication                           | the act of proving an [assertion](https://en.wikipedia.org/wiki/Logical_assertion), such as the [identity](https://en.wikipedia.org/wiki/Digital_identity) of a computer system user                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |       |
| Node                                     | A single processing server in a communications network                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |       |
| Peer-to-peer (p2p)                       | A distributed application design that partitions taks or workloads between peers.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |       |
| Game Theory                              | Game theory is the study of [mathematical models](https://en.wikipedia.org/wiki/Mathematical_model) of strategic interactions among [rational agents](https://en.wikipedia.org/wiki/Rational_agent).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |       |
| Mining                                   | On a blockchain, *mining* is the validation of transactions. For this effort, successful miners obtain new cryptocurrency as a reward. The reward decreases [transaction fees](https://en.wikipedia.org/wiki/Cryptocurrency#Transaction_fees) by creating a complementary incentive to contribute to the processing power of the network.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |       |
| Wallet                                   | Key manager used to manage your cryptocurrencies or tokens                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |       |
| mnemonic phrase                          | Equivalent to a private key and is not encrypted.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |       |
| Testnet                                  | An equivalent technology blockchain but intended to be used of experimentation                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |       |
| Faucets                                  | A provider that produces and distributes tokens for testing                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |       |
| Smart Contract                           | Collections of logic that exist on the block chain that automate transactions between two parties.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |       |
| Integrated Development Environment (IDE) | A piece of software or service that facilitates the development of software.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |       |
| Block Explorer                           | A service that facilitates the examination of the blockchain in an easy manner.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |       |
| Application Binary Interface (ABI)       | A JSON object that describes the input, outputs, and structure of smart contracts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |       |
| Solidity                                 | A programming language optimized to develop smart contracts and compile them for blockchain deployment.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |       |
| Compile                                  | Transforming Human Readable code into machine code                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |       |
| Validators                               | Are authoritative mechanisms that check whether new transactions align with the network’s rules and ensure that the sender has adequate funds to complete the transaction                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |       |
| finite-state machine (FSM)               | A finite-state machine (FSM) or finite-state automaton (FSA, plural: automata), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number of states at any given time.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |       |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cll-devrel.gitbook.io/bootcamp-2024/glossary.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
