Solana Test Quiz – 120 Solana MCQs with Answers

Solana Test Quiz – 120 Solana MCQs with Answers

Here is a comprehensive 120-question Solana MCQ Test Quiz with answers, designed to assess and deepen your understanding of Solana’s architecture, smart contracts (using Rust), key tools, and programming principles.

📘 Section 1: Solana Basics MCQ

  1. What is Solana?
    A. A cryptocurrency wallet
    B. A blockchain platform focused on speed and scalability ✅
    C. A stablecoin
    D. A DeFi protocol
  2. What consensus mechanism does Solana use?
    A. Proof of Work
    B. Proof of Stake only
    C. Proof of History + Proof of Stake ✅
    D. Delegated Proof of Stake
  3. What is Proof of History (PoH)?
    A. A data structure for storing history
    B. A consensus algorithm for NFTs
    C. A cryptographic clock that verifies the passage of time ✅
    D. A method for generating randomness
  4. What programming language is used for writing Solana smart contracts?
    A. Solidity
    B. Go
    C. Rust ✅
    D. Java
  5. What is a Solana smart contract called?
    A. Contract
    B. Chaincode
    C. Program ✅
    D. Module
  6. What unit of currency is used for gas fees on Solana?
    A. ETH
    B. Satoshi
    C. SOL ✅
    D. GasCoin
  7. What is the smallest unit of SOL?
    A. Gwei
    B. Lamport ✅
    C. Msol
    D. NanoSOL
  8. What is the maximum theoretical TPS (transactions per second) on Solana?
    A. 10
    B. 1,000
    C. 65,000+ ✅
    D. 2,000
  9. What is the native wallet for Solana?
    A. Metamask
    B. Phantom ✅
    C. Rainbow
    D. Coinbase
  10. What tool is used to develop Solana smart contracts in Rust?
    A. Hardhat
    B. Anchor ✅
    C. Remix
    D. Foundry
  11. What is the main reason Solana is considered scalable?
    A. It uses sharding
    B. It offloads transactions to L2
    C. It enables parallel execution of transactions ✅
    D. It compresses data on-chain
  12. What is the default programming model for Solana smart contracts?
    A. Account-based model ✅
    B. UTXO-based model
    C. Hybrid model
    D. Graph model
  13. How does Solana prevent spam and ensure security?
    A. It bans bots
    B. Through rent and compute limits ✅
    C. Through Ethereum bridges
    D. Using AI detection
  14. What is the function of the Genesis Block in Solana?
    A. To hold the validators’ keys
    B. To begin the blockchain and distribute initial SOL ✅
    C. To contain smart contracts
    D. To store program data
  15. What is the role of the Sealevel runtime in Solana?
    A. It provides cross-chain communication
    B. It enforces validator consensus
    C. It allows parallel smart contract execution ✅
    D. It initializes tokens
  16. What is a cluster in Solana?
    A. A group of wallets
    B. A DApp interface
    C. A group of validators maintaining the ledger ✅
    D. A bunch of SOL tokens
  17. What is the test network of Solana called?
    A. Ropsten
    B. Testnet ✅
    C. Solnet
    D. PreviewNet
  18. What is the dev environment network on Solana?
    A. DeveloperNet
    B. Localnet
    C. Devnet ✅
    D. Labnet
  19. How are Solana programs deployed?
    A. Using Metamask
    B. Using solana deploy-contract
    C. Using solana program deploy ✅
    D. Using Remix
  20. Which Solana CLI command displays wallet address?
    A. solana-keygen new
    B. solana address ✅
    C. solana show-wallet
    D. solana wallet get
  21. Can Solana programs own accounts?
    A. No
    B. Yes ✅
    C. Only through multisig
    D. Only wallets own accounts
  22. What command lets you request SOL from a faucet on devnet?
    A. solana faucet
    B. solana airdrop ✅
    C. solana get-sol
    D. solana transfer
  23. How do Solana nodes maintain synchronization?
    A. By polling Ethereum nodes
    B. Through Proof of Work
    C. Through tower BFT and PoH ✅
    D. With block hash matching
  24. What is the command to view your SOL balance in CLI?
    A. solana wallet get
    B. solana show-sol
    C. solana balance ✅
    D. solana getbalance
  25. What makes transactions fast in Solana?
    A. GPU validators
    B. Solana’s 400ms block time ✅
    C. Multi-sig blocks
    D. L2 chains
  26. What is the role of lamports in Solana?
    A. They are validators
    B. They are DApps
    C. They are smallest denomination of SOL ✅
    D. They are wallet types
  27. Which Solana SDK supports Web3 JS integration?
    A. solana-go
    B. @solana/web3.js ✅
    C. solana-ts
    D. solana-node
  28. Which explorer can you use to view Solana transactions?
    A. Etherscan
    B. Solscan ✅
    C. Blockchain.info
    D. Solaexplorer
  29. How is time tracked in Solana?
    A. Block timestamps
    B. Validators’ clocks
    C. Proof of History timestamps ✅
    D. Unix time
  30. Which tool helps simulate Solana transactions locally?
    A. solana-simulator
    B. testnet-fork
    C. solana-test-validator ✅
    D. devnet-explorer

📘 Section 2: Solana Development MCQ

  1. What language is used to write Solana smart contracts?
    A. Solidity
    B. Rust ✅
    C. Go
    D. JavaScript
  2. What is an entrypoint in a Solana program?
    A. An API endpoint
    B. A special validator
    C. The function where execution starts ✅
    D. A wallet gateway
  3. What is the file name of the default entrypoint in a Rust Solana program?
    A. lib.rs
    B. main.rs
    C. entrypoint.rs ✅
    D. index.rs
  4. What macro is used to define the Solana program entry?
    A. #[solana_program]
    B. #[entry]
    C. #[program_start]
    D. #[program] ✅
  5. What tool is used to build Solana programs in Rust?
    A. npm
    B. yarn
    C. cargo ✅
    D. solc
  6. What is the typical file extension of a compiled Solana program?
    A. .so ✅
    B. .wasm
    C. .bin
    D. .sol
  7. What is the purpose of the solana-test-validator?
    A. To deploy mainnet programs
    B. To simulate a local Solana network ✅
    C. To test Rust code
    D. To validate real blocks
  8. What happens when a Solana program panics?
    A. Blockchain halts
    B. Transaction fails ✅
    C. It enters debug mode
    D. Panic messages go on-chain
  9. What is the size of a Solana transaction by default?
    A. 128 bytes
    B. 512 bytes
    C. 1232 bytes ✅
    D. 2048 bytes
  10. What does the BPF in Solana stand for?
    A. Blockchain Protocol Format
    B. Berkeley Packet Filter ✅
    C. Blockchain Program Factory
    D. Basic Protocol Framework
  11. What is the main security concern in Solana programs?
    A. Contract inflation
    B. Account deserialization bugs ✅
    C. Gas underflows
    D. Bridge hacks
  12. What command deploys a Solana Rust program?
    A. solana deploy
    B. solana program deploy ✅
    C. solana run-program
    D. cargo run
  13. What is the standard to interact with tokens in Solana?
    A. ERC-20
    B. SPL ✅
    C. SRP
    D. SLP
  14. Which crate is commonly used to write Solana programs?
    A. solana-rs
    B. anchor-lang ✅
    C. solana-crate
    D. spl-token
  15. What does CPI stand for in Solana?
    A. Cross-Program Instruction ✅
    B. Crypto Proof Interface
    C. Contract Proxy Integration
    D. Computation Power Index
  16. How does CPI differ from EVM message calls?
    A. CPIs are synchronous and don’t store state
    B. CPIs are async
    C. CPIs pass through multiple validators
    D. CPIs require pre-specified accounts ✅
  17. What account holds program state?
    A. Wallet account
    B. System account
    C. Program-owned account ✅
    D. Epoch account
  18. What crate simplifies writing Solana programs in Rust?
    A. wasm-bindgen
    B. borsh
    C. anchor-lang ✅
    D. std
  19. What is a PDA (Program Derived Address)?
    A. Private Developer API
    B. A keypair that can sign
    C. A deterministic account derived from seeds ✅
    D. A Solana multisig
  20. Can PDAs sign transactions?
    A. No ✅
    B. Yes
    C. Only in devnet
    D. Only with multisig
  21. What is required to create a PDA?
    A. Validator private key
    B. Random seed
    C. A seed + program ID ✅
    D. System program
  22. What prevents two PDAs from being the same?
    A. Their rent balances
    B. Seed and program ID hash ✅
    C. Private keys
    D. Account balance
  23. How do you transfer lamports in a program?
    A. Using Metamask
    B. With a CPI to SystemProgram::transfer ✅
    C. With solana balance
    D. Using BPF log
  24. What is borsh in Solana development?
    A. A hashing algorithm
    B. A serialization format ✅
    C. A token
    D. A rent calculator
  25. Why is borsh used in Solana smart contracts?
    A. It encrypts state
    B. It compresses logs
    C. It serializes and deserializes account data ✅
    D. It validates signatures
  26. What does #[derive(BorshSerialize, BorshDeserialize)] do?
    A. Hashes code
    B. Allows contract to accept JSON
    C. Enables data encoding and decoding ✅
    D. Encrypts logs
  27. What’s the main purpose of Anchor framework?
    A. Deploying validator nodes
    B. Creating private chains
    C. Simplifying Solana smart contract development ✅
    D. Indexing transactions
  28. What command initializes an Anchor program?
    A. anchor build
    B. anchor init ✅
    C. anchor deploy
    D. anchor start
  29. What command deploys an Anchor program?
    A. anchor program deploy
    B. anchor push
    C. anchor deploy ✅
    D. solana upload
  30. What file stores program ID in an Anchor project?
    A. Cargo.toml
    B. Anchor.toml ✅
    C. Program.json
    D. Deploy.rs
  31. What is Anchor?
    A. A hardware wallet
    B. A framework for Solana smart contract development ✅
    C. A validator tool
    D. A wallet protocol
  32. In Solana, what is an account?
    A. Only an EOA
    B. A smart contract
    C. A data storage object on-chain ✅
    D. A wallet only
  33. What macro is used to define a Solana program in Anchor?
    A. #[main]
    B. #[solana_program]
    C. #[program] ✅
    D. #[contract]
  34. In Anchor, what keyword initializes state?
    A. #[state]
    B. #[init] ✅
    C. #[store]
    D. #[setup]
  35. What does #[derive(Accounts)] do?
    A. It auto-generates front-end files
    B. It defines constraints and validation for instructions ✅
    C. It handles wallet connections
    D. It logs events
  36. What is a PDA in Solana?
    A. Personal Digital Account
    B. Program Derived Address ✅
    C. Protocol Delegated Agreement
    D. Pre-Deployed Account
  37. What happens if the account constraint is violated in Anchor?
    A. A warning is logged
    B. The transaction fails ✅
    C. It is ignored
    D. It retries
  38. What type is used to reference a public key in Anchor?
    A. pubkey
    B. Pubkey ✅
    C. KeyPair
    D. Address
  39. Which function is used to log output in Solana smart contracts?
    A. console.log
    B. emit
    C. msg! ✅
    D. println!
  40. In Anchor, what macro defines a new instruction handler?
    A. #[function]
    B. #[entrypoint]
    C. pub fn ✅
    D. #[handler]

📘 Section 3: Solana Advanced MCQ

  1. What is Serum?
    A. A Solana-based stablecoin
    B. A DEX built on Solana ✅
    C. A browser extension
    D. A validator
  2. What is Metaplex used for?
    A. Creating smart contracts
    B. Building NFT marketplaces on Solana ✅
    C. Wallet creation
    D. Token airdrops
  3. What does SPL stand for?
    A. Solana Power Level
    B. Solana Program Library ✅
    C. Smart Protocol Layer
    D. Secure Protocol Level
  4. Which SPL token standard is equivalent to ERC-20?
    A. SPL-10
    B. SPL-Token ✅
    C. SPL-721
    D. SPL-DEX
  5. What is a validator in Solana?
    A. A smart contract verifier
    B. A node that processes transactions and builds blocks ✅
    C. A wallet
    D. A DEX
  6. How are programs deployed to Solana?
    A. Via RPC only
    B. Through Metamask
    C. Using solana program deploy ✅
    D. With Remix IDE
  7. What is Rent in Solana?
    A. Monthly fee for using smart contracts
    B. Gas fee
    C. Minimum SOL required to keep an account alive ✅
    D. Storage fee for NFTs
  8. What does CPI stand for in Solana?
    A. Contract Processing Instruction
    B. Cross-Program Invocation ✅
    C. Chain Program Input
    D. Cryptographic Payment Instruction
  9. What is solana-test-validator used for?
    A. Validate transactions
    B. Run a local Solana cluster for testing ✅
    C. Deploy programs
    D. Create wallets
  10. What language does Anchor use for front-end bindings?
    A. TypeScript ✅
    B. Rust
    C. Python
    D. C++
  11. What does rent exemption mean in Solana?
    A. An account pays rent periodically
    B. An account cannot be deleted
    C. An account has enough lamports to never pay rent ✅
    D. An account is free to use
  12. Which Solana program is responsible for creating new accounts?
    A. Token Program
    B. System Program ✅
    C. BPF Loader
    D. Anchor Program
  13. How can you verify a PDA address in Anchor?
    A. Using an RPC call
    B. By hashing seed and program ID ✅
    C. With lamport balance
    D. Using Solscan
  14. What does invoke() do in Solana programs?
    A. Logs a message
    B. Creates a new thread
    C. Performs a Cross-Program Invocation ✅
    D. Transfers tokens
  15. What does the SystemProgram::create_account function do?
    A. Adds a validator
    B. Creates a new on-chain account ✅
    C. Transfers SOL
    D. Serializes program state
  16. What is the Anchor #[account] macro used for?
    A. To log account changes
    B. To define account constraints and validations ✅
    C. To sign transactions
    D. To create NFTs
  17. What is a common cause of Solana program panics?
    A. Too many instructions
    B. Account not owned by the program ✅
    C. High gas fees
    D. Mismatched transaction nonce
  18. Which of the following is true about Anchor accounts?
    A. They must use JSON
    B. They must use Borsh for serialization ✅
    C. They are immutable
    D. They are stored on L2
  19. What is the default Anchor workspace folder for IDL files?
    A. /src/idl
    B. /target/idl ✅
    C. /programs/idl
    D. /anchor/idl
  20. What does IDL stand for in Solana and Anchor context?
    A. Intermediate Deployment Language
    B. Internal Developer Layer
    C. Interface Definition Language ✅
    D. Indexed Data Library
  21. What is a nonce in Solana used for?
    A. Account creation
    B. Preventing double-spending ✅
    C. Signature encoding
    D. Program linking
  22. What are Logs in Solana programs used for?
    A. Storing program output permanently
    B. Debugging and transaction tracing ✅
    C. Sending on-chain messages
    D. Encrypting data
  23. What is solana logs used for?
    A. Verifying program size
    B. Viewing validator status
    C. Viewing runtime logs of transactions ✅
    D. Uploading binaries
  24. What is the maximum compute unit per transaction?
    A. 1 million
    B. 100,000
    C. 1,400,000 ✅
    D. 10 million
  25. What happens if a transaction exceeds compute units?
    A. It gets delayed
    B. It completes partially
    C. It fails and reverts ✅
    D. It moves to L2
  26. What is the Anchor #[derive(Accounts)] macro used for?
    A. Deriving state from events
    B. Serializing instruction data
    C. Validating accounts automatically ✅
    D. Logging smart contract events
  27. What is a multisig wallet in Solana?
    A. A wallet requiring multiple seed phrases
    B. A wallet that controls validators
    C. A wallet requiring multiple signatures to execute ✅
    D. A wallet that can send multiple tokens at once
  28. What command installs the Anchor CLI globally?
    A. cargo anchor
    B. anchor install
    C. npm install -g @project-serum/anchor-cli ✅
    D. anchor build –global
  29. What is the purpose of the crate anchor-spl?
    A. It allows deploying to SPL network
    B. It simplifies token program interaction ✅
    C. It compiles Anchor to BPF
    D. It tracks account logs
  30. What does anchor.toml configure?
    A. Rust compiler settings
    B. Wallet settings
    C. Anchor project metadata and clusters ✅
    D. NFT metadata
  31. What are discriminators in Anchor?
    A. Account indexes
    B. Unique identifiers for instruction types ✅
    C. Signature hashes
    D. Timestamp markers
  32. What tool do you use to airdrop SOL locally for testing?
    A. solana create-token
    B. solana deploy
    C. solana airdrop ✅
    D. solana simulate
  33. Which program ID represents Solana’s native token program?
    A. 11111111111111111111111111111111 ✅
    B. 22222222222222222222222222222222
    C. NativeTokenProgram111111111
    D. So11111111111111111111111111111111111111112
  34. What does spl-token create-account do?
    A. Initializes a wallet
    B. Creates a token
    C. Creates an associated token account ✅
    D. Mints new SOL
  35. How can you mint SPL tokens?
    A. Using solana transfer
    B. Using spl-token mint ✅
    C. Using anchor deploy
    D. Using system transfer
  36. What is the benefit of Associated Token Accounts (ATA)?
    A. Higher speed
    B. Deterministic and unique to user/token ✅
    C. Reduced gas cost
    D. They can be shared between users
  37. What is a downside of fixed compute budget in Solana?
    A. High token inflation
    B. Limited instruction per transaction ✅
    C. Non-deterministic execution
    D. Validator centralization
  38. What is Anchor’s biggest limitation?
    A. Only works on Ethereum
    B. Doesn’t support PDAs
    C. Complex syntax
    D. Still evolving and lacks some tooling ✅
  39. What ensures program state integrity in Solana?
    A. Client-side validation
    B. Borsh serialization
    C. Anchor validation and ownership checks ✅
    D. Gas usage
  40. How are upgrades handled in Solana programs?
    A. Through program proxy and upgrade authority ✅
    B. Automatically on-chain
    C. With validator consensus
    D. With manual file replacement

Final Questions

  1. Which CLI command creates a new Solana keypair?
    A. solana create-wallet
    B. solana-keygen new ✅
    C. solana wallet create
    D. solana init
  2. What does the solana config get command do?
    A. Starts a test validator
    B. Shows CLI configuration ✅
    C. Deploys a program
    D. Resets configuration
  3. What port does solana-test-validator use by default?
    A. 8899 ✅
    B. 8080
    C. 3000
    D. 8545
  4. Can Solana smart contracts directly return values to frontends?
    A. Yes
    B. No ✅
    C. Sometimes
    D. Only with Serum
  5. What tool helps audit Solana programs for vulnerabilities?
    A. Mythril
    B. Solana Linter
    C. Sealevel Security ✅
    D. Gas Reporter
  6. What is the max number of compute units per transaction (default)?
    A. 20,000
    B. 100,000
    C. 200,000
    D. 200,000 ✅
  7. Is Solana an EVM-compatible chain?
    A. Yes
    B. No ✅
    C. Partially
    D. It uses a different version of EVM
  8. Which ecosystem project enables Solana on phones?
    A. Phantom
    B. Sollet
    C. Solana Mobile ✅
    D. Helium
  9. Which project bridges Ethereum to Solana?
    A. Rainbow Bridge
    B. Wormhole ✅
    C. Avalanche
    D. CrossETH
  10. Which feature allows parallel execution in Solana?
    A. PoS
    B. Rust async
    C. Sealevel runtime ✅
    D. Anchor threading

✅ End of Solana Quiz

Comments

No comments yet. Why don’t you start the discussion?

    Leave a Reply

    Your email address will not be published. Required fields are marked *