
Implémentation Go de bas niveau de la courbe elliptique edwards25519, fournissant des API pour construire des primitives cryptographiques de plus haut niveau comme les signatures et Diffie-Hellman.
import "filippo.io/edwards25519"
Cette bibliothèque implémente la courbe elliptique edwards25519, exposant les API nécessaires pour construire une large gamme de primitives de haut niveau. Lisez la documentation sur pkg.go.dev/filippo.io/edwards25519.
Le paquet suit le paquet amont de la bibliothèque standard crypto/internal/fips140/edwards25519 et l'étend avec des fonctionnalités supplémentaires.
Le code est à l'origine dérivé de l'implémentation interne d'Adam Langley dans la bibliothèque standard Go, et inclut les améliorations de performances de George Tankersley. Il a ensuite été développé par Henry de Valence pour une utilisation dans ristretto255, et a finalement été fusionné dans la bibliothèque standard Go à partir de Go 1.17.
La plupart des utilisateurs n'ont pas besoin de ce paquet et devraient plutôt utiliser crypto/ed25519 pour les signatures, crypto/ecdh pour Diffie-Hellman, ou github.com/gtank/ristretto255 pour la logique de groupe d'ordre premier.
Cependant, pour quiconque utilise actuellement un fork du paquet interne edwards25519 ou de github.com/agl/edwards25519, ce paquet devrait être une alternative plus sûre, plus rapide et plus puissante.
Étant donné que ce paquet vise à freiner la prolifération des implémentations d'edwards25519 dans l'écosystème Go, il accueille favorablement les demandes de nouvelles API ou d'améliorations de performances révisables.