golang / go

The Go programming language
https://go.dev
BSD 3-Clause "New" or "Revised" License
123.32k stars 17.58k forks source link

crypto/ed25519: add Secure Elliptic Curve Cryptography #47112

Open xformerfhs opened 3 years ago

xformerfhs commented 3 years ago

Go implements elliptic curve cryptography in the "crypto/elliptic" package. However, this package only implements the NIST curves P-224, P-256, P-384 and P-521. All of these curves are have weaknesses.

There is an implementation of the secure elliptic curve "25519" in the package "crypto/ed25519". However, this implementation only supports signing and not encryption and decryption.

It should be possible to add at least Curve25519 for ECC encryption and decryption and I suggest to implement it.

mknyszek commented 3 years ago

CC @FiloSottile via https://dev.golang.org/owners