[package] name = "rsa" version = "0.10.0-rc.18" authors = ["RustCrypto Developers", "dignifiedquire "] edition = "2021" description = "Pure Rust RSA implementation" license = "MIT OR Apache-2.0" documentation = "https://docs.rs/rsa" repository = "https://github.com/RustCrypto/RSA" keywords = ["rsa", "encryption", "security", "crypto"] categories = ["cryptography"] readme = "README.md" rust-version = "1.85" exclude = ["marvin_toolkit/", "thirdparty/"] [dependencies] const-oid = { version = "0.10", default-features = false } crypto-bigint = { version = "0.7", default-features = false, features = ["zeroize", "alloc"] } crypto-primes = { version = "0.7", default-features = false } digest = { version = "0.11", default-features = false, features = ["alloc", "oid"] } rand_core = { version = "0.10", default-features = false } signature = { version = "3.0.0-rc.10", default-features = false, features = ["alloc", "digest", "rand_core"] } zeroize = { version = "1.8", features = ["alloc"] } # optional dependencies crypto-common = { version = "0.2", optional = true, features = ["getrandom"] } pkcs1 = { version = "0.8.0-rc.4", optional = true, default-features = false, features = ["alloc", "pem"] } pkcs8 = { version = "0.11", optional = true, default-features = false, features = ["alloc", "pem"] } serdect = { version = "0.4", optional = true } sha1 = { version = "0.11", optional = true, default-features = false, features = ["oid"] } sha2 = { version = "0.11", optional = true, default-features = false, features = ["oid"] } spki = { version = "0.8", optional = true, default-features = false, features = ["alloc"] } serde = { version = "1.0.184", optional = true, default-features = false, features = ["derive"] } [dev-dependencies] base64ct = { version = "1", features = ["alloc"] } hex-literal = "1" proptest = "1" serde_test = "1.0.89" rand = { version = "0.10", features = ["chacha"] } rand_core = { version = "0.10", default-features = false } sha1 = { version = "0.11", default-features = false, features = ["oid"] } sha2 = { version = "0.11", default-features = false, features = ["oid"] } sha3 = { version = "0.11", default-features = false, features = ["oid"] } hex = { version = "0.4.3", features = ["serde"] } serde_json = "1.0.138" serde = { version = "1.0.184", features = ["derive"] } rstest = "0.26.1" [[bench]] name = "key" [features] default = ["std", "encoding", "private-key-operations-disabled"] std = ["pkcs1?/std", "pkcs8?/std"] encoding = ["dep:pkcs1", "dep:pkcs8", "dep:spki"] hazmat = [] private-key-operations-disabled = [] getrandom = ["crypto-bigint/getrandom", "crypto-common"] serde = ["encoding", "dep:serde", "dep:serdect", "crypto-bigint/serde"] pkcs5 = ["pkcs8/encryption"] [package.metadata.docs.rs] features = ["std", "serde", "hazmat", "sha2"] [profile.dev] opt-level = 2 [profile.bench] debug = true