k256 0.13.4

secp256k1 elliptic curve library written in pure Rust with support for ECDSA signing/verification/public-key recovery, Taproot Schnorr signatures (BIP340), Elliptic Curve Diffie-Hellman (ECDH), and general-purpose secp256k1 elliptic curve group operations which can be used to implement arbitrary protocols
Documentation
[[bench]]
harness = false
name = "ecdsa"
path = "benches/ecdsa.rs"
required-features = ["ecdsa", "sha256"]

[[bench]]
harness = false
name = "field"
path = "benches/field.rs"
required-features = ["expose-field"]

[[bench]]
harness = false
name = "scalar"
path = "benches/scalar.rs"

[dependencies.cfg-if]
version = "1.0"

[dependencies.ecdsa-core]
default-features = false
features = ["der"]
optional = true
package = "ecdsa"
version = "0.16.8"

[dependencies.elliptic-curve]
default-features = false
features = ["hazmat", "sec1"]
version = "0.13.8"

[dependencies.hex-literal]
optional = true
version = "0.4"

[dependencies.once_cell]
default-features = false
optional = true
version = "1.19"

[dependencies.serdect]
default-features = false
optional = true
version = "0.2"

[dependencies.sha2]
default-features = false
optional = true
version = "0.10"

[dependencies.signature]
optional = true
version = "2"

[dev-dependencies.blobby]
version = "0.3"

[dev-dependencies.criterion]
version = "0.5"

[dev-dependencies.ecdsa-core]
default-features = false
features = ["dev"]
package = "ecdsa"
version = "0.16"

[dev-dependencies.hex-literal]
version = "0.4"

[dev-dependencies.num-bigint]
version = "0.4"

[dev-dependencies.num-traits]
version = "0.2"

[dev-dependencies.proptest]
version = "1.4"

[dev-dependencies.rand_core]
features = ["getrandom"]
version = "0.6"

[dev-dependencies.sha3]
default-features = false
version = "0.10"

[features]
alloc = ["ecdsa-core?/alloc", "elliptic-curve/alloc"]
arithmetic = ["elliptic-curve/arithmetic"]
bits = ["arithmetic", "elliptic-curve/bits"]
critical-section = ["once_cell/critical-section", "precomputed-tables"]
default = ["arithmetic", "ecdsa", "pkcs8", "precomputed-tables", "schnorr", "std"]
digest = ["ecdsa-core/digest", "ecdsa-core/hazmat"]
ecdh = ["arithmetic", "elliptic-curve/ecdh"]
ecdsa = ["arithmetic", "ecdsa-core/signing", "ecdsa-core/verifying", "sha256"]
expose-field = ["arithmetic"]
hash2curve = ["arithmetic", "elliptic-curve/hash2curve"]
jwk = ["elliptic-curve/jwk"]
pem = ["ecdsa-core/pem", "elliptic-curve/pem", "pkcs8"]
pkcs8 = ["ecdsa-core/pkcs8", "elliptic-curve/pkcs8"]
precomputed-tables = ["arithmetic", "once_cell"]
schnorr = ["arithmetic", "sha256", "signature"]
serde = ["ecdsa-core/serde", "elliptic-curve/serde", "serdect"]
sha256 = ["digest", "sha2"]
std = ["alloc", "ecdsa-core?/std", "elliptic-curve/std", "once_cell?/std"]
test-vectors = ["hex-literal"]

[lib]
name = "k256"
path = "src/lib.rs"

[package]
authors = ["RustCrypto Developers"]
autobenches = false
autobins = false
autoexamples = false
autotests = false
build = false
categories = ["cryptography", "cryptography::cryptocurrencies", "no-std"]
description = """
secp256k1 elliptic curve library written in pure Rust with support for ECDSA
signing/verification/public-key recovery, Taproot Schnorr signatures (BIP340),
Elliptic Curve Diffie-Hellman (ECDH), and general-purpose secp256k1 elliptic
curve group operations which can be used to implement arbitrary protocols
"""
documentation = "https://docs.rs/k256"
edition = "2021"
keywords = ["bitcoin", "crypto", "ecc", "ethereum", "secp256k1"]
license = "Apache-2.0 OR MIT"
name = "k256"
readme = "README.md"
repository = "https://github.com/RustCrypto/elliptic-curves/tree/master/k256"
rust-version = "1.65"
version = "0.13.4"

[package.metadata.docs.rs]
features = ["ecdh", "ecdsa", "schnorr"]
rustdoc-args = ["--cfg", "docsrs"]