Cardano Improvement Proposals (CIPs)

repository·master·Indexed 20 days ago

https://github.com/cardano-foundation/cips

The central repository for Cardano Improvement Proposals (CIPs) and Cardano Problem Statements (CPS). It provides a formal process for proposing, documenting, and versioning technical changes, design decisions, and standards for the Cardano ecosystem, including specifications for on-chain metadata (CIP-0006) and reward calculations (CIP-0007).

Tokens
196.1K
Snippets
226
Records
715
Agent score
69%

What's inside cardano-foundation-cips

  1. Overview of Cardano Problem Statement CPS-0020: Governance Stakeholder Incentivization

    master

    CPS-0020 addresses the lack of structured incentivization for key participants in the Cardano governance framework. Currently, the system relies heavily on the altruism of Delegated Representatives (DReps), Constitutional Committee (CC) members, and ADA holders, which poses risks of voter apathy, governance capture, and centralization of power.

    Key Stakeholders Identified:

    • DReps (Delegated Representatives): Need compensation to sustain the time required for research and community engagement.
    • CC (Constitutional Committee) Members: Require incentives to manage the high workload of reviewing governance actions.
    • ADA Holders: Need motivations to stay actively engaged with their chosen DReps to prevent passive delegation and governance stagnation.
    • SPOs (Stake Pool Operators): While already incentivized for staking, they lack direct rewards for deep governance participation, which can lead to passive voting.

    Primary Objective: To establish a balanced, robust incentivization framework that encourages consistent, informed, and diverse participation while preventing the misuse of reward mechanisms and ensuring sustainability relative to the yearly ADA inflows to the treasury.

  2. Overview of CIP-0108: Governance Metadata - Governance Actions

    master
    CIP-0108 defines a specification for off-chain metadata vocabulary used to provide context to Cardano governance actions (as defined in CIP-1694). It extends the base CIP-0100 framework to ensure that voters and participants have access to rich, standardized information such as motivation, rationale, and references. This standardization facilitates interoperability between governance tooling and improves the user experience for voters by providing necessary context that is not available on-chain.
  3. Overview of CIP-0119: Governance metadata - DReps

    master

    CIP-0119 defines a specification for off-chain metadata vocabulary used to provide context for DRep (Delegated Representative) registration and updates within the Cardano governance framework.

    It builds upon CIP-100 (Governance Metadata), which provides the base framework for handling off-chain governance metadata. While CIP-100 handles the structural anchoring, CIP-0119 provides the specific vocabulary needed to describe DRep motivations and details.

    Key Concepts

    • Anchoring: To minimize on-chain data costs, metadata is stored off-chain. The blockchain only stores a URL to the metadata and a hash of that metadata to ensure data integrity.
    • Purpose: The standard ensures that tools (wallets, explorers, governance dashboards) can interoperably read and display DRep information, helping delegators make informed decisions based on a DRep's stated motivations.
  4. Overview of CIP-0121: Integer-ByteString conversions

    master

    CIP-0121 proposes adding two new primitive operations to Plutus Core to bridge the gap between BuiltinInteger (numbers) and BuiltinByteString (byte blobs). This allows developers to efficiently convert between these two types, which is essential for tasks like constructing cryptographic messages (e.g., signing bids) and working with finite fields (e.g., Curve25519).

    Key features of the proposed primitives include:

    • Support for different endianness (most-significant-first and most-significant-last).
    • Support for zero-padding to a requested length.
    • Minimal representation (no metadata or endianness encoding within the resulting ByteString).
    • Independence from the internal representation of BuiltinInteger.
    • No support for negative numbers (focuses on non-negative integers).
  5. Overview of CIP-0118: Nested Transactions

    master

    CIP-0118 introduces Nested Transactions, a ledger-level mechanism for composing partially valid transactions into balanced batches. This allows for the settlement of 'intents'—such as atomic swaps, Babel fees (paying fees in non-ADA tokens), and DApp fee sponsorship—without requiring centralized exchanges or complex smart contract interactions.

    Core Concept: The Batch Model

    Instead of single, self-contained transactions, the ledger supports batches consisting of:

    1. A Top-Level Transaction: The primary transaction that must be fully balanced and provides the necessary collateral for all included sub-transactions.
    2. Sub-transactions: One or more partially valid transactions (e.g., unbalanced transactions or those missing fees) that are resolved by the top-level transaction within the same batch.

    When a complete batch is applied, the ledger update is valid, even though individual sub-transactions would fail if processed in isolation.

  6. Overview of CIP-0058: Plutus Bitwise Primitives

    master

    CIP-0058 proposes the addition of bitwise operation primitives to Plutus. These operations are designed to work directly on the existing BuiltinByteString type, avoiding the need for introducing new data types.

    Note: This CIP is currently Inactive and has been superseded by CIP-0121 and CIP-0122.

  7. Overview of CIP-0045: Decentralized WebRTC dApp-Wallet Communication

    master

    CIP-0045 introduces a decentralized communication method between dApps and wallets using WebTorrent trackers and WebRTC. This approach replaces the need for a central signaling server (a Single Point of Failure) with peer discovery via WebTorrent trackers.

    Key features include:

    • Decentralized Peer Discovery: Uses WebTorrent trackers to find peers instead of a central relay server.
    • Cross-Device Communication: Supports connecting a mobile wallet to a desktop dApp via QR codes, Deep Links, or Universal Links.
    • RPC Injection: Demonstrates how wallet RPC methods can be injected into the dApp's global window.cardano object, following the pattern established in CIP-0030.
  8. Overview of Cardano Problem Statement CPS-0032: Handle Provider Interoperability

    master

    CPS-0032 identifies the lack of a common resolver-interoperability framework for Cardano wallets and dApps that support multiple naming and handle providers. Currently, different providers operate independently with unique Policy IDs, resolver endpoints, and metadata formats, leading to several critical issues:

    • Ambiguous Resolution: Without a standard, wallets may resolve a handle to the wrong provider, risking fund loss if two providers use the same visible format under different Policy IDs.
    • Discovery Friction: There is no standard mechanism for wallets or dApps to discover existing providers, their namespaces, or their technical capabilities.
    • Inconsistent UX: Wallet implementations vary regarding how they display provider context, handle ambiguous inputs, or warn users about resolved address types (e.g., script addresses).
    • Security Risks: There are no defined standards for evaluating provider trustworthiness, detecting malicious providers, or handling provider abandonment/migration.

    This document defines the problem space and the required properties for a future technical solution (CIP) to ensure safe, transparent, and interoperable handle resolution.

  9. Overview of Ouroboros Phalanx (CIP-161)

    master

    Ouroboros Phalanx is a proposed consensus extension for Cardano designed to mitigate grinding attacks and improve settlement performance. It strengthens the VRF-based randomness generation sub-protocol used for leader election by introducing a cryptographic primitive that is computationally expensive for adversaries but lightweight for honest participants.

    Key Objectives:

    • Mitigate Randomness Manipulation: Addresses CPS-0021 by raising the cost of grinding attacks by approximately $10^{10}$.
    • Improve Settlement Speed: Addresses CPS-0017 by reducing settlement time by approximately 20–30% compared to unmodified Praos.

    Core Mechanism:

    The protocol introduces the $\Phi$ (Phi) Stream, which utilizes Verifiable Delayed Functions (VDFs) (specifically recommending Wesolowski's VDF) to ensure that biasing slot leader distributions becomes economically infeasible at scale.

  10. Overview of CIP-135: Disaster Recovery Plan for Cardano networks

    master

    CIP-135 defines recovery mechanisms and procedures for Cardano networks (including Mainnet, SanchoNet, Preview, PreProd, or private networks) in the event of a major failure where built-in on-chain recovery mechanisms fail.

    The plan addresses three primary failure scenarios:

    1. Long-Lived Network Partition: A state where the network is split for an extended period.
    2. Failure to Make Blocks for an Extended Period of Time: A situation where block production ceases.
    3. Bad Blocks Minted on Chain: A scenario involving invalid or malicious blocks being recorded on the ledger.

    Successful recovery relies on establishing effective communication channels and exercising recovery procedures in advance to ensure Stake Pool Operators (SPOs) and the broader community are prepared.

  11. Overview of Cardano Problem Statement CPS-0017: Settlement Speed

    master

    CPS-0017 addresses the need for faster transaction settlement (finality) on the Cardano blockchain. Currently, achieving high assurance that a transaction will not be rolled back can take a significant amount of time (e.g., the current security parameter is 2160 blocks, approximately 12 hours).

    This problem statement identifies that faster settlement is critical for scaling Cardano and supporting high-value or time-sensitive use cases like bridges, centralized exchanges, and partner chains. The proposal explores modifying Ouroboros protocol logic and optimizing the active slot coefficient to provide faster settlement without compromising security against adversarial attacks.

  12. Overview of Cardano Problem Statement CPS-0005: Plutus Script Usability

    master
    CPS-0005 identifies usability challenges when interacting with Plutus scripts on Cardano. The core issue is that while the EUTXO model allows for complex applications, the basic actions of creating and spending outputs locked with Plutus scripts are difficult for both users and automated systems (like wallets) due to the mandatory nature of datums and the lack of distinction between Plutus and native script addresses.