mirror of
https://github.com/saymrwulf/curve25519-dalek-source.git
synced 2026-09-09 21:10:44 +00:00
Merge branch 'release/2.1.0'
This commit is contained in:
commit
c4824e1384
7 changed files with 15 additions and 6 deletions
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
Entries are listed in reverse chronological order.
|
Entries are listed in reverse chronological order.
|
||||||
|
|
||||||
|
## 2.1.0
|
||||||
|
|
||||||
|
* Make `Scalar::from_bits` a `const fn`, allowing its use in `const` contexts.
|
||||||
|
|
||||||
## 2.0.0
|
## 2.0.0
|
||||||
|
|
||||||
* Fix a data modeling error in the `serde` feature pointed out by Trevor Perrin
|
* Fix a data modeling error in the `serde` feature pointed out by Trevor Perrin
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,10 @@
|
||||||
[package]
|
[package]
|
||||||
name = "curve25519-dalek"
|
name = "curve25519-dalek"
|
||||||
version = "2.0.0"
|
# Before incrementing:
|
||||||
|
# - update CHANGELOG
|
||||||
|
# - update html_root_url
|
||||||
|
# - update README if required by semver
|
||||||
|
version = "2.1.0"
|
||||||
authors = ["Isis Lovecruft <isis@patternsinthevoid.net>",
|
authors = ["Isis Lovecruft <isis@patternsinthevoid.net>",
|
||||||
"Henry de Valence <hdevalence@hdevalence.ca>"]
|
"Henry de Valence <hdevalence@hdevalence.ca>"]
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
|
|
@ -28,7 +32,7 @@ travis-ci = { repository = "dalek-cryptography/curve25519-dalek", branch = "mast
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
sha2 = { version = "0.8", default-features = false }
|
sha2 = { version = "0.8", default-features = false }
|
||||||
bincode = "1"
|
bincode = "1"
|
||||||
criterion = "0.2"
|
criterion = "0.3.0"
|
||||||
rand = "0.7"
|
rand = "0.7"
|
||||||
|
|
||||||
[[bench]]
|
[[bench]]
|
||||||
|
|
|
||||||
|
|
@ -150,7 +150,7 @@ use backend::vector::scalar_mul;
|
||||||
///
|
///
|
||||||
/// The first 255 bits of a `CompressedEdwardsY` represent the
|
/// The first 255 bits of a `CompressedEdwardsY` represent the
|
||||||
/// \\(y\\)-coordinate. The high bit of the 32nd byte gives the sign of \\(x\\).
|
/// \\(y\\)-coordinate. The high bit of the 32nd byte gives the sign of \\(x\\).
|
||||||
#[derive(Copy, Clone, Eq, PartialEq)]
|
#[derive(Copy, Clone, Eq, PartialEq, Hash)]
|
||||||
pub struct CompressedEdwardsY(pub [u8; 32]);
|
pub struct CompressedEdwardsY(pub [u8; 32]);
|
||||||
|
|
||||||
impl ConstantTimeEq for CompressedEdwardsY {
|
impl ConstantTimeEq for CompressedEdwardsY {
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@
|
||||||
|
|
||||||
#![cfg_attr(feature = "nightly", doc(include = "../README.md"))]
|
#![cfg_attr(feature = "nightly", doc(include = "../README.md"))]
|
||||||
#![doc(html_logo_url = "https://doc.dalek.rs/assets/dalek-logo-clear.png")]
|
#![doc(html_logo_url = "https://doc.dalek.rs/assets/dalek-logo-clear.png")]
|
||||||
|
#![doc(html_root_url = "https://docs.rs/curve25519-dalek/2.1.0")]
|
||||||
|
|
||||||
//! Note that docs will only build on nightly Rust until
|
//! Note that docs will only build on nightly Rust until
|
||||||
//! [RFC 1990 stabilizes](https://github.com/rust-lang/rust/issues/44732).
|
//! [RFC 1990 stabilizes](https://github.com/rust-lang/rust/issues/44732).
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ use zeroize::Zeroize;
|
||||||
|
|
||||||
/// Holds the \\(u\\)-coordinate of a point on the Montgomery form of
|
/// Holds the \\(u\\)-coordinate of a point on the Montgomery form of
|
||||||
/// Curve25519 or its twist.
|
/// Curve25519 or its twist.
|
||||||
#[derive(Copy, Clone, Debug)]
|
#[derive(Copy, Clone, Debug, Hash)]
|
||||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||||
pub struct MontgomeryPoint(pub [u8; 32]);
|
pub struct MontgomeryPoint(pub [u8; 32]);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -208,7 +208,7 @@ use backend::vector::scalar_mul;
|
||||||
///
|
///
|
||||||
/// The Ristretto encoding is canonical, so two points are equal if and
|
/// The Ristretto encoding is canonical, so two points are equal if and
|
||||||
/// only if their encodings are equal.
|
/// only if their encodings are equal.
|
||||||
#[derive(Copy, Clone, Eq, PartialEq)]
|
#[derive(Copy, Clone, Eq, PartialEq, Hash)]
|
||||||
pub struct CompressedRistretto(pub [u8; 32]);
|
pub struct CompressedRistretto(pub [u8; 32]);
|
||||||
|
|
||||||
impl ConstantTimeEq for CompressedRistretto {
|
impl ConstantTimeEq for CompressedRistretto {
|
||||||
|
|
|
||||||
|
|
@ -182,7 +182,7 @@ type UnpackedScalar = backend::serial::u32::scalar::Scalar29;
|
||||||
|
|
||||||
/// The `Scalar` struct holds an integer \\(s < 2\^{255} \\) which
|
/// The `Scalar` struct holds an integer \\(s < 2\^{255} \\) which
|
||||||
/// represents an element of \\(\mathbb Z / \ell\\).
|
/// represents an element of \\(\mathbb Z / \ell\\).
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone, Hash)]
|
||||||
pub struct Scalar {
|
pub struct Scalar {
|
||||||
/// `bytes` is a little-endian byte encoding of an integer representing a scalar modulo the
|
/// `bytes` is a little-endian byte encoding of an integer representing a scalar modulo the
|
||||||
/// group order.
|
/// group order.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue