edwards25519

package module
v0.0.0-...-38697fd Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 9, 2022 License: MIT Imports: 5 Imported by: 0

README

Edwards25519 hash-to-curve

edwards25519 Go Reference codecov

  import "github.com/bytemare/edwards25519"

This package extends filippo.io/edwards25519 to support hash-to-curve according to the specification.

Documentation Go Reference

You can find the documentation and usage examples in the package doc and the project wiki .

Versioning

SemVer is used for versioning. For the versions available, see the tags on the repository.

Contributing

Please read CONTRIBUTING.md for details on the code of conduct, and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Documentation

Overview

Package edwards25519 extends filippo.io/edwards25519 to support hash-to-curve according to the specification.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AffineToEdwards

func AffineToEdwards(x, y *field.Element) *edwards25519.Point

AffineToEdwards takes the affine coordinates of an Edwards25519 and returns a pointer to Point represented in extended projective coordinates.

func Elligator2Montgomery

func Elligator2Montgomery(e *field.Element) (x, y *field.Element)

Elligator2Montgomery implements the Elligator2 mapping to Curve25519.

func EncodeToEdwards25519

func EncodeToEdwards25519(input, dst []byte) *edwards25519.Point

EncodeToEdwards25519 implements encode-to-curve mapping to Edwards25519 of input with dst.

func HashToEdwards25519

func HashToEdwards25519(input, dst []byte) *edwards25519.Point

HashToEdwards25519 implements hash-to-curve mapping to Edwards25519 of input with dst.

func HashToEdwards25519Field

func HashToEdwards25519Field(input, dst []byte) *edwards25519.Scalar

HashToEdwards25519Field implements hash-to-scalar mapping.

func MapToEdwards

func MapToEdwards(e *field.Element) *edwards25519.Point

MapToEdwards maps the field element to a point on Edwards25519.

func MontgomeryToEdwards

func MontgomeryToEdwards(u, v *field.Element) (x, y *field.Element)

MontgomeryToEdwards lifts a Curve25519 point to its Edwards25519 equivalent.

func MontgomeryUToEdwardsY

func MontgomeryUToEdwardsY(u *field.Element) *field.Element

MontgomeryUToEdwardsY transforms a Curve25519 x (or u) coordinate to an Edwards25519 y coordinate.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL