-
Notifications
You must be signed in to change notification settings - Fork 205
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
Add ECDSA #125
base: master
Are you sure you want to change the base?
Add ECDSA #125
Conversation
@@ -67,6 +67,7 @@ decred-tx, ipld, 0xe1, Decred Tx | |||
ipld-ns, namespace, 0xe2, IPLD path | |||
ipfs-ns, namespace, 0xe3, IPFS path | |||
swarm-ns, namespace, 0xe4, Swarm path | |||
ECDSA, multihash, 0xec, ECDSA signature |
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.
This wouldn't be a multihash, it would be a signature. So we're on the same page, how are you planning on using this codec to identify ECDSA signatures?
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.
do we have plans on doing a “multisign” at some point?
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.
We do but it's unclear how this should look. The signature algorithm is usually a property of the key, not the signature, and libp2p actually has an ECDSA key type.
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.
I'm working on clojure implementation of multisig and multikey.
Multikey is for expressing public keys and would look like this: algo+length+x509encodedKey
Where algo
is ecdsa, rsa, or other, length
is length of x509encodedKey
.
Multisig is for expressing signatures and would look like this: algo+length+signatureBytes
Where algo
could be sha256-with-ecdsa
.
Unlike with multihashes, it would not be possible to compare payloads for equality (as signature may be different for the same data each time the signature is calculated), but having a public key it would still be possible to verify the signature.
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.
IMO, ECDSA is a bit too generic. For example, how do you distinguish between secp256k1 and r1?
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.
Do you still need curve params if you have x509encodedKey as part of multikey?
Elliptic Curve Digital Signature Algorithm or ECDSA is a cryptographic algorithm used by many most?) blockchains to sign data.
Would love to use multicodec for my work with the BSV blockchain so please have a look at toe one line PR.