pic-protocol 0.2.0

PIC Protocol - Provenance Identity Continuity
Documentation
[package]
name = "pic-protocol"
edition = "2024"
version.workspace = true
description = "PIC Protocol - Provenance Identity Continuity"
license = "Apache-2.0"
repository = "https://github.com/pic-protocol/pic-rust"
documentation = "https://docs.rs/pic-protocol"
keywords = ["authorization", "security", "distributed-systems"]
categories = ["authentication", "cryptography"]

[lib]
name = "pic"

[features]
default = ["ed25519"]
# Crypto
ed25519 = ["pic-continuity/ed25519"]
p256 = ["pic-continuity/p256"]
p384 = ["pic-continuity/p384"]
crypto-full = ["ed25519", "p256", "p384"]
# Everything
full = ["crypto-full"]

[workspace]
members = ["crates/*"]

[workspace.package]
edition = "2024"
version = "0.2.0"
license = "Apache-2.0"
repository = "https://github.com/pic-protocol/pic-rust"

[workspace.dependencies]
# Serialization
serde = { version = "1", features = ["derive"] }
serde_json = "1"
ciborium = "0.2"
serde_bytes = "0.11"

# COSE
coset = "0.4"

# Error handling
thiserror = "2"

# Hashing and encoding
sha2 = "0.10"
base64 = "0.22"

# Crypto - Ed25519
ed25519-dalek = { version = "2", features = ["rand_core"] }
rand = "0.8"

# Crypto - NIST curves
p256 = { version = "0.13", features = ["ecdsa"] }
p384 = { version = "0.13", features = ["ecdsa"] }

[dependencies]
pic-continuity = "0.2.0"

[dev-dependencies]
# For the crate-level doctest (Ed25519 example).
ed25519-dalek.workspace = true
rand.workspace = true