[package]
edition = "2021"
rust-version = "1.96"
name = "reallyme-crypto-dispatch"
version = "0.1.2"
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Algorithm dispatch, codec binding, and structural validation for cryptographic primitives."
readme = false
license = "Apache-2.0"
repository = "https://github.com/reallyme/crypto"
[features]
default = []
native = [
"crypto-ed25519/native",
"crypto-hmac/native",
"crypto-p256/native",
"crypto-p384/native",
"crypto-p521/native",
"crypto-secp256k1/native",
"crypto-x25519/native",
"crypto-ml-dsa-44/native",
"crypto-ml-dsa-65/native",
"crypto-ml-dsa-87/native",
"crypto-ml-kem-512/native",
"crypto-ml-kem-768/native",
"crypto-ml-kem-1024/native",
"crypto-aes256-gcm/native",
"crypto-aes256-gcm-siv/native",
"crypto-chacha20-poly1305/native",
"crypto-sha2/native",
"crypto-sha2-256/native",
"crypto-sha3/native",
"crypto-sha3-256/native",
"crypto-x-wing/native",
]
wasm = [
"crypto-ed25519/wasm",
"crypto-hmac/wasm",
"crypto-p256/wasm",
"crypto-p384/wasm",
"crypto-p521/wasm",
"crypto-secp256k1/wasm",
"crypto-x25519/wasm",
"crypto-ml-dsa-44/wasm",
"crypto-ml-dsa-65/wasm",
"crypto-ml-dsa-87/wasm",
"crypto-ml-kem-512/wasm",
"crypto-ml-kem-768/wasm",
"crypto-ml-kem-1024/wasm",
"crypto-aes256-gcm/wasm",
"crypto-aes256-gcm-siv/wasm",
"crypto-chacha20-poly1305/wasm",
"crypto-sha2/wasm",
"crypto-sha2-256/wasm",
"crypto-sha3/wasm",
"crypto-sha3-256/wasm",
"crypto-x-wing/wasm",
]
[lib]
name = "crypto_dispatch"
path = "src/lib.rs"
[[test]]
name = "aead_dispatch_runtime_lane_tests"
path = "tests/aead_dispatch_runtime_lane_tests.rs"
[[test]]
name = "aead_dispatch_tests"
path = "tests/aead_dispatch_tests.rs"
[[test]]
name = "dispatch_boundary_tests"
path = "tests/dispatch_boundary_tests.rs"
[[test]]
name = "dispatch_integration_tests"
path = "tests/dispatch_integration_tests.rs"
[[test]]
name = "feature_lane_tests"
path = "tests/feature_lane_tests.rs"
[[test]]
name = "hash_dispatch_tests"
path = "tests/hash_dispatch_tests.rs"
[[test]]
name = "hash_dispatch_wasm_runtime_tests"
path = "tests/hash_dispatch_wasm_runtime_tests.rs"
[[test]]
name = "mac_dispatch_tests"
path = "tests/mac_dispatch_tests.rs"
[[test]]
name = "multikey_tests"
path = "tests/multikey_tests.rs"
[[test]]
name = "validation_tests"
path = "tests/validation_tests.rs"
[dependencies.codec-multikey]
version = "0.1.1"
package = "reallyme-codec-multikey"
[dependencies.crypto-aes256-gcm]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-aes256-gcm"
[dependencies.crypto-aes256-gcm-siv]
version = "0.1.1"
default-features = false
package = "reallyme-crypto-aes256-gcm-siv"
[dependencies.crypto-chacha20-poly1305]
version = "0.1.1"
default-features = false
package = "reallyme-crypto-chacha20-poly1305"
[dependencies.crypto-core]
version = "0.1.2"
package = "reallyme-crypto-core"
[dependencies.crypto-ed25519]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-ed25519"
[dependencies.crypto-hmac]
version = "0.1.1"
default-features = false
package = "reallyme-crypto-hmac"
[dependencies.crypto-ml-dsa-44]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-ml-dsa-44"
[dependencies.crypto-ml-dsa-65]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-ml-dsa-65"
[dependencies.crypto-ml-dsa-87]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-ml-dsa-87"
[dependencies.crypto-ml-kem-1024]
version = "0.1.3"
default-features = false
package = "reallyme-crypto-ml-kem-1024"
[dependencies.crypto-ml-kem-512]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-ml-kem-512"
[dependencies.crypto-ml-kem-768]
version = "0.1.3"
default-features = false
package = "reallyme-crypto-ml-kem-768"
[dependencies.crypto-p256]
version = "0.1.3"
default-features = false
package = "reallyme-crypto-p256"
[dependencies.crypto-p384]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-p384"
[dependencies.crypto-p521]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-p521"
[dependencies.crypto-secp256k1]
version = "0.1.3"
default-features = false
package = "reallyme-crypto-secp256k1"
[dependencies.crypto-sha2]
version = "0.1.1"
default-features = false
package = "reallyme-crypto-sha2"
[dependencies.crypto-sha2-256]
version = "0.1.1"
default-features = false
package = "reallyme-crypto-sha2-256"
[dependencies.crypto-sha3]
version = "0.1.1"
default-features = false
package = "reallyme-crypto-sha3"
[dependencies.crypto-sha3-256]
version = "0.1.1"
default-features = false
package = "reallyme-crypto-sha3-256"
[dependencies.crypto-x-wing]
version = "0.1.1"
default-features = false
package = "reallyme-crypto-x-wing"
[dependencies.crypto-x25519]
version = "0.1.2"
default-features = false
package = "reallyme-crypto-x25519"
[dependencies.thiserror]
version = "2.0"
[dependencies.zeroize]
version = "1.9"
[dev-dependencies.hex]
version = "0.4"
[dev-dependencies.wasm-bindgen-test]
version = "0.3"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.aes-gcm]
version = "0.11"
[lints.clippy]
dbg_macro = "deny"
expect_used = "deny"
large_include_file = "deny"
panic = "deny"
print_stderr = "deny"
print_stdout = "deny"
todo = "deny"
unimplemented = "deny"
unreachable = "deny"
unwrap_used = "deny"
wildcard_imports = "deny"
[lints.rust]
missing_docs = "warn"
unsafe_code = "deny"