Chapter 1
Foundations of Decentralized Applications
Advance Diploma in Blockchain
Decentralized Applications
•
Advance Diploma
Foundations of Decentralized Applications
Introduction and Context
A decentralized application (DApp) is an application whose important operations are performed by a distributed network rather than by one centrally controlled server. DApps commonly use a blockchain or another distributed ledger to record state, smart contracts to enforce rules, and cryptographic techniques to authenticate actions and protect data integrity. A user may interact with a familiar web or mobile interface, but the underlying trust model differs substantially from that of a conventional application.
In a conventional application, a company or institution normally controls the database, application logic, user accounts, access permissions, and service availability. Users must trust that organization to process transactions correctly, protect personal information, maintain availability, and follow its stated policies. In a DApp, some of these responsibilities are transferred to software protocols, cryptographic keys, and a network of independently operated nodes.
Decentralization does not mean that every component is distributed or that no organization is involved. A DApp may use centralized web hosting, cloud infrastructure, development teams, governance bodies, or external data providers. The important question is not whether an application is simply “on a blockchain,” but which functions are decentralized, how control is distributed, and what assumptions users must accept.
This chapter establishes the conceptual foundation required for designing, evaluating, and using DApps. It explains distributed ledgers, cryptographic foundations, consensus, state machines, trust models, decentralization dimensions, and the practical differences between decentralized and conventional applications.
Learning Objectives
By the end of this chapter, you should be able to:
Define DApps and distinguish them from conventional applications.
Explain how distributed ledgers represent shared state and transaction history.
Describe the roles of hashing, digital signatures, public–private key pairs, and authenticated data structures.
Explain consensus as a mechanism for agreeing on the next valid state of a distributed system.
Model a DApp as a replicated state machine.
Compare technological, governance, economic, and infrastructural dimensions of decentralization.
Analyse trust assumptions, failure modes, and trade-offs in DApp architectures.
Apply these concepts to a practical DApp scenario.
1. What Is a Decentralized Application?
A DApp combines three broad elements:
A user-facing interface: a website, mobile application, wallet, or other client.
Decentralized execution: smart contracts or protocol software executed by multiple nodes.
A shared state and transaction mechanism: commonly a blockchain or distributed ledger.
A useful conceptual model is:
Conceptual architecture of a decentralized application
Figure: Conceptual architecture of a decentralized application
Figure: A DApp connects a user interface to signed requests, smart-contract logic, and replicated ledger state.
The term “decentralized” describes an architectural and governance property, not a binary label. For example, a DApp may have decentralized transaction validation but a centrally hosted interface. Another may have an open-source contract but depend on one company for price data. Proper analysis therefore requires identifying the control points in the complete system.
DApp terminology
Term
Meaning
Account or address
An identifier used to receive assets or interact with a network; it may represent a user, contract, or other entity.
Block
A group of transactions and related metadata accepted into a ledger history.
Blockchain
A ledger in which records are cryptographically linked, usually in an ordered sequence of blocks.
Consensus
The process by which participating nodes agree on valid state transitions or ledger history.
Distributed ledger
A replicated record maintained by multiple network participants.
Gas or execution fee
A charge intended to compensate resource use and discourage abuse; terminology varies by platform.
Node
A computer running software that participates in storing, validating, relaying, or proposing ledger data.
Oracle
A mechanism that supplies external information to a smart contract.
Private key
Secret cryptographic material used to authorize actions, such as signing transactions.
Smart contract
Program code deployed to a ledger environment and executed according to protocol rules.
State
The current information relevant to the application, such as balances, ownership, or configuration.
Token
A digitally represented asset or right managed by protocol rules.
Transaction
A proposed state-changing operation, often digitally signed by its initiator.
Wallet
Software or hardware that manages keys and helps users construct and sign requests.
2. Distributed Ledgers and Shared State
A distributed ledger is a replicated data system. Multiple nodes maintain copies of data and independently check whether proposed updates satisfy the protocol. Replication improves resilience and auditability, but it also creates difficult coordination problems: nodes may receive messages in different orders, some nodes may fail, and some participants may behave maliciously.
A ledger should be distinguished from a conventional replicated database. Both may store copies of data, but their trust and governance models can differ. A company-controlled database may replicate data across several servers while retaining a single administrative authority. A permissionless blockchain generally permits wider participation and uses protocol-defined validation and consensus. A permissioned ledger may restrict participation to approved organizations while still distributing operational control.
Blocks, transactions, and history
A transaction is usually a request to change state. Nodes verify its syntax, signature, authorization, and compliance with application rules. Valid transactions may be ordered into a block or another accepted batch. The ledger then records the resulting state and history.
Cryptographic linking gives a blockchain tamper-evident structure. If a block contains a hash of the previous block, changing an earlier block changes its hash and breaks the subsequent links. This does not make historical alteration mathematically impossible; rather, it makes alteration detectable and, under suitable consensus assumptions, difficult to replace with an accepted alternative history.
A hash function maps an input of arbitrary length to a fixed-length output. Its security use depends on properties such as preimage resistance, second-preimage resistance, and collision resistance. A simplified chain relationship is:
hi = H(Bi || hi-1)
Here, H is a cryptographic hash function, Bi is the contents of block i, hi is the resulting block hash, hi-1 is the preceding block hash, and || denotes concatenation. The expression assumes that the block format and hash algorithm are unambiguous. The formula describes linkage, not consensus or complete immutability.
Replication and verification
A node may perform several roles:
receive and relay transactions;
verify signatures and transaction rules;
store historical data or current state;
execute smart-contract code;
participate in consensus;
provide data to clients through an API.
Not every node performs every role. A light client may verify selected proofs without storing the whole ledger. This distinction matters because decentralization can be weakened if users must rely on a small number of gateways or APIs to obtain data.
3. Cryptographic Foundations
Cryptography does not create trust by itself. It supplies mechanisms that allow participants to authenticate messages, detect alteration, prove possession of secrets, and sometimes establish confidentiality. The security achieved depends on correct algorithms, key management, implementation, and operational practice.
Hash functions
A secure cryptographic hash function is designed so that it is computationally difficult to find an input producing a chosen output or to find two different inputs with the same output. Hashes are used for:
linking blocks;
identifying transactions and contracts;
creating commitments to data;
constructing Merkle trees;
producing compact fingerprints for verification.
A hash is not encryption. It is generally not reversible, and it does not conceal low-entropy data reliably. For example, hashing a small list of possible passwords without a suitable password-hashing method does not provide adequate protection.
Public–private key cryptography
In an asymmetric cryptographic system, a participant has a private key and a related public key. The private key must remain secret; the public key can be shared. A digital signature is produced using the private key and verified using the public key.
A simplified signing relationship is:
σ = Sign(sk, m), Verify(pk, m, σ) = true
Here, m is the message, sk is the private key, pk is the corresponding public key, and σ is the signature. The verification statement is valid only when the signature algorithm, key format, and message encoding are correct. A signature authenticates control of a key; it does not necessarily establish the real-world identity of the key holder.
In many blockchain systems, an address is derived from a public key or related identifier. Possession of the private key normally permits authorization of transactions for that address. Consequently, loss or theft of a key can result in loss of control. There may be no central administrator capable of reversing an unauthorized transfer.
Merkle trees and proofs
A Merkle tree summarizes many records with one root hash. Pairwise hashes are repeatedly combined until one root remains. A user can verify that a record belongs to the committed set by receiving the record and a path of sibling hashes. This supports efficient verification without downloading every record.
The security of a Merkle proof depends on the integrity of the root and the cryptographic assumptions of the hash function. A proof of inclusion does not by itself prove that the underlying data is true, current, or legally valid.
Confidentiality and privacy
Public ledgers often provide integrity and auditability at the expense of exposure. Even where transaction contents are encoded, addresses, timing, amounts, and interaction patterns may reveal sensitive information. Pseudonymity is not equivalent to anonymity. Privacy-enhancing techniques may include encryption, zero-knowledge proofs, mixers, confidential transactions, and off-chain data storage, but each introduces technical, regulatory, or usability considerations.
4. Consensus and Agreement
In a distributed system, nodes need a method for agreeing on which transactions are valid and in what order they should be applied. Consensus is therefore an agreement mechanism, not merely a voting procedure and not a synonym for validation. Validation checks whether an individual transaction or proposed block follows rules; consensus determines which valid proposals become part of the accepted history.
Consensus protocols are designed under assumptions about network timing, participant identity, economic incentives, and adversarial behaviour. Important questions include:
Can participants join freely or must they be authorized?
What fraction of participants may be faulty or malicious?
Is the network synchronous, partially synchronous, or asynchronous?
Is finality probabilistic or deterministic?
How are participants incentivized to follow the protocol?
Major consensus families
Proof of Work (PoW) selects block producers through computational competition. Participants expend computational resources, and the chain with the greatest cumulative work is generally preferred under the protocol. Security is connected to the cost of controlling sufficient computational power. PoW can provide open participation but may consume substantial energy and usually offers probabilistic finality.
Proof of Stake (PoS) uses economically committed stake to select or weight validators. Misbehaviour may lead to penalties such as slashing, depending on the protocol. PoS reduces dependence on energy-intensive computation but introduces questions about stake concentration, validator incentives, delegation, and governance.
Byzantine Fault Tolerant (BFT) protocols are commonly used in permissioned or membership-controlled settings. Through message exchange, identified validators can reach agreement despite some faulty or malicious members. Their performance depends on network assumptions and participant thresholds. A particular BFT protocol must be analysed on its own terms; not every protocol has the same fault tolerance or finality properties.
Consensus involves trade-offs among security, scalability, latency, participation, energy use, and finality. The statement that a system is “secure” is incomplete unless the relevant threat model and assumptions are specified.
5. DApps as Replicated State Machines
A powerful way to understand a DApp is as a replicated state machine. Let St represent the application state at time t, and let τt represent an accepted transaction or ordered batch. A deterministic transition function produces the next state:
St+1 = δ(St, τt)
Here, δ is the state-transition function. Determinism means that honest nodes applying the same valid state and transaction in the same order should produce the same next state. This assumption is central to replication. If execution depends on local time, an unverified external website, or random local conditions, nodes may compute different results.
A transaction is valid only if it satisfies both protocol-level and application-level conditions. For example, a token transfer may require a valid signature, sufficient balance, correct nonce, and compliance with contract rules. If two valid transactions conflict, ordering rules determine which one is applied first and whether the other is rejected or modified.
On-chain and off-chain components
A DApp may place only critical rules and state on-chain. Interfaces, search indexes, large files, analytics, and notifications may be hosted off-chain. This hybrid approach reduces cost and improves performance, but it introduces additional trust assumptions. An off-chain database operator may censor information or provide an inaccurate view unless users can verify results against the ledger.
Oracles create a particularly important boundary. A smart contract can verify that an oracle submitted a signed price, but it cannot automatically determine whether that price reflects reality. Oracle design may use multiple data sources, aggregation, economic incentives, dispute periods, or cryptographic attestations. The “oracle problem” is therefore a problem of importing external facts into a deterministic system.
6. Trust Models and Threat Analysis
Trust is not eliminated in a DApp; it is redistributed. Users may trust fewer central intermediaries but rely more heavily on code, cryptographic keys, validators, economic incentives, interfaces, or governance procedures.
A useful trust analysis asks:
Who can change the application code?
Who can order or censor transactions?
Who can upgrade contracts or pause the system?
Who supplies external data?
Who controls user interfaces and infrastructure?
What happens when a key is lost or compromised?
How are bugs, fraud, and disputes handled?
What assumptions are made about validator honesty and network connectivity?
Common threat categories
Key compromise: an attacker obtains a private key or induces a user to sign a malicious transaction.
Smart-contract vulnerability: flawed code permits theft, unauthorized access, or denial of service.
Censorship: validators, gateways, or interface operators refuse to relay or display transactions.
Sybil attack: an adversary creates many identities to gain influence where identity is cheap.
Consensus attack: an adversary acquires sufficient computational power, stake, or validator influence.
Oracle manipulation: incorrect or manipulated external data causes incorrect contract execution.
Governance capture: concentrated voting power changes protocol rules for private benefit.
Availability failure: a small set of nodes, cloud providers, RPC services, or domain registrars becomes unavailable.
Social engineering: users are deceived into disclosing keys or approving harmful actions.
A threat model should distinguish safety and liveness. Safety means that conflicting or invalid outcomes are not accepted under stated assumptions. Liveness means that valid operations can eventually progress. A system may preserve safety while transactions are delayed, or maintain liveness while accepting an unsafe outcome if assumptions fail.
7. Dimensions of Decentralization
Decentralization is multidimensional. Counting nodes alone gives an incomplete picture. The following dimensions should be examined together.
Dimension
Centralization question
Evidence or indicator
Technical
How many independent components can fail or control execution?
Who controls capital, rewards, or essential infrastructure?
Stake concentration, ownership, token distribution
Data
Who controls storage, indexing, and visibility?
On-chain coverage, indexer diversity, data availability
Interface
Can users access the system without one gateway?
Multiple clients, open APIs, censorship resistance
Legal and institutional
Which organizations can compel or disable operations?
Jurisdiction, regulatory dependencies, contractual control
Decentralization often involves trade-offs. A permissionless validator set may improve open participation but reduce performance. A small validator committee may improve speed and governance coordination but increase collusion and censorship risk. An upgradeable contract may allow rapid security fixes but requires users to trust administrators.
A professional evaluation should avoid unsupported claims such as “fully decentralized.” It should document control rights, dependencies, and failure scenarios. A system can be decentralized in transaction validation but centralized in governance or data provision.
8. DApps Compared with Conventional Applications
Feature
Conventional application
Decentralized application
Primary control
One organization or administrative group
Protocol, distributed participants, and possibly governance bodies
Database
Centrally administered database
Replicated ledger and associated storage
Identity
Account managed by provider
Often key-based, wallet-mediated identity
Updates
Administrator can usually modify records or code
Changes constrained by protocol and governance; may still be upgradeable
Transactions
Reversible or adjustable through administrators
Often difficult or impossible to reverse after finality
Performance
High throughput and low latency are easier to achieve
Consensus and replication introduce costs and limits
Privacy
Provider may restrict public visibility
Public ledgers may expose transaction metadata
Failure handling
Support staff may restore accounts or reverse errors
Recovery may depend on protocol design and governance
Trust
Trust in institution and infrastructure operator
Trust in code, keys, consensus, incentives, and interfaces
Fees
Usually paid through subscription or indirect monetization
Often explicit execution or network fees
The comparison is not absolute. Conventional systems may use distributed databases, and DApps may use centralized services. The relevant distinction is the allocation of authority and the ability of independent participants to verify and enforce rules.
9. Practical Application: Illustrative Community Energy DApp
Background
Consider a fictional community energy cooperative in which households with solar panels sell surplus electricity credits to other members. The cooperative wants transparent accounting and automated settlement without requiring one operator to maintain the only authoritative database.
Problem
A central database can record generation and consumption, but members must trust the operator not to alter balances, favour certain participants, or become unavailable. However, putting raw smart-meter readings directly on a public ledger could expose household activity and create high storage costs.
Analysis
The DApp must separate verifiable settlement from sensitive operational data. Meter readings can be processed off-chain by approved measurement systems. The system can publish commitments or aggregated readings, while the ledger records ownership of energy credits and settlement transactions. An oracle mechanism is required to submit authenticated measurements. Governance must define who can approve meters, challenge readings, and update oracle rules.
The essential state might include:
each member’s credit balance;
offers to buy or sell credits;
accepted trades;
settlement records;
approved oracle and governance information.
A transfer of credits can be represented by the state-transition model St+1 = δ(St, τt). The smart contract checks that the seller owns sufficient credits, the buyer and seller have authorized the trade, and the transaction follows market and fee rules.
Approach and solution
The cooperative deploys a smart contract for credit issuance, transfer, and settlement. Members use wallets to sign transactions. Several independent organizations operate validator or oracle services. A web interface displays balances and offers, but users can query the contract through alternative interfaces. Sensitive meter data remains off-chain, encrypted, and subject to access controls.
The design includes a time-limited emergency pause controlled by multiple cooperative representatives. This improves response to a discovered vulnerability but creates a governance trust assumption. Contract upgrades require a public notice period and a threshold approval rather than a unilateral administrator decision.
Outcome
The ledger provides a common settlement record and makes unauthorized changes more difficult to conceal. Nevertheless, the DApp does not solve every problem. It must still trust meter manufacturers, oracle operators, governance participants, and legal agreements. A technically valid credit may not automatically represent a legally enforceable electricity entitlement. Privacy and regulatory compliance remain continuing responsibilities.
Learning points
Decentralization should be applied selectively to functions where shared verification has value.
Oracles are a critical trust boundary between digital rules and physical events.
Public verifiability must be balanced with privacy and data minimization.
Emergency controls improve resilience but reduce pure permissionlessness.
A DApp is a socio-technical system, not merely a smart contract.
10. Challenges, Ethics, and Governance
Scalability and resource costs
Replicating execution across many nodes consumes resources. Increasing throughput may require larger blocks, faster hardware, or fewer validators, each of which can affect participation and decentralization. Layer-two systems, sidechains, rollups, sharding, and off-chain channels seek to improve scalability, but they introduce additional assumptions and operational complexity.
Irreversibility and consumer protection
Irreversible transactions can reduce dependence on intermediaries but can also amplify the consequences of mistakes, fraud, and key loss. User interfaces should display transaction details clearly, warn about permissions, and support simulation where possible. Governance mechanisms for dispute resolution must be explicit rather than implied.
Privacy, surveillance, and data protection
Permanent public records may conflict with data-protection principles, confidentiality obligations, or a person’s expectation that information can be corrected or removed. Designers should avoid putting unnecessary personal data on-chain and should assess metadata leakage, linkability, retention, and lawful access requirements.
Governance and accountability
Protocol governance may use token voting, elected representatives, validator decisions, multisignature arrangements, or informal social coordination. Each model creates risks of concentration, voter apathy, bribery, or exclusion. Governance should define voting power, quorum, proposal procedures, emergency powers, conflict-of-interest rules, and accountability mechanisms.
Code is not the whole legal relationship
A smart contract can enforce a computational rule, but it may not settle questions of ownership, consumer rights, liability, jurisdiction, or fraud. Legal and regulatory treatment varies by application and jurisdiction. Professional practice therefore requires consultation of applicable law, regulatory guidance, contractual terms, and security standards.
11. Best Practices for DApp Foundations
Map the trust boundaries. Identify every component, operator, oracle, administrator, and external dependency.
Minimize on-chain data. Store only what requires shared verification and protect personal information.
Use deterministic logic. Ensure that independent nodes can produce the same result from the same valid inputs.
Apply least privilege. Limit contract permissions, administrative keys, and upgrade authority.
Protect keys operationally. Use hardware-backed storage, secure recovery procedures, multisignature controls, and transaction review.
Test and audit contracts. Combine unit tests, property-based tests, static analysis, independent review, and adversarial testing.
Document finality and reversibility. Users should know when an operation becomes difficult or impossible to undo.
Design for alternative access. Avoid making one interface, RPC provider, or indexer the only route to the system.
Plan incident response. Define pause, disclosure, recovery, and governance procedures before an incident occurs.
Evaluate the whole socio-technical system. Include technology, incentives, law, organizations, and human behaviour in the analysis.
Contemporary Developments
DApp architecture is evolving through account abstraction, more flexible wallet recovery, zero-knowledge systems, modular blockchain designs, decentralized physical infrastructure, verifiable off-chain computation, and cross-chain interoperability. These developments may improve usability, privacy, or scalability, but they do not eliminate fundamental trust questions. For example, an interoperability bridge may use cryptographic proofs yet still concentrate control in a small validator set; an account-abstraction service may improve recovery while introducing a new transaction sponsor or relay dependency.
Artificial intelligence may assist with smart-contract analysis, anomaly detection, interface design, and governance research. It should not be treated as an unquestionable authority. AI-generated code can contain vulnerabilities, and automated agents interacting with contracts require explicit permission boundaries, spending limits, audit trails, and human oversight for high-impact decisions.
Chapter Summary
A decentralized application is a socio-technical system that combines user interfaces, cryptographic authorization, distributed execution, and shared state. Distributed ledgers replicate records among nodes and use validation and consensus to coordinate accepted updates. Hash functions provide tamper-evident commitments, while digital signatures demonstrate control of private keys; neither mechanism alone establishes real-world identity or truth.
DApps can be understood as replicated state machines in which deterministic transition functions transform accepted transactions into new states. Consensus addresses agreement about valid ordering and history, subject to assumptions concerning faults, network conditions, incentives, and participation. Smart contracts automate protocol rules but depend on secure code, sound governance, and reliable external data when interacting with the physical world.
Decentralization has technical, consensus, governance, economic, data, interface, legal, and institutional dimensions. It produces benefits such as shared verification, resistance to unilateral alteration, and reduced dependence on a single operator, but also introduces costs involving performance, privacy, usability, irreversibility, governance, and operational complexity. Effective DApp design therefore begins with explicit trust-boundary analysis rather than with the assumption that blockchain use automatically makes an application decentralized.
Key Terms
DApp: An application whose important operations are performed or enforced by a distributed protocol rather than one central authority.
Distributed ledger: A replicated record maintained and updated by multiple network participants.
Blockchain: A cryptographically linked sequence or structure of ledger records, commonly organized into blocks.
Smart contract: Program code executed within a ledger environment according to protocol rules.
State: The current application data used to determine valid future operations.
State-transition function: A deterministic rule that maps a current state and valid transaction to a next state.
Consensus: A process for agreeing on accepted ledger history or state transitions.
Node: A computer participating in storing, validating, relaying, executing, or proposing ledger data.
Hash function: A function that maps input data to a fixed-length digest with security properties suitable for integrity applications.
Digital signature: A cryptographic value that can be verified using a corresponding public key.
Private key: Secret cryptographic material used to authorize actions.
Public key: Cryptographic material used to verify signatures or derive identifiers.
Merkle tree: A hash-based structure that permits efficient proof that data belongs to a committed set.
Oracle: A mechanism that supplies external information to a smart contract.
Finality: The condition in which a ledger result is considered settled under a protocol’s assumptions.
Sybil attack: An attack in which one adversary creates many identities to gain disproportionate influence.
Governance capture: Control of protocol decisions by a concentrated or improperly influenced group.
Trust boundary: A point at which a system relies on a different component, operator, or assumption.
Permissionless network: A network that generally allows participation without prior institutional approval.
Permissioned network: A network in which participation or validation is restricted to approved entities.
Review Questions
Short Answer Questions
What are the three broad elements commonly found in a DApp?
Why is a hash function not the same as encryption?
What is the difference between transaction validation and consensus?
Why must smart-contract execution generally be deterministic?
Name four dimensions through which decentralization can be evaluated.
Long Answer Questions
Explain how a distributed ledger differs from a centrally administered replicated database.
Describe the roles of private keys, public keys, and digital signatures in DApp transactions.
Compare Proof of Work, Proof of Stake, and Byzantine Fault Tolerant consensus approaches.
Explain why a DApp does not eliminate trust but redistributes it.
Discuss the principal benefits and limitations of DApps compared with conventional applications.
Analytical / Application Questions
Analyse a proposed DApp that uses a public smart contract but relies on one company for its interface, oracle, and upgrade key. Which dimensions are centralized, and what risks follow?
Design a trust-boundary analysis for a DApp that records insurance claims using external weather data. Identify the required oracle, governance, privacy, and dispute mechanisms.
A project claims to be “fully decentralized” because it has 10,000 token holders. Develop a critical evaluation framework that tests whether consensus, governance, infrastructure, data, and economic control are also distributed.
Multiple Choice Questions with Answers
Question 1
Which statement best describes a decentralized application?
A. An application that has no user interface
B. An application whose important operations are governed by distributed protocols and replicated state
C. An application that stores all data on one private server
D. An application that never uses cryptography
Correct Answer: B. An application whose important operations are governed by distributed protocols and replicated state
Question 2
What is the primary purpose of a digital signature in a blockchain transaction?
A. To prove control of the signing key and authenticate the message
B. To guarantee that the transaction describes a real-world event
C. To hide all transaction metadata from the public
D. To increase the physical storage capacity of the ledger
Correct Answer: A. To prove control of the signing key and authenticate the message
Question 3
In the expression St+1 = δ(St, τt), what does δ represent?
A. The private key
B. The network fee
C. The state-transition function
D. The block timestamp
Correct Answer: C. The state-transition function
Question 4
Which statement correctly distinguishes validation from consensus?
A. Validation checks rules for a proposed operation, while consensus helps determine accepted history or ordering
B. Validation always requires mining, while consensus never involves nodes
C. Validation hides data, while consensus encrypts data
D. Validation applies only to conventional databases
Correct Answer: A. Validation checks rules for a proposed operation, while consensus helps determine accepted history or ordering
Question 5
What is a major risk of relying on a single oracle?
A. The ledger becomes unable to use digital signatures
B. External information may be incorrect, manipulated, or unavailable
C. Blocks can no longer contain transactions
D. Private keys become publicly readable
Correct Answer: B. External information may be incorrect, manipulated, or unavailable
Question 6
Which item is a dimension of decentralization?
A. Screen brightness
B. Keyboard layout
C. Governance control
D. File name length
Correct Answer: C. Governance control
Question 7
Why is a public blockchain record not necessarily anonymous?
A. Addresses and transaction patterns may be analysed and linked
B. Public blockchains do not use identifiers
C. All public blockchains automatically reveal private keys
D. Anonymity is guaranteed whenever data is hashed
Correct Answer: A. Addresses and transaction patterns may be analysed and linked
Question 8
What is a central security responsibility of a wallet?
A. Managing or helping to use cryptographic keys for signed actions
B. Replacing the consensus protocol
C. Guaranteeing that every oracle is truthful
D. Removing the need for application logic
Correct Answer: A. Managing or helping to use cryptographic keys for signed actions
Question 9
Which design choice most directly improves resilience against one interface provider becoming unavailable?
A. Using multiple clients or independently accessible interfaces
B. Giving one administrator unilateral upgrade power
C. Storing every personal record publicly
D. Reducing the number of validating nodes to one
Correct Answer: A. Using multiple clients or independently accessible interfaces
Question 10
In the illustrative community energy DApp, why is an oracle required?
A. To generate private keys for every household
B. To supply authenticated information about external meter or energy events
C. To replace all smart-contract rules with a database
D. To prevent users from signing transactions
Correct Answer: B. To supply authenticated information about external meter or energy events