[package] name = "authenticator-ctap2-2021" version = "0.3.2-dev.1" authors = ["J.C. Jones ", "Tim Taubert ", "Kyle Machulis "] keywords = ["ctap2", "u2f", "fido", "webauthn"] categories = ["cryptography", "hardware-support", "os"] repository = "https://github.com/mozilla/authenticator-rs/" license = "MPL-2.0" description = "Library for interacting with CTAP1/2 security keys for Web Authentication. Used by Firefox." edition = "2018" [badges] travis-ci = { repository = "mozilla/authenticator-rs", branch = "master" } maintenance = { status = "actively-developed" } [features] default = ["crypto_openssl"] binding-recompile = ["bindgen"] webdriver = ["bytes", "warp", "tokio"] # Crypto backends # NOTE: These are mutually exclusive, but cargo does not support that. # Selecting more than one will result in a compilation error! # Default: NSS crypto_dummy = [] crypto_ring = ["ring"] crypto_openssl = ["openssl", "openssl-sys"] # crypto_nss = ["nss", "nss_sys", "rc_crypto"] crypto_nss = [] [target.'cfg(target_os = "linux")'.dependencies] libudev = "^0.2" [target.'cfg(target_os = "freebsd")'.dependencies] devd-rs = "0.3" [target.'cfg(target_os = "macos")'.dependencies] core-foundation = "0.9" [target.'cfg(target_os = "windows")'.dependencies] memoffset = "0.6" [target.'cfg(target_os = "windows")'.dependencies.winapi] version = "^0.3" features = [ "handleapi", "hidclass", "hidpi", "hidusage", "setupapi", ] [build-dependencies] bindgen = { version = "^0.58.1", optional = true } [dependencies] rand = "0.8" log = "0.4" libc = "0.2" runloop = "0.1.0" bitflags = "1.0" tokio = { version = "1.17", optional = true, features = ["macros", "rt-multi-thread"] } warp = { version = "0.3.2", optional = true } serde = { version = "1.0", features = ["derive"] } serde_bytes = "0.11" serde_cbor = "0.11" serde_json = "1.0" bytes = { version = "0.5", optional = true, features = ["serde"] } base64 = "^0.13" nom = { version = "^7.1.1", features = ["std"], default-features = false} sha2 = "^0.10.0" cfg-if = "1.0" # Crypto backends ring = { version = "0.16", optional = true } openssl-sys = { version = "0.9", optional = true} openssl = { version = "0.10", optional = true} # rc_crypto = { git = "https://github.com/mozilla/application-services", rev="2689788cecf24c385e6b7440e3aa1a89c511f14a", optional = true, feature="gecko"} # nss = { git = "https://github.com/mozilla/application-services", rev="2689788cecf24c385e6b7440e3aa1a89c511f14a", optional = true, feature="gecko"} # nss_sys = { git = "https://github.com/mozilla/application-services", rev="2689788cecf24c385e6b7440e3aa1a89c511f14a", optional = true, feature="gecko"} [dev-dependencies] env_logger = "^0.6" getopts = "^0.2" assert_matches = "1.2" rpassword = "5.0"