Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Secp256k1 new built ins #304

Closed
vfrsilva opened this issue Sep 9, 2022 · 3 comments
Closed

Secp256k1 new built ins #304

vfrsilva opened this issue Sep 9, 2022 · 3 comments
Assignees

Comments

@vfrsilva
Copy link

vfrsilva commented Sep 9, 2022

Business Hypothesis

SECP256K1 is an elliptic curve used in Bitcoin and Ethereum.
We want to enable our Plutus language with signature verification over this curve so that dapp developers can use it to create cross-chain applications, bridges and side chains. This is a strategic development that will increase adoption and make it possible to implement wrapped assets in the Cardano network. In particular, we are including the ECDSA and Schnorr signature verification algorithms

Drivers

  • Adoption
  • Devx
  • Cross blockchain communication

Functional Requirements

  • SECP256 C library is integrated into Plutus
  • dapp developers can use SECP256 primitives as a built-in function in Plutus
  • The built-in interface follows the one defined in the CIP
  • It should be available only in major protocol version 8

NFRs

Risks

Testing exposes some further vulnerabilities. Low risk

External Dependencies

  • SECP library implementors to implement the library in the proper way following guidance from IOHK Crypto team
  • Security Audit by Internal/external teams
  • Plutus team
  • Automate the SECP256K1 tests in the E2E testing framework.

DoD

  • Major protocol version is equal to 8
  • Cost model is updated to allow execution of the primitive
  • Audit has no security concerns
  • SECP256K1 primitive can be used as a Plutus built-in function
Repository owner moved this from 🌻 In Progress to 🪴 Curation in Cardano Node Product Backlog Sep 28, 2022
@iquerejeta iquerejeta reopened this Sep 28, 2022
@iquerejeta
Copy link
Collaborator

Code already implemented in #252 , #258, #262 and #289. Still finalising some testing before closing this.

@vfrsilva vfrsilva moved this from 🪴 Curation to 🌻 In Progress in Cardano Node Product Backlog Sep 29, 2022
@iquerejeta
Copy link
Collaborator

Final PR being worked on #320 . Once that is merged, this item is done.

@iquerejeta iquerejeta moved this from 🌻 In Progress to 🌳 Done in Cardano Node Product Backlog Nov 4, 2022
@iquerejeta
Copy link
Collaborator

Closed in #320

Repository owner moved this from 🌳 Done to 🪴 Curation in Cardano Node Product Backlog Nov 7, 2022
@iquerejeta iquerejeta moved this from 🪴 Curation to ✂︎ Closed in Cardano Node Product Backlog Nov 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants