From 7d94d67004b6cd47ea74beb6aea5f7ef5bf3fae9 Mon Sep 17 00:00:00 2001 From: ClydeWallace22 <48610606+BrandtH22@users.noreply.github.com> Date: Wed, 6 Dec 2023 15:25:05 -0700 Subject: [PATCH 1/2] bchain basics init - first three lessons from the blockchain basics section of chia academy --- .../block-formation-basics.md | 121 ++++++++++++++ .../blockchain-basics/consensus-basics.md | 140 +++++++++++++++++ .../blockchain-basics/timelord-basics.md | 147 ++++++++++++++++++ sidebars.js | 18 +++ 4 files changed, 426 insertions(+) create mode 100644 docs/academy/blockchain-basics/block-formation-basics.md create mode 100644 docs/academy/blockchain-basics/consensus-basics.md create mode 100644 docs/academy/blockchain-basics/timelord-basics.md diff --git a/docs/academy/blockchain-basics/block-formation-basics.md b/docs/academy/blockchain-basics/block-formation-basics.md new file mode 100644 index 0000000000..b5bb1216ad --- /dev/null +++ b/docs/academy/blockchain-basics/block-formation-basics.md @@ -0,0 +1,121 @@ +--- +title: How New Blocks are Formed +slug: /block-formation-basics +--- + +## Learning objectives +- **Transaction Validation**: Learn how nodes validate transactions for inclusion in a block. +- **Block Formation**: Understand farmers role in forming blocks. +- **Mempool**: Review the mempool basics for transaction inclusion and removal. + +--- + +## Content +In this lesson, we review the basics of block formation including the farmers role in validating transactions, forming blocks, and managing the mempool. + +
+ +
+ +--- + +## Script +
+ + Expand for the full script + +00:00 +Every time a transaction occurs, it first gets sent to a full node (a node that is staying synced with the current state of the network), which verifies that it is a valid transaction. + +00:15 +This verification ensures that the conditions and signatures are valid, and that the coins being spent are currently unspent and valid. The transaction is then added to the mempool waiting to be included in a block. + +00:30 +A Farmer that wins the challenge will form a block by retrieving transactions from the mempool, usually based on fee amount, until the maximum block size is reached. The block is then signed and added to the chain, + +00:45 +and the relevant transactions are cleared from the mempool. In this way, transactions are propagated throughout the network very quickly, through the mempool, but are only confirmed once included in a block. + +01:00 + +
+ +--- + +## Common gotchas + +- **Transaction Validation:** Transactions are validated by all nodes not only while blocks are being formed but also when the newly infused blocks are sent from peers, this eliminates a malicious actors ability from altering transactions even if they have the fastest timelord and have farmed the block. +- **Block Formation vs Infusion:** Block formation is the process of combining proofs of space with transactions (the foliage) and is performed by the farmer while block infusion is the process of adding blocks to the chain itself and is performed by timelords. +- **Mempool:** All spend bundles (transactions) from the mempool that will be included in a block are aggregated together during block formation, this means that the specific spend bundle for a given transaction is not stored on-chain and is only available in the mempool. + +--- + +## Knowledge check + +:::tip Question 1 - Transaction Validation + +What system validates transactions in Chia? + +A. Timelords +B. Farmers +C. Harvesters +D. Full Nodes + +::: + +
+ + Answer (expand when ready to see the answer) + +D. Full Nodes + +
+ +:::tip Question 2 - Block Formation + +Is the below statement True or False? + +Full nodes are responsible for infusing blocks while timelords are responsible for forming blocks. + +::: + +
+ + Answer (expand when ready to see the answer) + +False, it is timelords that **infuse** blocks to the chain and the role of full nodes to **form** blocks while creating proofs of space. + +
+ +:::tip Question 3 - Mempool + +What is the Mempool? + +A. Temporary storage on the network where transactions are queued before being confirmed. +B. The amount of system memory the blockchain can access. +C. The total size of all current plots on the network. +D. Another name for the chia blockchain database. + +::: + +
+ + Answer (expand when ready to see the answer) + +A. Temporary storage on the network where transactions are queued before being confirmed. + +
+ +--- + +## Additional resources + +### Links + +- Transaction validation [overview](https://docs.chia.net/block-validation/#body-validation): dives into the requirements for validating the blocks body (which contains the transactions). +- Block formation [overview](https://docs.chia.net/consensus-foliage): explores the intricacies of the full nodes role in block formation and when transaction blocks are formed. +- Block Infusion [detailed documentation](https://docs.chia.net/signage-and-infusion-points/): detailed information on how and when blocks are infused in the chain. +- Mempool [detailed documentation](https://docs.chia.net/mempool/): detailed information on all aspects of mempool inclusion scenarios and how the mempool is updated. +- Support [in discord](https://discord.gg/chia): for further support join our discord server and ask in the #chialisp or #support channels. + +--- \ No newline at end of file diff --git a/docs/academy/blockchain-basics/consensus-basics.md b/docs/academy/blockchain-basics/consensus-basics.md new file mode 100644 index 0000000000..f33b7e9428 --- /dev/null +++ b/docs/academy/blockchain-basics/consensus-basics.md @@ -0,0 +1,140 @@ +--- +title: How Chia Consensus Works +slug: /consensus-basics +--- + +## Learning objectives +- **Farmers**: Understand the basic role of farmers in providing proofs of space. +- **Timelords**: Understand the basic role of timelords in providing proofs of time. +- **Plot Filter**: Understand the basic role of the plot filter and its effect on the eligibility of proofs of space. + +--- + +## Content +In this lesson, we review the basics of consensus, the process by which to determine the true state of a blockchain. + +
+ +
+ +--- + +## Script +
+ + Expand for the full script + +00:00 +Consensus is the process by which to determine the true state of a blockchain. In short, by randomly selecting which node authorizes a new block, it becomes difficult for a bad actor to inject a false truth to the system. + +00:20 +With Chia, the consensus method is called Proof of Space and Time. Nodes begin by pre-generating hashes to store on spare disk space, called "plots". While this takes a lot of work, the work is only done once, and the results are stored and referenced continuously. + +00:40 +We call these nodes "Farmers". + +The Timelord is a program that broadcasts a proof of time to the network to first prove that time has passed since the last challenge, and then to generate a new challenge to distribute to the Farmers. This challenge is what determines the winner of the current block. + +01:00 +Next, a plot filter is implemented that automatically disqualifies a subset of plots. This further randomizes the winner, and is implemented fairly so each Farmer has the same chance of passing the filter. If the filter is passed, the Farmer will check their plots to find a quality proof of space, + +01:20 +and submit it to the chain. If the proof is the highest quality, the Farmer is granted authority to process and add the block to the chain, and rewarded with XCH. + +This consensus method maintains trustless security through high-decentralization while remaining energy efficient. + +01:40 + +
+ +--- + +## Common gotchas + +- **Proof of Space:** Chia relies on Proof of Space where the user stores deterministic x value tables in "plots" not to be confused with Proof of Capacity (PoC) where users store data of other network participants (like filecoin). +- **Timelords:** Timelords play the role of issuing challenges, verifying proofs of space, and infusing blocks to the chain. Farmers submit their Proofs of Space to Timelords but it is the Timelords that infuse blocks. +- **Plot Filter:** The plot filter in Chia consensus automatically disqualifies a portion of plots from being valid Proofs of Space for a specific challenge, these plots can contain valid Proofs of Space for future challenges. + +--- + +## Knowledge check + +:::tip Question 1 - Consensus Method + +What is the consensus method used by Chia? + +A: Proof of Work +B: Proof of Stake +C: Proof of Space and Time +D: Proof of Plots + +::: + +
+ + Answer (expand when ready to see the answer) + +C: Proof of Space and Time + +
+ +:::tip Question 2 - Proof of Time + +What system is used to prove that time is passing? + +A: Farmer +B: Timelord +C: Plot +D: Node + +::: + +
+ + Answer (expand when ready to see the answer) + +B: Timelord + +
+ +:::tip Question 3 - Proofs of Space + +What does a farmer check for valid proofs of space? + +::: + +
+ + Answer (expand when ready to see the answer) + +Plots (deterministic x-value tables) + +
+ +:::tip Question 4 - Quality Proofs + +What is the current (as of December 2023) ratio of plots that contain eligible proofs of space and what is the name of this ratio? + +::: + +
+ + Answer (expand when ready to see the answer) + +1/512 , the plot filter. + +
+ +--- + +## Additional resources + +### Links + +- Consensus [detailed documentation](https://docs.chia.net/consensus-intro): details the Chia consensus including proofs of space and time, timelords, vdfs, and more. +- Farming [basics](https://docs.chia.net/farming-basics): overviews the farming process and how to get started. +- Timelords [detailed documentation](https://docs.chia.net/timelord-algorithm): details the timelords role in the consensus model. +- Plot filter [calculations](https://docs.chia.net/signage-and-infusion-points): overviews the process by which the plot filter effects the number of plots containing eligible proofs. +- Support [in discord](https://discord.gg/chia): for further support join our discord server and ask in the #chialisp or #support channels. + +--- \ No newline at end of file diff --git a/docs/academy/blockchain-basics/timelord-basics.md b/docs/academy/blockchain-basics/timelord-basics.md new file mode 100644 index 0000000000..673b6ab425 --- /dev/null +++ b/docs/academy/blockchain-basics/timelord-basics.md @@ -0,0 +1,147 @@ +--- +title: What are Timelords +slug: /timelord-basics +--- + +## Learning objectives +- **Proofs of Time**: Learn how Proofs of Time are created by timelords and what role they perform. +- **Verifiable Delay Function (VDF)**: Understand the basics of VDFs. +- **Challenges**: Explore how challenges and Proofs of Space create new challenges. + +--- + +## Content +In this lesson, we dive into the role that Timelords play in the consensus by using VDFs to generate challenges. + +
+ +
+ +--- + +## Script +
+ + Expand for the full script + +00:00 +To keep the blockchain consistent, we need to have a way to make sure that the blocks being added contain transactions that occur after the previous block. + +00:15 +In many consensus methods, this is a basic assumption as the work required to determine who can author a block takes an amount of time. With Proof of Space, there is no work to be done at block-time, so we need another way of making sure that time has passed. + +00:30 +The Timelord is a program that broadcasts a proof of time to the network using a Verifiable Delay Function to prove that time has passed since the last challenge, and then to generate a new challenge to distribute to the Farmers. This challenge is what determines the winner of the current block. + +00:45 +The VDF is verifiable, meaning that although it takes a certain amount of time and effort to compute a result, that result can be easily verified without having to do the computation again. + +01:00 +It is also deterministic, so any computation made with the same inputs will result in the same output. + +The input of the VDF is the previous challenge combined with the winning proof of space for that challenge. The output of the VDF will be the next challenge. + +01:15 +While at least one Timelord is required for the blockchain to function, anyone can run a Timelord and having multiple instances ensures that the network will remain resilient. The nature of the VDF also ensures that every instance of a Timelord will generate the same result given the same inputs. + +01:30 +
+ +--- + +## Common gotchas + +- **VDFs and Proofs of Time:** A Verifiable Delay Function, also referred to as a Proof of Time or VDF, is a proof that a sequential function was executed a certain number of times. +- **Timelords:** Only 1 timelord is needed to keep the chain moving but anyone can run a timelord and multiple timelords on the network ensures resiliency. Some attacks that timelords protect against are documented [here](https://docs.chia.net/consensus-attacks#faster-timelord). +- **Challenges:** Challenges are deterministic meaning one can use the inputs (the previous challenge and Proof of Space) to verify the current challenge's accuracy. + +--- + +## Knowledge check + +:::tip Question 1 - Timelords + +How many Farmers need to run a Timelord for the network? + +A. Every Farmer needs to run a Timelord. +B. At least half the Farmers need to run a Timelord. +C. Farmers aren't able to run Timelords. +D. Just one Timelord is needed for the network. + +::: + +
+ + Answer (expand when ready to see the answer) + +D. Just one Timelord is needed for the network. + +
+ +:::tip Question 2 - Proofs of Time + +What system creates Proofs of Time in chia? + +A. Timelords +B. Farmers +C. Harvesters +D. Wallets + +::: + +
+ + Answer (expand when ready to see the answer) + +A. Timelords + +
+ +:::tip Question 3 - Verifiable Delay Functions (VDFs) + +What are the primary purposes of VDFs? (choose all that apply) + +A. To slow down the network. +B. To prove time has passed between blocks. +C. Provide security to the network. +D. Prepare for time travel integrations. + +::: + +
+ + Answer (expand when ready to see the answer) + +B. To prove time has passed between blocks. +C. Provide security to the network. + +
+ +:::tip Question 4 - Challenges + +Is the below statement True or False? + +The input of the VDF is the previous challenge combined with the winning proof of space for that challenge. The output of the VDF will be the next challenge. + +::: + +
+ + Answer (expand when ready to see the answer) + +True + +
+ +--- + +## Additional resources + +### Links + +- Timelords [detailed documentation](https://docs.chia.net/timelord-algorithm/): details the timelords role in the consensus model. +- Proofs of Time / VDFs [overview](https://docs.chia.net/proof-of-time/): detailed overview for Proofs of Time and VDFs. +- Challenges [detailed documentation](https://docs.chia.net/consensus-challenges/): detailed information regarding challenges. +- Support [in discord](https://discord.gg/chia): for further support join our discord server and ask in the #chialisp or #support channels. + +--- \ No newline at end of file diff --git a/sidebars.js b/sidebars.js index f2d53dc539..5b6abd7e39 100644 --- a/sidebars.js +++ b/sidebars.js @@ -438,5 +438,23 @@ module.exports = { 'academy/chialisp/chialisp-intro', ], }, + { + type: 'category', + label: 'Blockchain Basics Overview', + collapsible: true, + collapsed: true, + link: { + type: 'generated-index', + slug: '/academy/blockchain-basics', + title: 'Blockchain Basics Overview', + description: + 'These lessons cover the basics of the Chia Blockchain including consensus, timelords, block formation, the coin-set model, and security.', + }, + items: [ + 'academy/blockchain-basics/consensus-basics', + 'academy/blockchain-basics/timelord-basics', + 'academy/blockchain-basics/block-formation-basics', + ], + }, ], }; From af9d1c25c800af7957903fa0b0cd0b0f738c3d25 Mon Sep 17 00:00:00 2001 From: ClydeWallace22 <48610606+BrandtH22@users.noreply.github.com> Date: Mon, 11 Dec 2023 12:17:51 -0700 Subject: [PATCH 2/2] bchain-basics-remaining-lessons Adds the remaining blockchain basic lessons and updates the video width to change dynamically --- .../block-formation-basics.md | 2 +- .../blockchain-basics/coinset-basics.md | 155 ++++++++++++++++++ .../blockchain-basics/consensus-basics.md | 2 +- .../blockchain-basics/security-basics.md | 120 ++++++++++++++ .../blockchain-basics/timelord-basics.md | 2 +- sidebars.js | 2 + 6 files changed, 280 insertions(+), 3 deletions(-) create mode 100644 docs/academy/blockchain-basics/coinset-basics.md create mode 100644 docs/academy/blockchain-basics/security-basics.md diff --git a/docs/academy/blockchain-basics/block-formation-basics.md b/docs/academy/blockchain-basics/block-formation-basics.md index b5bb1216ad..1da569e16b 100644 --- a/docs/academy/blockchain-basics/block-formation-basics.md +++ b/docs/academy/blockchain-basics/block-formation-basics.md @@ -14,7 +14,7 @@ slug: /block-formation-basics In this lesson, we review the basics of block formation including the farmers role in validating transactions, forming blocks, and managing the mempool.
- +
--- diff --git a/docs/academy/blockchain-basics/coinset-basics.md b/docs/academy/blockchain-basics/coinset-basics.md new file mode 100644 index 0000000000..ab5670bd85 --- /dev/null +++ b/docs/academy/blockchain-basics/coinset-basics.md @@ -0,0 +1,155 @@ +--- +title: Coin-Set Model Intro +slug: /coinset-basics +--- + +## Learning objectives +- **Coin Contents**: Learn what data is stored in a coin. +- **Coin Puzzle**: Understand the role of a coins puzzle. +- **Coin Solution**: Learn about the importance of a coins solution. + +--- + +## Content +In this lesson, we dive into the coinset model basics and learn what it means to spend a coin in Chia. + +
+ +
+ +--- + +## Script +
+ + Expand for the full script + +00:00 +Chia uses the "coinset model" to keep track of the blockchain's state. + +00:10 +In this model, every transaction is represented by a "coin" that contains a value, the rules by which the coin can be spent, and signature authorizing the spend. + +00:20 +What this means is that a "coin" can have any value (in mojo) and as long as the rules are satisfied, anyone can spend the coin. + +00:30 +There are no accounts represented in the system. + +When a coin is created, the value is locked away in that coin and is inaccessible until the coin is spent, + +00:40 +at which point new coins will be created with values equal to the original. + +For example, if I want to send 1 XCH to someone else, + +00:50 +I will create a coin with a value of 1 XCH (or 1 trillion mojos), and set the conditions of the coin to only allow the coin to be spent if given the signature of the other person. + +01:00 +This in effect "sends" the coin to the other person, because they now control what happens to it. When they want to spend the coin, they provide the correct signature, and a new coin is created, + +01:10 +with a value of 1 XCH, itself containing it's own rules of how it can be spent. + +In this way, each coin is only ever used once. + +01:20 +Once it has been spent, it creates a new coin. In Chia, we call the set of conditions needed to unlock the coin the 'puzzle', and the provided data to unlock the coin is the 'solution'. + +01:30 +The coin is represented in the chain as a hash of three attributes, the parent coin ID, (or the ID of the previous coin that created this new one), + +01:40 +the hash of the puzzle that contains the conditions, and the value of the coin. + +01:50 +
+ +--- + +## Common gotchas + +- **Coinset vs Account:** Chia adopts the coinset model where everything is a coin that has its own set of rules, more information about the coinset model can be found [here](https://docs.chia.net/coin-set-vs-account/). This differs from the account model which instead uses contracts (or accounts) to represent users balances and these balances are what is stored on the chain (as opposed to coins and those coins values). +- **Puzzles:** All requirements for spending a coin are contained in the coins puzzle. These puzzles can be simple or complex and effect how, when, and by whom the coin can be spent. The coins puzzle must be determined at the coins creation and cannot be altered thereafter. +- **Solutions:** The ability to spend a coin is based on the users ability to provide a valid solution for the coins puzzle. + +--- + +## Knowledge check + +:::tip Question 1 - Coinset + +What data is contained in coins on the Chia Blockchain? (Select all that apply) + +A. Amount (or value) +B. User account number +C. Puzzle Hash +D. Parent Coin ID + +::: + +
+ + Answer (expand when ready to see the answer) + +A. Amount (or value) +C. Puzzle Hash +D. Parent Coin ID + +
+ +:::tip Question 2 - Puzzle + +True or False: All puzzles on the Chia blockchain are the same. + +::: + +
+ + Answer (expand when ready to see the answer) + +False, while coin puzzles might be similar (such as the standard transaction) the parameters in puzzles vary greatly (who can spend the coin, how it can be spent, other special rules). + +
+ +:::tip Question 3 - Solutions + +Do all coin solutions require a signature? + +::: + +
+ + Answer (expand when ready to see the answer) + +No, it is possible to create coins that do not require any signature or other spender validation (anyone can spend coins) or to even lock coins using non-signature restrictions (such as password protected coins). + +
+ +:::tip Question 4 - Coinset vs Account Model + +Does Chia adopt the coinset model or the account model? + +::: + +
+ + Answer (expand when ready to see the answer) + +The coinset model. + +
+ +--- + +## Additional resources + +### Links + +- Detailed [coinset and account model comparisons](https://docs.chia.net/coin-set-vs-account/): details the differences between the coinset and account models including how these differences effect transactions. +- Overview of [coin puzzles](https://docs.chia.net/coin-set-intro/#puzzles): overviews the role of a coins puzzle and the effect it has on the coins abiltiy to be spent. +- Security recommendations for [signing solutions](https://docs.chia.net/coin-set-security/#signing): reviews the recommendations for securing puzzles by requiring that solutions are signed to limit those who can spend the coin. +- Support [in discord](https://discord.gg/chia): for further support join our discord server and ask in the #chialisp or #support channels. + +--- \ No newline at end of file diff --git a/docs/academy/blockchain-basics/consensus-basics.md b/docs/academy/blockchain-basics/consensus-basics.md index f33b7e9428..61a75af0ac 100644 --- a/docs/academy/blockchain-basics/consensus-basics.md +++ b/docs/academy/blockchain-basics/consensus-basics.md @@ -14,7 +14,7 @@ slug: /consensus-basics In this lesson, we review the basics of consensus, the process by which to determine the true state of a blockchain.
- +
--- diff --git a/docs/academy/blockchain-basics/security-basics.md b/docs/academy/blockchain-basics/security-basics.md new file mode 100644 index 0000000000..a48d8357d4 --- /dev/null +++ b/docs/academy/blockchain-basics/security-basics.md @@ -0,0 +1,120 @@ +--- +title: Chia Blockchain Security Intro +slug: /security-basics +--- + +## Learning objectives +- **Decentralization**: Understand how a decentralized network enhances security and reduces attack options for bad actors. +- **Coin Signatures**: Learn how coin signatures protect the users ability to spend the coins. +- **Chialisp Security**: Review the inherent security of Chialisp, the language used for coin puzzles. + +--- + +## Content +In this lesson, we learn the basic security implementations in Chia and how they protect users from bad actors. + +
+ +
+ +--- + +## Script +
+ + Expand for the full script + +00:00 +The Chia blockchain uses several layers of security. + +00:10 +The first the inherent security that comes from decentralization. By following a consensus method that prioritizes decentralization, + +00:20 +the network ensures that the new blocks being formed are not manipulated by bad actors. There is no need to have a trusted third party to validate transactions, as the network as a whole will weed out anything non-valid. + +00:30 +To secure transactions, we use signatures to protect the coins. In order to make sure that a transaction hasn’t been altered, + +00:40 +every spend bundle (the packet of information about a transaction that gets sent out to nodes) contains an aggregated signature that will only match if the underlying information is unaltered. + +00:50 +In addition, a common condition included in the coin is a required signature to spend, preventing anyone but the authorized party from using the coin. + +01:00 +Additionally, the language used to create "smart coins" is a custom flavor of Lisp called "Chialisp" that is designed to be highly efficient, secure, and easily auditable + +01:10 +so you can be sure about what exactly a coin is going to do when it is spent. + +01:20 +
+ +--- + +## Common gotchas + +- **Decentralization:** The true decentralization of Chia greatly increases the economic costs associated with performing various attacks on Chia, protecting it from all scales of bad actors. +- **Coin Signatures:** Ensuring that a coins solution requires signing ensures that only the intended user can spend the coin, this is an essential part of securing coins on Chia. +- **Chialisp Security:** Chialisp has been developed from Lisp to ensure Chia coins are highly efficient, secure, and easily auditable. + +--- + +## Knowledge check + +:::tip Question 1 - Decentralization + +Does Chia rely on a centralized third party to validate and secure the blockchain? + +::: + +
+ + Answer (expand when ready to see the answer) + +No, Chia is truly decentralized and its network ensures security and block validity through the established consensus mechanism. + +
+ +:::tip Question 2 - Coin Signatures + +Do all coin solutions require signatures to be secure? + +::: + +
+ + Answer (expand when ready to see the answer) + +No, while coin signatures are highly recommended for securing coins they are not required and Chialisp operators provide alternatives for securing coins. +Note - if building coin puzzles that do not require signed solutions be very attentive to all possible exploits, some of which are documented [here](https://chialisp.com/common_issues). + +
+ +:::tip Question 3 - Chialisp + +True or False: Chia uses the same on-chain language that is used for Bitcoin. + +::: + +
+ + Answer (expand when ready to see the answer) + +False, a custom-developed flavor of Lisp called Chialisp was developed to be used for the Chia blockchain. + +
+ +--- + +## Additional resources + +### Links + +- General [Security Overview](https://docs.chia.net/coin-set-security): overviews of Chia security and a review of potential attacks. +- Overview of [Coin Signing](https://docs.chia.net/coin-set-security/#signing): reviews the purpose of signing and when it should be used for coins. +- Chialisp [detailed documentation](https://chialisp.com/): detailed information on all aspects of Chialisp. +- Support [in discord](https://discord.gg/chia): for further support join our discord server and ask in the #chialisp or #support channels. + +--- \ No newline at end of file diff --git a/docs/academy/blockchain-basics/timelord-basics.md b/docs/academy/blockchain-basics/timelord-basics.md index 673b6ab425..7a00323088 100644 --- a/docs/academy/blockchain-basics/timelord-basics.md +++ b/docs/academy/blockchain-basics/timelord-basics.md @@ -14,7 +14,7 @@ slug: /timelord-basics In this lesson, we dive into the role that Timelords play in the consensus by using VDFs to generate challenges.
- +
--- diff --git a/sidebars.js b/sidebars.js index 5b6abd7e39..ff0928249a 100644 --- a/sidebars.js +++ b/sidebars.js @@ -454,6 +454,8 @@ module.exports = { 'academy/blockchain-basics/consensus-basics', 'academy/blockchain-basics/timelord-basics', 'academy/blockchain-basics/block-formation-basics', + 'academy/blockchain-basics/coinset-basics', + 'academy/blockchain-basics/security-basics', ], }, ],