BlockDAG Docs
  • 🎯Introduction to BlockDAG
  • ⭐GETTING STARTED
    • What is BDAG?
    • Introductory Concepts
      • Decentralized Application (dApps)
      • Accounts
        • EVM Account
        • UTXO Account
      • Transactions
      • Blocks
      • EVM
        • Opcodes
      • Gas Fees
    • Nodes and Mining
      • Testnet Node Setup
    • BlockDAG Architecture
      • Architecture Overview
      • Core Modules and Components
      • Development and Implementation
      • Blockchain Features
      • Consensus Algorithm
  • TEST/MAIN NETWORKS
    • Testnet Alpha
    • Testnet Beta 1: Primordial
      • Network Details
  • BlockDAG Tools
    • Block Explorer
    • Faucet
    • Smart Contract IDE
      • IDE Layout
      • How to create and deploy
    • Contracts Wizard
  • BlockDAG Client APIs
    • EVM RPC
    • WebSocket
  • BlockDAG dApps
    • Create dApps
    • dApps Overview
    • Reflection User Guide
      • Home
      • Reflection Dashboard
      • Reflection
    • Lottery User Guide
      • Lottery Dashboard
      • Lottery
      • Participants
  • Block Explorer
    • EVM
      • Home
      • Block List
        • Block Detail
      • Transaction List
        • Transaction Detail
      • Address Details
      • Contract Listing
        • Contract Details
          • Transfer Tab
          • Holders Tab
          • Events Tab
          • Info Tab
          • Contract Tab
            • Code Tab
            • Read Tab
            • Write Tab
        • Contract Owner
        • Contract Verification
        • Contract Transaction Details
      • Tokens List
        • Token Detail
          • Transfer Tab
            • Transfer Detail Tab (Overview)
            • Transfer Detail (Logs)
          • Holders Tab
            • Holders Detail
          • Events Tab
          • Info Tab
          • Contracts Tab
        • Token Transfer
      • Node Visualizer
      • Faucet
    • UTXO
      • UTXO Home
      • Block List (UTXO)
        • Block Details (UTXO)
      • Transaction List (UTXO)
        • Transaction Details (UTXO)
      • Address Details (UTXO)
Powered by GitBook

Copyright © BlockDAG

On this page
  • Steps 1- Enter Contract Details
  • Steps 2- Verify and Publish

Was this helpful?

Edit on GitHub
  1. Block Explorer
  2. EVM
  3. Contract Listing

Contract Verification

PreviousContract OwnerNextContract Transaction Details

Last updated 2 months ago

Was this helpful?

The Verify and Publish Contract screen allows users to verify their smart contracts by matching the source code with the deployed contract on the blockchain. This process ensures transparency, compliance, and trust in the contract’s operations.

Steps 1- Enter Contract Details

  • Enter Contract Address: Provide the address of the deployed smart contract (e.g., 0xF0245F...D80B60) in the input field. The system uses this address to fetch and validate the contract details on the blockchain.

  • Select Compiler Details

    • Compiler Type: Select the compiler type used during the smart contract's development (e.g., Solidity).

    • Compiler Version: Choose the specific version of the compiler (e.g., v0.8.20) to ensure compatibility.

    • Open Source License Type: Specify the license under which the source code is published. This helps maintain compliance with licensing requirements.

  • Agree to Terms of Service Check the box to confirm agreement with the platform’s terms of service for using the verification feature.

  • Action Buttons

    • Reset: Clears all entered details and selections, allowing you to start over when the user comes back to this 1st step.

    • Continue: Proceeds to the next step in the verification process, enabling code submission and verification.

Steps 2- Verify and Publish

This step allows users to verify a smart contract by uploading its source code and metadata, ensuring it matches the deployed bytecode on the blockchain. It is a crucial process for maintaining transparency and trust in blockchain applications. Highlights the importance of verifying source code to build trust and ensure transparency. Provides advanced settings guidance, such as bytecode hash matching and optimization runs.

Input Fields

  • Upload Contract Source Code:

    • Users can upload the contract's source code file in supported formats like Solidity or Vyper.

    • Ensures the uploaded code matches the on-chain bytecode for verification.

  • Enter Contract ABI (Optional):

    • Allows users to paste the contract’s Application Binary Interface (ABI).

    • Useful for accessing and interacting with the contract's functions.

  • Contract Library Address:

    • If the contract relies on external libraries, users can specify up to 10 library addresses.

    • Ensures proper linkage and accurate verification of dependent components.

  • Misc Settings (Runs, EVM Version):

    • Optimization Runs: Specify the number of optimization runs used during compilation.

    • EVM Version: Indicate the Ethereum Virtual Machine version used, such as Istanbul or Berlin.

  • Action Buttons:

    • Previous: Returns to the previous step in the Verify and Publish Contract workflow.

    • Done: Completes the process, submitting the contract for verification and publication.

How It Works

  • Upload and Match: The system compares the uploaded source code with the deployed bytecode on the blockchain. If matched, the contract is marked as verified.

  • Verification Benefits: Verified contracts increase user confidence by proving that the deployed bytecode aligns with the provided source code. Developers can showcase their contract's functionality and transparency.

  • Advanced Customization: Enables developers to specify advanced configurations, ensuring accurate and comprehensive verification.