[package]
edition = "2021"
rust-version = "1.88.0"
name = "anp"
version = "0.9.3"
build = false
exclude = ["target/*"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust SDK for Agent Network Protocol (ANP)"
homepage = "https://agent-network-protocol.com/"
documentation = "https://docs.rs/anp"
readme = "README.md"
keywords = [
"agent",
"anp",
"did",
"did-wba",
"authentication",
]
categories = [
"authentication",
"api-bindings",
"network-programming",
]
license = "MIT"
repository = "https://github.com/agent-network-protocol/AgentConnect"
[features]
default = [
"jwt-pem",
"mls",
"network",
]
jwt-pem = ["jsonwebtoken/use_pem"]
mls = [
"dep:fs2",
"dep:openmls",
"dep:openmls_basic_credential",
"dep:openmls_rust_crypto",
"dep:openmls_sqlite_storage",
"dep:openmls_traits",
"dep:rusqlite",
]
network = [
"dep:reqwest",
"dep:url",
]
[lib]
name = "anp"
path = "src/lib.rs"
[[example]]
name = "create_did_document"
path = "examples/create_did_document.rs"
[[example]]
name = "direct_e2ee_interop_cli"
path = "examples/direct_e2ee_interop_cli.rs"
[[example]]
name = "direct_e2ee_verify_fixture"
path = "examples/direct_e2ee_verify_fixture.rs"
[[example]]
name = "interop_cli"
path = "examples/interop_cli.rs"
[[example]]
name = "interop_server"
path = "examples/interop_server.rs"
[[example]]
name = "proof_example"
path = "examples/proof_example.rs"
[[example]]
name = "wns_example"
path = "examples/wns_example.rs"
[[test]]
name = "authentication_tests"
path = "tests/authentication_tests.rs"
[[test]]
name = "device_manifest_shared_fixtures"
path = "tests/device_manifest_shared_fixtures.rs"
[[test]]
name = "direct_e2ee_shared_vectors"
path = "tests/direct_e2ee_shared_vectors.rs"
[[test]]
name = "direct_e2ee_v2_wire_vectors"
path = "tests/direct_e2ee_v2_wire_vectors.rs"
[[test]]
name = "group_e2ee_typed_operations_tests"
path = "tests/group_e2ee_typed_operations_tests.rs"
[[test]]
name = "group_e2ee_v2_multi_device_mls"
path = "tests/group_e2ee_v2_multi_device_mls.rs"
[[test]]
name = "group_e2ee_v2_operations"
path = "tests/group_e2ee_v2_operations.rs"
[[test]]
name = "group_e2ee_v2_wire_vectors"
path = "tests/group_e2ee_v2_wire_vectors.rs"
[[test]]
name = "key_pem_tests"
path = "tests/key_pem_tests.rs"
[[test]]
name = "proof_tests"
path = "tests/proof_tests.rs"
[[test]]
name = "python_interop_tests"
path = "tests/python_interop_tests.rs"
[[test]]
name = "python_network_interop_tests"
path = "tests/python_network_interop_tests.rs"
required-features = ["network"]
[[test]]
name = "vnext_did_builder_shared_fixtures"
path = "tests/vnext_did_builder_shared_fixtures.rs"
[[test]]
name = "wns_tests"
path = "tests/wns_tests.rs"
required-features = ["network"]
[dependencies.base64]
version = "0.22"
[dependencies.bs58]
version = "0.5"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.ed25519-dalek]
version = "=2.1.1"
features = [
"rand_core",
"pkcs8",
"pem",
]
[dependencies.fs2]
version = "0.4"
optional = true
[dependencies.jsonwebtoken]
version = "9"
default-features = false
[dependencies.k256]
version = "0.13"
features = [
"ecdsa",
"arithmetic",
"pkcs8",
"pem",
]
[dependencies.num-bigint]
version = "0.4"
[dependencies.openmls]
version = "=0.8.0"
optional = true
[dependencies.openmls_basic_credential]
version = "0.5.0"
optional = true
[dependencies.openmls_rust_crypto]
version = "=0.5.0"
optional = true
[dependencies.openmls_sqlite_storage]
version = "0.2.0"
optional = true
[dependencies.openmls_traits]
version = "0.5.0"
optional = true
[dependencies.p256]
version = "0.13"
features = [
"ecdsa",
"arithmetic",
"pkcs8",
"pem",
]
[dependencies.percent-encoding]
version = "2.3"
[dependencies.pkcs8]
version = "0.10"
features = ["pem"]
[dependencies.rand]
version = "0.8"
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
optional = true
default-features = false
[dependencies.ring]
version = "0.17"
[dependencies.rusqlite]
version = "0.32"
features = ["bundled"]
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.serde_json_canonicalizer]
version = "0.3.2"
[dependencies.sha2]
version = "0.10"
[dependencies.spki]
version = "0.7"
features = ["pem"]
[dependencies.thiserror]
version = "1"
[dependencies.tiny_http]
version = "0.12"
[dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
]
[dependencies.url]
version = "2"
optional = true
[dependencies.x25519-dalek]
version = "2"
features = ["static_secrets"]
[dependencies.zeroize]
version = "1"