curve25519-dalek-source/x25519-dalek/Cargo.toml
Tony Arcieri 23d0d2cec0
Bump rand_core from v0.9 to v0.10.0-rc-2 (#842)
Prior to a final stable release of the @RustCrypto dependencies used by
the dalek crates, we are going to target `rand_core` v0.10.

This updates the `rand` and `rand_core` dependencies as well as the
aforementioned @RustCrypto dependencies to be compatible with
`rand_core` v0.10, which incurred a few API changes:

- `rand_core` no longer includes `OsRng`, so this replaces the `os_rng`
  features with `getrandom` features (same thing we did for @RustCrypto)
  which uses the `getrandom` crate directly
- For `dev-dependencies` it just migrates straight to `rand`, replacing
  `rand_chacha` with the `chacha` feature of `rand` (which pulls in
  `chacha20`), and sourcing `OsRng` from `rand`, its new home (for now)

This PR also switches to using the `rustcrypto-ff`/`rustcrypto-group` crates
(hopefully temporary) which are forks of `ff` and `group` which have crate
releases that have been updated to use  `rand_core` v0.10.0 prereleases.
2025-11-22 10:37:51 -07:00

70 lines
2.1 KiB
TOML

[package]
name = "x25519-dalek"
edition = "2024"
# Before changing this:
# - update version in README.md
# - update html_root_url
# - update CHANGELOG
# - if any changes were made to README.md, mirror them in src/lib.rs docs
version = "3.0.0-pre.1"
authors = [
"Isis Lovecruft <isis@patternsinthevoid.net>",
"DebugSteven <debugsteven@gmail.com>",
"Henry de Valence <hdevalence@hdevalence.ca>",
]
readme = "README.md"
license = "BSD-3-Clause"
repository = "https://github.com/dalek-cryptography/curve25519-dalek/tree/main/x25519-dalek"
homepage = "https://github.com/dalek-cryptography/curve25519-dalek"
documentation = "https://docs.rs/x25519-dalek"
categories = ["cryptography", "no-std"]
keywords = [
"cryptography",
"curve25519",
"key-exchange",
"x25519",
"diffie-hellman",
]
description = "X25519 elliptic curve Diffie-Hellman key exchange in pure-Rust, using curve25519-dalek."
exclude = [".gitignore", ".travis.yml", "CONTRIBUTING.md"]
rust-version = "1.85"
[badges]
travis-ci = { repository = "dalek-cryptography/x25519-dalek", branch = "master" }
[package.metadata.docs.rs]
rustdoc-args = [
"--html-in-header",
"docs/assets/rustdoc-include-katex-header.html",
"--cfg",
"docsrs",
]
features = ["reusable_secrets", "serde", "static_secrets"]
[dependencies]
curve25519-dalek = { version = "=5.0.0-pre.1", default-features = false }
rand_core = { version = "0.10.0-rc-2", default-features = false }
# optional dependencies
getrandom = { version = "0.3", optional = true }
serde = { version = "1", default-features = false, optional = true, features = ["derive"] }
zeroize = { version = "1", default-features = false, optional = true }
[dev-dependencies]
bincode = "1"
criterion = "0.5"
rand = "0.10.0-rc.5"
[[bench]]
name = "x25519"
harness = false
[features]
default = ["alloc", "precomputed-tables", "zeroize"]
getrandom = ["dep:getrandom"]
zeroize = ["dep:zeroize", "curve25519-dalek/zeroize"]
serde = ["dep:serde", "curve25519-dalek/serde"]
alloc = ["curve25519-dalek/alloc", "serde?/alloc", "zeroize?/alloc"]
precomputed-tables = ["curve25519-dalek/precomputed-tables"]
reusable_secrets = []
static_secrets = []