-
Notifications
You must be signed in to change notification settings - Fork 111
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
ECDSA usage overview #785
ECDSA usage overview #785
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
1 Ignored Deployment
|
If a zkApp developer wanted to verify an Ethereum transaction and make a statement about it, they would need to be able to verify the signature of the transaction. This is why ECDSA is important for zkApps. | ||
To interact with other blockchains and verify data from the outside world, o1js needs to be able to verify signatures. | ||
ECDSA is a widely used algorithm that is supported by many libraries and tools. For example, Ethereum transactions are signed using ECDSA over the secp256k1 curve. | ||
As a zkApp developer, when you want to verify an Ethereum transaction and make a statement about it, you must be able to verify the signature of the transaction which is why ECDSA is important for zkApps. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same style edits as Keccak, conforming to docs style guide and how we talk directly to our devs https://github.com/o1-labs/docs2/wiki/Docs-Style-Guide
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
excellent context and explanations for getting devs up to speed with ECDSA.
Edits for docs style to conform with how we directly talk to our developers. A few questions for you @Trivo25
|
||
The namespace `Crypto.CurveParams` exports a few pre-defined curves, such as `Pallas`, `Vesta` and `Secp256k1`. | ||
The namespace `Crypto.CurveParams` exports predefined curves, such as `Pallas`, `Vesta`, and `Secp256k1`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Trivo25 line 46 says that o1js exports a set of predefined curves (is that automagic by default? or we need to include this code?
here we specify that it's the namespace that exports them... same? do we need both mentions?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's exported under the Crypto
namespace and accessible as Crypto.CurveParams
if thats what you mean
Co-authored-by: Gregor Mitscha-Baude <gregor.mitscha-baude@gmx.at>
…ocs2 into feature/ecdsa-overview
https://docs2-git-feature-ecdsa-overview-minadocs.vercel.app/zkapps/o1js/ecdsa Adds an overview of how to use ECDSA.
There will be a separate in-depth tutorial that demonstrates how to use ECDSA and Keccak to verify Ethereum data.