Online Courses
Blockchain Security
Online Courses
Blockchain Security
  • Blockchain Security
  • Fundamentals of Blockchain Security
    • Introduction to blockchain
    • The promises of blockchain
    • Inside the blockchain hype
    • Blockchain structures
    • What is public-key cryptography?
      • How does public-key cryptography work?
      • Public-key cryptography in the blockchain
    • Security assumptions of public-key cryptography
      • Quantum computing
    • Hash function in blockchain
      • Properties of hash functions
      • Hash functions in the blockchain
      • Blockchain security hash key functions
    • Quiz
  • Consensus Algorithm Security
    • Introduction
      • The Byzantine generals problem
      • Security via scarcity
      • Common blockchain consensus algorithms
      • The longest chain rule
    • Proof of work
      • Inside PoW mining
    • Attacking proof of work
      • The 51% attack
      • Denial of service: Artificial difficulty increases
    • Proof of stake
      • Choosing the block creator
    • Attacking PoS consensus
      • XX% attack and the PoS "timebomb"
      • Fake stake attacks
      • Long-range attack
      • Nothing at stake problem
      • Sour milk attack
    • Quiz
  • Blockchain in Action
    • Nodes and network
      • Inside the node
      • How blocks are created
    • Attacking block creation
      • Denial-of-service
      • Frontrunning
      • Selfish mining
      • SPV mining
    • Attacking blockchain nodes
      • Blockchain software misconfiguration
      • Denial of service
      • Malicious transactions
    • Attacking the blockchain network
      • Eclipse attack
      • Routing attack
      • Sybil attack
    • Quiz
  • Smart Contract Security
    • What are smart contracts?
      • Smart contracts
    • General programming vulnerabilities
      • Arithmetic vulnerabilities
      • Right-to-left control character
    • Blockchain vulnerabilities
    • Ethereum vulnerabilities
    • Quiz
  • Beyond the Basics
    • Alternative distributed ledger architectures
      • Introduction to DAGs
      • Introduction to block lattices
      • Introduction to sidechains
    • Second-level blockchain protocols
      • How a state channel works
    • Advanced cryptography in blockchain
      • Multisignatures
      • Zero-knowledge proofs
      • Stealth addresses
      • Ring signatures
      • Commitment schemes
    • Quiz
  • Cumulative Quiz
Powered by GitBook
On this page
  • Question 1
  • Question 2
  • Question 3
  • Question 4
  • Question 5
  • Question 6
  • Question 7
  • Question 8
  • Question 9
  • Question 10

Cumulative Quiz

Question 1

It is possible to prove that a single transaction is included in a block without revealing the rest of the transactions in the block because of the structure of what?

Solution

Merkle trees

Question 2

In which of the following consensus algorithm implementations does a node's probability of being selected as a block creator change from block to block?

Solution
  • Coin age-based Proof of Stake

In coin age-based Proof of Stake, a node's probability of selection depends on both stake size and the time since it was last selected to create a block, so the overall probability varies from block to block.

Question 3

Which of the following takes advantage of the fact that it is difficult to validate a Proof of Stake blockchain?

Solution
  • Fake stake attack

The fake stake attack is designed to perform a Denial of Service attack on nodes since it is computationally expensive to validate a Proof of Stake blockchain.

Question 4

What is the probability that a node with 75% of the stake in a Proof of Stake network will be selected to create three consecutive blocks?

Solution
  • 42%

The probability that a node with 75% of the stake will be selected to create three consecutive blocks is calculated as: 0.75×0.75×0.75=0.75 3 =0.421875≈42%

Question 5

Question 5 Which of the following attacks gives up transaction fees for increased probability of block rewards?

Solution
  • SPV mining

SPV mining gives up transaction fees for increased probability of block rewards.

Question 6

Which of the following node-focused threats enables attacking a node from the blockchain?

Solution

Malicious transactions

Question 7

Which of the following is a good way to get a random value in a smart contract?

Solution
  • External random oracle

An external random oracle is a good source of randomness in a blockchain. All of the other options can be attacked or predicted.

Question 8

This code sample includes which of the following vulnerabilities?

function withdraw(uint _amount) {
    require(balances[msg.sender] >= _amount);
    msg.sender.send(_amount);
    balances[msg.sender] -= amount
}
Solution
  • Reentrancy

  • Unchecked return values

Question 9

In which of the following architectures is it most likely that a transaction will "fall off" of the distributed ledger?

Solution
  • DAG

In a DAG, a transaction can "fall off" of the distributed ledger by not being selected during random walks.

Question 10

Which of the following can be used to demonstrate membership in a group?

Solution
  • Ring signatures

  • Zero-knowledge proofs

PreviousQuiz

Last updated 10 months ago