[dependencies.argon2]
optional = true
version = "0.5"
[dependencies.async-trait]
version = "0.1"
[dependencies.base32]
version = "0.5"
[dependencies.base64]
version = "0.22"
[dependencies.bcrypt]
optional = true
version = "0.17"
[dependencies.chrono]
features = ["serde"]
version = "0.4"
[dependencies.getrandom]
version = "0.3"
[dependencies.hmac]
version = "0.12"
[dependencies.jsonwebtoken]
default-features = false
features = ["rust_crypto", "use_pem"]
optional = true
version = "10"
[dependencies.password-hash]
version = "0.5"
[dependencies.rand]
version = "0.9.2"
[dependencies.scrypt]
optional = true
version = "0.11"
[dependencies.serde]
features = ["derive"]
version = "1.0"
[dependencies.serde_json]
version = "1.0"
[dependencies.sha1]
optional = true
version = "0.10"
[dependencies.sha2]
version = "0.10"
[dependencies.subtle]
version = "2.6"
[dependencies.thiserror]
version = "2"
[dependencies.url]
optional = true
version = "2.5"
[dependencies.urlencoding]
version = "2.1"
[dependencies.webauthn-rs]
features = ["danger-allow-state-serialisation"]
optional = true
version = "0.5"
[dev-dependencies.tokio]
features = ["full", "test-util"]
version = "1"
[features]
api-key = []
argon2 = ["dep:argon2"]
bcrypt = ["dep:bcrypt"]
crypto = []
default = ["argon2", "jwt", "mfa"]
enhanced = ["api-key", "argon2", "crypto", "jwt", "mfa", "oauth", "passwordless", "rbac", "webauthn"]
full = ["api-key", "argon2", "bcrypt", "crypto", "jwt", "mfa", "oauth", "passwordless", "rbac", "scrypt", "webauthn"]
jwt = ["dep:jsonwebtoken"]
mfa = ["dep:sha1"]
oauth = []
passwordless = []
rbac = []
scrypt = ["dep:scrypt"]
webauthn = ["dep:url", "dep:webauthn-rs"]
[lib]
doctest = true
name = "authrs"
path = "src/lib.rs"
[package]
authors = ["LioRael <lioraeldev@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["authentication", "cryptography"]
description = "A comprehensive authentication library for Rust"
documentation = "https://docs.rs/authrs"
edition = "2024"
exclude = ["benches/", "examples/", "tests/"]
keywords = ["auth", "authentication", "jwt", "password", "security"]
license = "MIT"
name = "authrs"
readme = "README.md"
repository = "https://github.com/LioRael/authrs"
version = "0.1.2"