{
  "id": 7834,
  "title": "EIP-7834: Separate Metadata Section for EOF",
  "status": "Review",
  "type": "Standards Track",
  "category": "Core",
  "summary": "This adds a dedicated metadata section to EOF contracts that is completely separate from executable code and data. Currently, compilers include metadata (like compiler versions, IPFS hashes of source files) by mixing it with contract data, which creates problems for source code verification and causes different bytecode when metadata changes. The new metadata section solves these issues by being unreachable by contract execution, unchanging after deployment, and clearly separated from functional code. This makes source code verification much easier and ensures that contracts with identical logic but different metadata will have the same executable bytecode.",
  "impacts": [],
  "discussion_url": "https://ethereum-magicians.org/t/eip-7834-separate-metadata-section-for-eof/22138",
  "source_markdown_url": "https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7834.md",
  "canonical_url": "/latest/eips/7834.json",
  "markdown_url": "/latest/eips/7834.md",
  "citations": [
    {
      "recordId": "eip-7834",
      "artifactPath": "normalized/7834.json",
      "url": "/records/proposal/eip-7834/normalized/7834.json",
      "label": "EIP-7834: Separate Metadata Section for EOF",
      "snippet": "This adds a dedicated metadata section to EOF contracts that is completely separate from executable code and data. Currently, compilers include metadata (like compiler versions, IPFS hashes of source files) by mixing it "
    }
  ]
}
