hash algorithm: blake2b-256
body: Plutus V3 Cost Model Parameter Changes Prior to Chang#2
  abstract: We propose to update the Plutus V3 Cost Model via a Parameter Update governance action to enable the new Plutus primitives that will be available following the Chang#2 hard fork (to Protocol Version 10). Existing Plutus cost model settings will not be changed. Note that the primitives will not be enabled in Protocol version 9 (as enabled by the Chang hard fork).
  motivation: Following the hard fork to Protocol Version 10, 12 new Plutus primitives will be available for bitwise and cryptographic operations. This governance action provides cost model settings so that these primitives can be used following the Chang#2 hard fork.
  rationale: We propose to update the Plutus V3 Cost Model via a Parameter Update governance action to enable the new Plutus primitives that will be available following the Chang #2 hard fork (to Protocol Version 10). Existing Plutus cost model settings will not be changed. Note that the new primitives will not be enabled in Protocol version 9 (as enabled by the Chang hard fork). ## Technical Evaluation The changes described in this governance action have been recommended by Intersect’s Parameter Committee on 2024-10-10, as evidenced by [this post in the Cardano Forum](https://forum.cardano.org/t/oct-10-2024-voltaire-era-parameter-committee-intermediate-state/137361), and subsequently ratified unanimously by Intersect's Technical Steering Committee on 2024-10-18. ### Functionality As described below, 12 new Plutus v3 primitives will be enabled following the Chang#2 hard fork. These will provide new bitwise and cryptographic hashing functions that have a variety of uses, and which will enhance interoperability with BitCoin and Ethereum. The revised Plutus v3 cost model will enable those new primitives. The changes are all additions to the existing Plutus V3 cost model. No changes will be made to the cost model values for any existing Plutus primitives or to the Plutus V1 and V2 cost nodels. ### Security No specific security concerns are raised by this change. A security report will be provided for the new Plutus primitives to support the Chang#2 hard fork. ### Performance In line with [Plutus benchmarking procedures](https://github.com/IntersectMBO/plutus/blob/master/plutus-core/cost-model/CostModelGeneration.md), [standard benchmarking has been undertaken on a reference machine](https://github.com/IntersectMBO/plutus/blob/master/plutus-core/cost-model/data/benching-conway.csv) to determine these cost model settings and to align them with existing Plutus primitives. Since Plutus script execution times and memory usage are bounded by `maxBlockExecutionUnits[steps/memory]` and `max…
  references: Other
    label: Public Cardano Forum Post from the Parameter Committee Describing the Proposal
    uri: https://forum.cardano.org/t/oct-10-2024-voltaire-era-parameter-committee-intermediate-state/137361
  references: Other
    label: CIP-0122
    uri: https://github.com/cardano-foundation/CIPs/tree/master/CIP-0122
  references: Other
    label: CIP-0123
    uri: https://github.com/cardano-foundation/CIPs/tree/master/CIP-0123
  references: Other
    label: CIP-0127
    uri: https://github.com/cardano-foundation/CIPs/tree/master/CIP-0127
  references: Other
    label: RIPEMD-160 hashing
    uri: https://homes.esat.kuleuven.be/~bosselae/ripemd160/pdf/AB-9601/AB-9601.pdf
  references: Other
    label: Overview of the Plutus Primitve Benchmarking Process
    uri: https://github.com/IntersectMBO/plutus/blob/master/doc/cost-model-overview/cost-model-overview.pdf
  references: Other
    label: Generating and Updating the Plutus Cost Model
    uri: https://github.com/IntersectMBO/plutus/blob/master/plutus-core/cost-model/CostModelGeneration.md
  references: Other
    label: Plutus Primitive Benchmarking Code
    uri: https://github.com/IntersectMBO/plutus/tree/master/plutus-core/cost-model/create-cost-model
  references: Other
    label: Plutus Primitive Performance Results (CSV)
    uri: https://github.com/IntersectMBO/plutus/blob/master/plutus-core/cost-model/data/benching-conway.csv
  references: Other
    label: Cardano Node 10.1.1 Performance Report
    uri: https://updates.cardano.intersectmbo.org/reports/2024-10-performance-10.1.1/
  references: Other
    label: All Cardano Node Performance Reports
    uri: https://updates.cardano.intersectmbo.org/reports/tags/benchmarking-reports
  references: Other
    label: Technical Steering Committee Meeting Minutes 204-10-23
    uri: https://committees.docs.intersectmbo.org/intersect-technical-steering-committee/tsc-meeting-minutes/23rd-october