78 lines
2.9 KiB
TOML
78 lines
2.9 KiB
TOML
[package]
|
|
name = "secp256k1"
|
|
version = "0.26.0"
|
|
authors = [ "Dawid Ciężarkiewicz <dpc@ucore.info>",
|
|
"Andrew Poelstra <apoelstra@wpsoftware.net>" ]
|
|
license = "CC0-1.0"
|
|
homepage = "https://github.com/rust-bitcoin/rust-secp256k1/"
|
|
repository = "https://github.com/rust-bitcoin/rust-secp256k1/"
|
|
documentation = "https://docs.rs/secp256k1/"
|
|
description = "Rust wrapper library for Pieter Wuille's `libsecp256k1`. Implements ECDSA and BIP 340 signatures for the SECG elliptic curve group secp256k1 and related utilities."
|
|
keywords = [ "crypto", "ECDSA", "secp256k1", "libsecp256k1", "bitcoin" ]
|
|
readme = "README.md"
|
|
edition = "2018"
|
|
|
|
# Should make docs.rs show all functions, even those behind non-default features
|
|
[package.metadata.docs.rs]
|
|
features = [ "rand", "rand-std", "serde", "bitcoin_hashes", "recovery", "global-context" ]
|
|
rustdoc-args = ["--cfg", "docsrs"]
|
|
|
|
[features]
|
|
default = ["std"]
|
|
std = ["alloc", "secp256k1-sys/std"]
|
|
# allow use of Secp256k1::new and related API that requires an allocator
|
|
alloc = ["secp256k1-sys/alloc"]
|
|
bitcoin-hashes = ["bitcoin_hashes"] # Feature alias because of the underscore.
|
|
bitcoin-hashes-std = ["std", "bitcoin_hashes/std"]
|
|
rand-std = ["std", "rand/std", "rand/std_rng"]
|
|
recovery = ["secp256k1-sys/recovery"]
|
|
lowmemory = ["secp256k1-sys/lowmemory"]
|
|
global-context = ["std"]
|
|
# disable re-randomization of the global context, which provides some
|
|
# defense-in-depth against sidechannel attacks. You should only use
|
|
# this feature if you expect the `rand` crate's thread_rng to panic.
|
|
# (If you are sure the `rand-std` feature will not be enabled, e.g.
|
|
# if you are doing a no-std build, then this feature does nothing
|
|
# and is not necessary.)
|
|
global-context-less-secure = ["global-context"]
|
|
|
|
[dependencies]
|
|
secp256k1-sys = { version = "0.8.0", default-features = false, path = "./secp256k1-sys" }
|
|
serde = { version = "1.0", default-features = false, optional = true }
|
|
|
|
# You likely only want to enable these if you explicitly do not want to use "std", otherwise enable
|
|
# the respective -std feature e.g., bitcoin-hashes-std
|
|
bitcoin_hashes = { version = "0.11", default-features = false, optional = true }
|
|
rand = { version = "0.8", default-features = false, optional = true }
|
|
|
|
[dev-dependencies]
|
|
rand_core = "0.6"
|
|
serde_test = "1.0"
|
|
bincode = "1.3.3"
|
|
|
|
# cbor does not build on WASM, we use it in a single trivial test (an example of when
|
|
# fixed-width-serde breaks down). Just run the test when on an x86_64 machine.
|
|
[target.'cfg(target_arch = "x86_64")'.dev-dependencies]
|
|
cbor = "0.4.1"
|
|
|
|
[target.wasm32-unknown-unknown.dev-dependencies]
|
|
wasm-bindgen-test = "0.3"
|
|
getrandom = { version = "0.2", features = ["js"] }
|
|
|
|
|
|
[[example]]
|
|
name = "sign_verify_recovery"
|
|
required-features = ["recovery", "bitcoin-hashes-std"]
|
|
|
|
[[example]]
|
|
name = "sign_verify"
|
|
required-features = ["bitcoin-hashes-std"]
|
|
|
|
[[example]]
|
|
name = "generate_keys"
|
|
required-features = ["rand-std"]
|
|
|
|
[workspace]
|
|
members = ["secp256k1-sys"]
|
|
exclude = ["no_std_test"]
|