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.
Table of Contents
📘 Section 1: Solana Basics MCQ
- What is Solana?
A. A cryptocurrency wallet
B. A blockchain platform focused on speed and scalability ✅
C. A stablecoin
D. A DeFi protocol - 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 - 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 - What programming language is used for writing Solana smart contracts?
A. Solidity
B. Go
C. Rust ✅
D. Java - What is a Solana smart contract called?
A. Contract
B. Chaincode
C. Program ✅
D. Module - What unit of currency is used for gas fees on Solana?
A. ETH
B. Satoshi
C. SOL ✅
D. GasCoin - What is the smallest unit of SOL?
A. Gwei
B. Lamport ✅
C. Msol
D. NanoSOL - What is the maximum theoretical TPS (transactions per second) on Solana?
A. 10
B. 1,000
C. 65,000+ ✅
D. 2,000 - What is the native wallet for Solana?
A. Metamask
B. Phantom ✅
C. Rainbow
D. Coinbase - What tool is used to develop Solana smart contracts in Rust?
A. Hardhat
B. Anchor ✅
C. Remix
D. Foundry - 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 - What is the default programming model for Solana smart contracts?
A. Account-based model ✅
B. UTXO-based model
C. Hybrid model
D. Graph model - 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 - 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 - 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 - 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 - What is the test network of Solana called?
A. Ropsten
B. Testnet ✅
C. Solnet
D. PreviewNet - What is the dev environment network on Solana?
A. DeveloperNet
B. Localnet
C. Devnet ✅
D. Labnet - How are Solana programs deployed?
A. Using Metamask
B. Using solana deploy-contract
C. Using solana program deploy ✅
D. Using Remix - Which Solana CLI command displays wallet address?
A. solana-keygen new
B. solana address ✅
C. solana show-wallet
D. solana wallet get - Can Solana programs own accounts?
A. No
B. Yes ✅
C. Only through multisig
D. Only wallets own accounts - What command lets you request SOL from a faucet on devnet?
A. solana faucet
B. solana airdrop ✅
C. solana get-sol
D. solana transfer - 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 - 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 - What makes transactions fast in Solana?
A. GPU validators
B. Solana’s 400ms block time ✅
C. Multi-sig blocks
D. L2 chains - 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 - Which Solana SDK supports Web3 JS integration?
A. solana-go
B. @solana/web3.js ✅
C. solana-ts
D. solana-node - Which explorer can you use to view Solana transactions?
A. Etherscan
B. Solscan ✅
C. Blockchain.info
D. Solaexplorer - How is time tracked in Solana?
A. Block timestamps
B. Validators’ clocks
C. Proof of History timestamps ✅
D. Unix time - 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
- What language is used to write Solana smart contracts?
A. Solidity
B. Rust ✅
C. Go
D. JavaScript - 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 - 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 - What macro is used to define the Solana program entry?
A. #[solana_program]
B. #[entry]
C. #[program_start]
D. #[program] ✅ - What tool is used to build Solana programs in Rust?
A. npm
B. yarn
C. cargo ✅
D. solc - What is the typical file extension of a compiled Solana program?
A. .so ✅
B. .wasm
C. .bin
D. .sol - 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 - What happens when a Solana program panics?
A. Blockchain halts
B. Transaction fails ✅
C. It enters debug mode
D. Panic messages go on-chain - What is the size of a Solana transaction by default?
A. 128 bytes
B. 512 bytes
C. 1232 bytes ✅
D. 2048 bytes - What does the BPF in Solana stand for?
A. Blockchain Protocol Format
B. Berkeley Packet Filter ✅
C. Blockchain Program Factory
D. Basic Protocol Framework - What is the main security concern in Solana programs?
A. Contract inflation
B. Account deserialization bugs ✅
C. Gas underflows
D. Bridge hacks - What command deploys a Solana Rust program?
A. solana deploy
B. solana program deploy ✅
C. solana run-program
D. cargo run - What is the standard to interact with tokens in Solana?
A. ERC-20
B. SPL ✅
C. SRP
D. SLP - Which crate is commonly used to write Solana programs?
A. solana-rs
B. anchor-lang ✅
C. solana-crate
D. spl-token - What does CPI stand for in Solana?
A. Cross-Program Instruction ✅
B. Crypto Proof Interface
C. Contract Proxy Integration
D. Computation Power Index - 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 ✅ - What account holds program state?
A. Wallet account
B. System account
C. Program-owned account ✅
D. Epoch account - What crate simplifies writing Solana programs in Rust?
A. wasm-bindgen
B. borsh
C. anchor-lang ✅
D. std - 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 - Can PDAs sign transactions?
A. No ✅
B. Yes
C. Only in devnet
D. Only with multisig - What is required to create a PDA?
A. Validator private key
B. Random seed
C. A seed + program ID ✅
D. System program - What prevents two PDAs from being the same?
A. Their rent balances
B. Seed and program ID hash ✅
C. Private keys
D. Account balance - 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 - What is borsh in Solana development?
A. A hashing algorithm
B. A serialization format ✅
C. A token
D. A rent calculator - 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 - What does #[derive(BorshSerialize, BorshDeserialize)] do?
A. Hashes code
B. Allows contract to accept JSON
C. Enables data encoding and decoding ✅
D. Encrypts logs - 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 - What command initializes an Anchor program?
A. anchor build
B. anchor init ✅
C. anchor deploy
D. anchor start - What command deploys an Anchor program?
A. anchor program deploy
B. anchor push
C. anchor deploy ✅
D. solana upload - What file stores program ID in an Anchor project?
A. Cargo.toml
B. Anchor.toml ✅
C. Program.json
D. Deploy.rs - What is Anchor?
A. A hardware wallet
B. A framework for Solana smart contract development ✅
C. A validator tool
D. A wallet protocol - 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 - What macro is used to define a Solana program in Anchor?
A. #[main]
B. #[solana_program]
C. #[program] ✅
D. #[contract] - In Anchor, what keyword initializes state?
A. #[state]
B. #[init] ✅
C. #[store]
D. #[setup] - 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 - What is a PDA in Solana?
A. Personal Digital Account
B. Program Derived Address ✅
C. Protocol Delegated Agreement
D. Pre-Deployed Account - 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 - What type is used to reference a public key in Anchor?
A. pubkey
B. Pubkey ✅
C. KeyPair
D. Address - Which function is used to log output in Solana smart contracts?
A. console.log
B. emit
C. msg! ✅
D. println! - In Anchor, what macro defines a new instruction handler?
A. #[function]
B. #[entrypoint]
C. pub fn ✅
D. #[handler]
📘 Section 3: Solana Advanced MCQ
- What is Serum?
A. A Solana-based stablecoin
B. A DEX built on Solana ✅
C. A browser extension
D. A validator - What is Metaplex used for?
A. Creating smart contracts
B. Building NFT marketplaces on Solana ✅
C. Wallet creation
D. Token airdrops - What does SPL stand for?
A. Solana Power Level
B. Solana Program Library ✅
C. Smart Protocol Layer
D. Secure Protocol Level - Which SPL token standard is equivalent to ERC-20?
A. SPL-10
B. SPL-Token ✅
C. SPL-721
D. SPL-DEX - 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 - How are programs deployed to Solana?
A. Via RPC only
B. Through Metamask
C. Using solana program deploy ✅
D. With Remix IDE - 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 - What does CPI stand for in Solana?
A. Contract Processing Instruction
B. Cross-Program Invocation ✅
C. Chain Program Input
D. Cryptographic Payment Instruction - What is solana-test-validator used for?
A. Validate transactions
B. Run a local Solana cluster for testing ✅
C. Deploy programs
D. Create wallets - What language does Anchor use for front-end bindings?
A. TypeScript ✅
B. Rust
C. Python
D. C++ - 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 - Which Solana program is responsible for creating new accounts?
A. Token Program
B. System Program ✅
C. BPF Loader
D. Anchor Program - 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 - 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 - 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 - 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 - 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 - 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 - What is the default Anchor workspace folder for IDL files?
A. /src/idl
B. /target/idl ✅
C. /programs/idl
D. /anchor/idl - 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 - What is a nonce in Solana used for?
A. Account creation
B. Preventing double-spending ✅
C. Signature encoding
D. Program linking - 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 - What is solana logs used for?
A. Verifying program size
B. Viewing validator status
C. Viewing runtime logs of transactions ✅
D. Uploading binaries - What is the maximum compute unit per transaction?
A. 1 million
B. 100,000
C. 1,400,000 ✅
D. 10 million - 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 - 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 - 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 - 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 - 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 - What does anchor.toml configure?
A. Rust compiler settings
B. Wallet settings
C. Anchor project metadata and clusters ✅
D. NFT metadata - What are discriminators in Anchor?
A. Account indexes
B. Unique identifiers for instruction types ✅
C. Signature hashes
D. Timestamp markers - What tool do you use to airdrop SOL locally for testing?
A. solana create-token
B. solana deploy
C. solana airdrop ✅
D. solana simulate - Which program ID represents Solana’s native token program?
A. 11111111111111111111111111111111 ✅
B. 22222222222222222222222222222222
C. NativeTokenProgram111111111
D. So11111111111111111111111111111111111111112 - 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 - How can you mint SPL tokens?
A. Using solana transfer
B. Using spl-token mint ✅
C. Using anchor deploy
D. Using system transfer - 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 - 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 - 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 ✅ - What ensures program state integrity in Solana?
A. Client-side validation
B. Borsh serialization
C. Anchor validation and ownership checks ✅
D. Gas usage - 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
- Which CLI command creates a new Solana keypair?
A. solana create-wallet
B. solana-keygen new ✅
C. solana wallet create
D. solana init - What does the solana config get command do?
A. Starts a test validator
B. Shows CLI configuration ✅
C. Deploys a program
D. Resets configuration - What port does solana-test-validator use by default?
A. 8899 ✅
B. 8080
C. 3000
D. 8545 - Can Solana smart contracts directly return values to frontends?
A. Yes
B. No ✅
C. Sometimes
D. Only with Serum - What tool helps audit Solana programs for vulnerabilities?
A. Mythril
B. Solana Linter
C. Sealevel Security ✅
D. Gas Reporter - What is the max number of compute units per transaction (default)?
A. 20,000
B. 100,000
C. 200,000
D. 200,000 ✅ - Is Solana an EVM-compatible chain?
A. Yes
B. No ✅
C. Partially
D. It uses a different version of EVM - Which ecosystem project enables Solana on phones?
A. Phantom
B. Sollet
C. Solana Mobile ✅
D. Helium - Which project bridges Ethereum to Solana?
A. Rainbow Bridge
B. Wormhole ✅
C. Avalanche
D. CrossETH - Which feature allows parallel execution in Solana?
A. PoS
B. Rust async
C. Sealevel runtime ✅
D. Anchor threading
✅ End of Solana Quiz