0
0
Blockchain / Solidityprogramming~20 mins

Why blockchain exists - Challenge Your Understanding

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Blockchain Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Why was blockchain technology created?

Which of the following best explains the main reason blockchain technology was created?

ATo replace all existing internet protocols with a new one
BTo create a centralized database controlled by a single authority
CTo enable secure, transparent, and tamper-proof record keeping without a central authority
DTo speed up traditional banking transactions by using faster servers
Attempts:
2 left
💡 Hint

Think about what problem blockchain solves related to trust and control.

🧠 Conceptual
intermediate
2:00remaining
What problem does blockchain solve in digital transactions?

What key problem in digital transactions does blockchain technology address?

AThe risk of double spending and lack of trust between parties
BThe need for faster internet connections
CThe difficulty of creating user-friendly apps
DThe high cost of physical cash handling
Attempts:
2 left
💡 Hint

Consider what happens if someone tries to spend the same digital money twice.

Predict Output
advanced
2:00remaining
What is the output of this simplified blockchain block validation code?

Consider this Python code that simulates a simple blockchain block validation. What will it print?

Blockchain / Solidity
block = {'index': 1, 'data': 'Hello', 'previous_hash': '0'*64}

import hashlib

def hash_block(block):
    block_string = f"{block['index']}{block['data']}{block['previous_hash']}"
    return hashlib.sha256(block_string.encode()).hexdigest()

block_hash = hash_block(block)

if block_hash.startswith('0000'):
    print('Block is valid')
else:
    print('Block is invalid')
AKeyError
BBlock is invalid
CSyntaxError
DBlock is valid
Attempts:
2 left
💡 Hint

Look at the hash prefix check and what the hash function returns.

Predict Output
advanced
2:00remaining
What is the output of this blockchain transaction verification code?

What will this JavaScript code print when run?

Blockchain / Solidity
const transactions = [{from: 'Alice', to: 'Bob', amount: 50}, {from: 'Bob', to: 'Charlie', amount: 30}];

function verifyTransaction(tx) {
  return tx.amount > 0 && tx.from !== tx.to;
}

const results = transactions.map(verifyTransaction);
console.log(results);
A[true, true]
B[true, false]
C[false, true]
D[false, false]
Attempts:
2 left
💡 Hint

Check the conditions in verifyTransaction for each transaction.

🧠 Conceptual
expert
3:00remaining
Why is decentralization important in blockchain?

Which of the following best explains why decentralization is a key feature of blockchain?

AIt allows a single company to control all data securely
BIt makes the blockchain private and hidden from users
CIt speeds up transactions by using one central server
DIt removes the need for trust in a single authority by distributing control among many participants
Attempts:
2 left
💡 Hint

Think about how decentralization affects trust and control.