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

docs: update documentation for ecdsa and eddsa #1113

Merged
merged 1 commit into from
Apr 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions std/signature/ecdsa/doc.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// Package ecdsa implements ECDSA signature verification over any elliptic curve.
//
// The package depends on the [emulated/sw_emulated] package for elliptic curve
// group operations using non-native arithmetic. Thus we can verify ECDSA
// signatures over any curve. The cost for a single secp256k1 signature
// verification in a BN254-SNARK is approximately 122k constraints in R1CS and
// 453k constraints in PLONKish.
//
// See [ECDSA] for the signature verification algorithm.
//
// [ECDSA]:
// https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm
package ecdsa
13 changes: 0 additions & 13 deletions std/signature/ecdsa/ecdsa.go
Original file line number Diff line number Diff line change
@@ -1,16 +1,3 @@
/*
Package ecdsa implements ECDSA signature verification over any elliptic curve.

The package depends on the [emulated/sw_emulated] package for elliptic curve group
operations using non-native arithmetic. Thus we can verify ECDSA signatures over
any curve. The cost for a single secp256k1 signature verification is
approximately 4M constraints in R1CS and 10M constraints in PLONKish.

See [ECDSA] for the signature verification algorithm.

[ECDSA]:
https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm
*/
package ecdsa

import (
Expand Down
15 changes: 15 additions & 0 deletions std/signature/eddsa/doc.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Package eddsa implements EdDSA signature verification over twisted Edwards
// elliptic curves available in gnark and gnark-crypto. These are the so-called
// "embedded curves" (e.g. Baby-Jubjub, Bandersnatch...) defined over the scalar
// field of the pairing-friendly SNARK curves (e.g. BN254, BLS12-381...)
//
// The package depends on the [native/twistededwards] package for elliptic
// curve group operations in twisted Edwards form using native arithmetic. The
// cost for a single baby-jubjub signature verification in a BN254-SNARK is
// approximately 7k constraints in R1CS and 11k constraints in PLONKish.
//
// See [EdDSA] for the signature verification algorithm.
//
// [EdDSA]:
// https://en.wikipedia.org/wiki/EdDSA
package eddsa
17 changes: 0 additions & 17 deletions std/signature/eddsa/eddsa.go
Original file line number Diff line number Diff line change
@@ -1,20 +1,3 @@
/*
Copyright © 2020 ConsenSys

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

// Package eddsa provides a ZKP-circuit function to verify a EdDSA signature.
package eddsa

import (
Expand Down
Loading