Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
LABS
Glossary

Scope

A parameter in OAuth 2.0 and OpenID Connect that specifies the permissions or access privileges being requested from the resource owner.
Chainscore © 2026
definition
BLOCKCHAIN GLOSSARY

What is Scope?

In blockchain and smart contract development, 'scope' refers to the context in which variables, functions, and data are accessible and valid.

In programming, scope defines the region of a program where a declared variable, function, or contract is accessible. It is a fundamental concept that determines the visibility and lifetime of identifiers. In the context of smart contracts written in languages like Solidity, scope is critical for managing state variables, function parameters, and local variables to prevent unintended interactions and ensure data integrity. Proper scoping prevents naming conflicts and is essential for writing secure, modular, and maintainable code.

Solidity employs several key scoping levels. State variables have contract-level scope, meaning they are accessible from any function within the same contract and persist for the contract's lifetime on the blockchain. Function parameters and local variables declared inside a function have local scope, existing only for the duration of that function's execution. Furthermore, global variables like msg.sender or block.timestamp have a global scope, accessible from anywhere within the contract and provided by the Ethereum Virtual Machine (EVM) execution environment.

Understanding scope is paramount for security. A common vulnerability arises from incorrectly scoped variables, where a developer might inadvertently expose sensitive data or create state variables that can be manipulated in unintended ways. For instance, a variable intended to be temporary and local, if mistakenly given contract scope, becomes permanent, costly storage on-chain. Auditors meticulously review scoping to identify such issues, ensuring that the principle of least privilege is applied to data access within a smart contract's architecture.

how-it-works
BLOCKCHAIN DATA PROTOCOL

How Scope Works

Scope is a specialized data protocol that structures and indexes blockchain activity into a standardized, queryable format for developers and analysts.

Scope is a data indexing protocol that transforms raw, unstructured blockchain data into a structured, relational format. It operates by ingesting on-chain transactions and event logs, then applying a standardized schema to categorize and index this information. This process creates a normalized data layer where complex activities—such as token swaps, liquidity provisions, or governance votes—are parsed into discrete, queryable events. The core innovation is its unified data model, which allows applications to query multiple blockchains using a single, consistent interface, abstracting away the underlying differences in how each chain stores and emits data.

The protocol's architecture is built around several key components. The Scope Chain serves as a dedicated blockchain that secures the indexing process and validates the correctness of the derived data. Indexers are network participants who run nodes to read source chains, execute the Scope data model, and publish attestations to the Scope Chain. Attestations are cryptographic proofs that vouch for the accuracy of a specific piece of indexed data, creating a verifiable link back to the source blockchain. This structure ensures data integrity and provenance without relying on a single centralized authority.

For developers, Scope provides a GraphQL API endpoint, enabling precise queries for specific on-chain events or aggregated metrics. Instead of parsing raw transaction calldata or decoding complex log events, an application can simply request, for example, "all USDC transfers to a specific address on Arbitrum after block X." This drastically reduces the engineering overhead and infrastructure cost required to build cross-chain applications, data dashboards, or automated trading systems. It turns blockchain data consumption from a data-engineering challenge into a straightforward query problem.

A primary use case is in DeFi analytics and portfolio management. Protocols and users can track liquidity positions, yield earned, and asset exposure across Ethereum, Arbitrum, Base, and other supported networks through a single query. Another critical application is for cross-chain smart contracts that need reliable, real-time data from other chains to execute logic, such as bridges or omnichain lending platforms. By providing a verifiable and consistent data layer, Scope acts as foundational infrastructure for the next generation of interconnected blockchain applications.

key-features
BLOCKCHAIN GLOSSARY

Key Features of Scope

Scope is a blockchain data protocol that provides a standardized framework for indexing, querying, and analyzing on-chain data. Its core features enable developers to build efficient, reliable data applications.

01

Universal Data Indexing

Scope creates a normalized data layer that aggregates and structures raw blockchain data from multiple sources. This involves:

  • Ingesting transaction logs, event emissions, and state changes.
  • Parsing data using protocol-specific Application Binary Interfaces (ABIs).
  • Indexing the parsed data into query-optimized schemas, making it accessible without running a full node.
02

Declarative Query Language

Developers interact with Scope using SQL (Structured Query Language). This provides a powerful, familiar interface for data retrieval and aggregation.

  • Write complex queries to filter, join, and aggregate on-chain data.
  • Execute sub-second queries against indexed datasets.
  • Leverage a standardized syntax that abstracts away the underlying blockchain's raw data format.
03

Real-time Data Streams

Scope supports real-time data subscriptions for applications requiring live updates. This feature enables:

  • Listening for specific events (e.g., token transfers, liquidity pool swaps) as they are confirmed on-chain.
  • Push-based notifications to downstream applications via WebSockets or server-sent events.
  • Building live dashboards, alert systems, and responsive DeFi interfaces.
04

Cross-Chain Data Unification

The protocol is designed to index data from multiple blockchain networks into a cohesive interface. Key aspects include:

  • A unified schema for common primitives like tokens, transactions, and smart contracts across different chains.
  • Chain-agnostic queries that can pull and compare data from Ethereum, Solana, and other supported networks in a single request.
  • Simplifies the development of multi-chain analytics and applications.
05

Decentralized Network Architecture

Scope operates on a decentralized network of indexers. This design ensures resilience and scalability.

  • Indexer Nodes compete to serve queries and provide data, with performance and correctness verified.
  • Delegated Proof-of-Stake (DPoS) or similar mechanisms secure the network and incentivize honest participation.
  • Data consumers pay for queries, creating a marketplace for reliable blockchain data.
06

Use Cases & Applications

Scope's features enable a wide range of applications:

  • DeFi Dashboards & Analytics: Track Total Value Locked (TVL), trading volumes, and protocol revenues.
  • On-Chain Risk Monitoring: Analyze wallet behaviors, liquidity concentrations, and smart contract interactions.
  • NFT Market Intelligence: Index floor prices, sales history, and collection statistics.
  • Blockchain Explorers: Power user-friendly interfaces that replace traditional block explorers.
SCOPE COMPARISON

Common Scope Types: OAuth 2.0 vs. OpenID Connect

A comparison of standard scope definitions and their purposes across the OAuth 2.0 authorization and OpenID Connect identity layers.

Scope / ClaimOAuth 2.0 (Authorization)OpenID Connect (Identity)Notes

profile

Requests access to default profile claims: name, picture, gender, birthdate.

email

Requests access to the email and email_verified claims.

address

Requests access to the address claim.

phone

Requests access to the phone_number and phone_number_verified claims.

openid

Required core scope to initiate an OpenID Connect request.

offline_access

Requests a refresh token for obtaining new access tokens without user interaction.

read

Example resource-specific scope for read permissions (e.g., read:user).

write

Example resource-specific scope for write permissions (e.g., write:repo).

examples
BLOCKCHAIN CONTEXT

Real-World Scope Examples

In blockchain development, scope defines the boundaries of what a smart contract, transaction, or protocol can access and modify. These examples illustrate how scope is applied in practice.

01

Function Scope in Solidity

In Solidity, variables declared inside a function have local scope, meaning they are only accessible within that function and are destroyed after execution. This prevents unintended interactions and saves gas. For example, a temporary counter used in a calculation loop exists only for the duration of that function call.

02

Contract Storage Scope

State variables in a smart contract have contract-level scope. They are stored permanently on-chain and are accessible to all functions within that contract. This scope defines the contract's persistent memory. For instance, a totalSupply variable for an ERC-20 token is stored at this scope, allowing any function (like balanceOf or transfer) to read it.

03

Module/Import Scope

Libraries and imported contracts create an external scope. Using import statements or delegate calls, a contract can access functions and data from another deployed contract. This is foundational for upgradeable proxies and modular design, where the logic scope is separated from the storage scope.

04

Transaction & msg Scope

Global variables like msg.sender and msg.value have transaction-level scope. They provide context about the current transaction and are immutable for its duration. This scope is critical for access control and value transfer, ensuring a function can reliably identify the caller and the attached Ether.

05

Block Scope (block.*)

Variables like block.number and block.timestamp have block-level scope. They provide read-only access to consensus data about the current block. This scope is used for time-based logic (e.g., unlocking tokens) and generating randomness, though block.timestamp is manipulable by miners.

06

Inheritance & Visibility Scopes

Solidity's visibility specifiers (public, private, internal, external) define access scope. An internal function can be called within the contract and by derived contracts, while a private function is restricted to the defining contract. This enforces encapsulation within a contract's inheritance hierarchy.

did-auth-context
AUTHENTICATION PARAMETER

Scope in Decentralized Identity (DID) Auth

In Decentralized Identity (DID) authentication, a scope is a parameter within an authorization request that specifies the precise set of permissions or data access being requested from a user's identity wallet.

Formally, a scope is a space-separated list of case-sensitive strings defined by an application or Verifier. Each string, or scope token, represents a specific permission, such as the ability to read a profile (profile:read) or access an email address (email). During the OAuth 2.0 or OpenID Connect (OIDC) flow adapted for DIDs, the Relying Party includes the scope parameter in its initial request to the user's wallet or authorization endpoint. This allows the wallet to present a clear, consent screen to the user, detailing exactly what information the application wants to access.

The use of scopes is fundamental to the principle of minimal disclosure. Instead of requesting broad, blanket access to a user's entire Verifiable Data Registry or credential store, a verifier requests only the specific data points necessary for its function. For example, a decentralized social media app might request the profile and email scopes, while a financial dApp might request a credential scope for a specific Verifiable Credential attesting to accredited investor status. This granularity enhances user privacy and control over their digital identity.

Scopes are intrinsically linked to Verifiable Presentations and the DIDComm protocol. When a user consents, their wallet constructs a response containing the authorized claims or credentials that correspond to the requested scopes. This response is often packaged as a Verifiable Presentation. In SIOPv2 (Self-Issued OpenID Provider v2) and other DID Auth protocols, the scope parameter directly dictates the contents of the resulting id_token or presentation. Proper scope design is therefore critical for secure, interoperable, and privacy-preserving interactions across the decentralized identity ecosystem.

security-considerations
GLOSSARY TERM

Security Considerations

Security considerations are the systematic identification, analysis, and mitigation of potential vulnerabilities and attack vectors within a blockchain protocol, smart contract, or decentralized application (dApp).

01

Smart Contract Vulnerabilities

The primary attack surface for decentralized applications. Common vulnerabilities include:

  • Reentrancy: Where an external call allows an attacker to recursively call a function before its state is updated.
  • Integer Over/Underflows: Arithmetic operations that exceed data type limits, leading to incorrect balances.
  • Access Control Flaws: Missing or incorrect permission checks (e.g., onlyOwner) allowing unauthorized actions.
  • Logic Errors: Flaws in the business logic that can be exploited for gain, often identified through formal verification.
02

Consensus & Network Attacks

Attacks targeting the underlying blockchain protocol's consensus mechanism and peer-to-peer network.

  • 51% Attack: An entity gains majority hash power to double-spend or censor transactions (relevant to Proof-of-Work).
  • Long-Range Attack: Rewriting history from an early block in Proof-of-Stake, mitigated by checkpoints or slashing.
  • Sybil Attack: Creating many fake identities to influence network governance or spam the network.
  • Eclipse Attack: Isolating a node by controlling all its peer connections to feed it false data.
03

Cryptographic Assumptions

Security relies on the strength of underlying cryptographic primitives and their correct implementation.

  • Digital Signatures: The security of ECDSA (Eth) or EdDSA (Solana) against quantum computing is a long-term consideration.
  • Hash Functions: Collision resistance of SHA-256 or Keccak-256 is fundamental for block integrity and Merkle proofs.
  • Randomness (RNG): Poor on-chain randomness for Proof-of-Stake validators or NFT minting can be predictable and exploitable.
  • Key Management: User-side risks of private key loss, theft, or insecure generation.
04

Economic & Game Theory

Designing incentive structures to make attacks financially irrational or punishable.

  • Slashing: Penalizing malicious validator behavior (e.g., double-signing) by destroying a portion of their staked assets.
  • Bonding Curves: In DeFi, the design must prevent front-running and manipulation of pricing algorithms.
  • Flash Loan Attacks: Utilizing uncollateralized loans in a single transaction to manipulate market prices and exploit protocols.
  • Maximal Extractable Value (MEV): The profit validators/sequencers can extract by reordering, including, or censoring transactions.
06

User & Interface Layer

The endpoint where most users interact with the blockchain, often the weakest link.

  • Phishing: Fake websites and social engineering to steal seed phrases or private keys.
  • Malicious Contracts: Approving tokens for a smart contract that drains the wallet.
  • Front-end Compromise: Hacking a dApp's website to serve malicious code that intercepts transactions.
  • Wallet Vulnerabilities: Bugs in browser extensions, mobile apps, or hardware wallet firmware.
  • Solution: User education, transaction simulation tools, and wallet security features.
BLOCKCHAIN GLOSSARY

Common Misconceptions About Scope

In blockchain development, 'scope' is a fundamental concept that is often misunderstood, leading to inefficient code and security vulnerabilities. This section clarifies the most frequent misconceptions about variable and state visibility.

In Solidity, scope defines the region of code where a variable, function, or contract is accessible and valid, directly impacting data visibility, security, and gas costs. It matters because improper scoping can lead to unintended data exposure, state variable shadowing, and inefficient contract design. Solidity has several key scopes:

  • Contract Scope: State variables and functions declared here are accessible within the entire contract.
  • Function Scope: Local variables exist only for the duration of a function's execution.
  • Block Scope: Variables within if, for, or while blocks are confined to that block (introduced in Solidity 0.6.0+).
  • Global Scope: Special variables like msg.sender or block.timestamp are available everywhere. Understanding these boundaries is crucial for writing secure, predictable, and gas-optimized smart contracts, as it prevents naming conflicts and controls who can modify critical state.
SCOPE

Frequently Asked Questions (FAQ)

Common questions about the scope, purpose, and technical boundaries of the Chainscore Labs glossary for blockchain professionals.

The Chainscore Labs glossary provides precise, technical definitions for core concepts in blockchain development, infrastructure, and decentralized finance (DeFi). Its scope is strictly limited to encyclopedic explanations of mechanisms, protocols, and cryptographic primitives, deliberately excluding market opinions, investment advice, or promotional content. It targets developers, CTOs, and technical analysts who require unambiguous terminology to build, audit, and analyze blockchain systems. The definitions are structured to serve as a canonical reference, emphasizing semantic clarity and entity relationships between concepts like consensus algorithms, smart contracts, and layer-2 scaling solutions.

ENQUIRY

Get In Touch
today.

Our experts will offer a free quote and a 30min call to discuss your project.

NDA Protected
24h Response
Directly to Engineering Team
10+
Protocols Shipped
$20M+
TVL Overall
NDA Protected Directly to Engineering Team
What is Scope? OAuth 2.0 & OpenID Connect Parameter | ChainScore Glossary