Cargo Features
[dependencies]
product-os-security = { version = "0.0.28", default-features = false, features = ["all", "generator", "mac", "password_hash", "hash", "hasher", "jwt_encrypt_decrypt", "jwt_auth_verify", "byte_vector", "auth_verify", "diffie_hellman_key_store", "symmetric_encrypt_decrypt", "time_otp", "string_safe", "certificates_custom", "jwt_encrypt_decrypt_std", "diffie_hellman_client_server_key_store", "public_private_encrypt_decrypt", "public_private_sign_verify", "vendored-openssl", "certificates", "open_ssl", "file", "urlencoding", "totp-lite", "arbitrary"] }
- default all? = jwt_auth_verify
-
These default features are set whenever
product-os-security
is added without
somewhere in the dependency tree.default-features = false Enables product-os-async-executor and product-os-random, std of no-std-compat and clock of chrono
Date and Time Handling
- all = auth_verify, byte_vector, certificates, default, diffie_hellman…server_key_store, diffie_hellman_key_store, file, generator, hash, jwt_auth_verify, jwt_encrypt_decrypt, mac, password_hash, public_private_encrypt_decrypt, public_private_sign_verify, string_safe, symmetric_encrypt_decrypt, time_otp, vendored-openssl
- generator all? auth_verify? hash? jwt_auth_verify
-
Enables constrained of product-os-random
- mac all? auth_verify? time_otp? = blake2
- password_hash all?
-
Enables alloc and password-hash of argon2 ^0.4.0, constrained and custom of product-os-random
Affects
product-os-security::password_hash
,product-os-security::password_verify
… - hash all? auth_verify? = blake2, generator
-
Affects
product-os-security::create_salted_hash
,product-os-security::create_hash
,product-os-security::verify_hash
,product-os-security::create_string_hash
… - hasher = blake2
-
Affects
product-os-security::ProductOSHasher
… - jwt_encrypt_decrypt all? = orion
-
Enables alloc of base64 ^0.21.5
Affects
product-os-security::base64_encode
,product-os-security::base64_decode
… - jwt_auth_verify default all? = generator, jwt-compact, serde
-
Enables alloc of chrono, moment of product-os-async-executor
Affects
product-os-security::JWTGenerator
,product-os-security::TokenClaims
,product-os-security::DefaultClaims
,product-os-security::EmptyClaims
,product-os-security::JWTError
… - byte_vector all?
-
Enables alloc of serde_json
JSON data representation
Affects
product-os-security::AsByteVector
… - auth_verify all? = generator, hash, mac, product-os-urlencoding
-
Enables alloc of hex and serde_json
Affects
product-os-security::create_auth_request
,product-os-security::verify_auth_request
,product-os-security::create_auth_request_json
,product-os-security::verify_auth_request_json
,product-os-security::create_auth_query
,product-os-security::verify_auth_query
,product-os-security::create_auth_headers
,product-os-security::verify_auth_headers
,product-os-security::create_auth_payload
,product-os-security::verify_auth_payload
,product-os-security::create_auth_json
,product-os-security::verify_auth_json
,product-os-security::create_auth
,product-os-security::verify_auth
,product-os-security::hex_encode
,product-os-security::hex_decode
… - diffie_hellman_key_store all? = hkdf, sha2, uuid, x25519-dalek
-
Enables constrained and custom of product-os-random, v4 of uuid
Affects
product-os-security::DHKeyStore
… - symmetric_encrypt_decrypt all? = orion
-
Enables constrained of product-os-random
Affects
product-os-security::CryptoError
,product-os-security::symmetric_encrypt
,product-os-security::symmetric_decrypt
… - time_otp all? = mac
-
Enables alloc of chrono, moment of product-os-async-executor
- string_safe all? = product-os-urlencoding
-
Affects
product-os-security::encode_uri_component
,product-os-security::decode_uri_component
… - certificates_custom = const-oid, der, rsa, rustls, rustls-pemfile, sha2, signature, spki
-
Enables alloc of chrono, constrained and custom of product-os-random
Affects
product-os-security::certificates_custom
… - jwt_encrypt_decrypt_std
-
std
- diffie_hellman_client_server_key_store all?
-
Enables std of no-std-compat, safe_api of orion, serde and v4 of uuid
Affects
product-os-security::DHClientServerSessionKind
,product-os-security::DHClientServerKeyStore
… - public_private_encrypt_decrypt all?
-
Enables product-os-random, std of no-std-compat
Affects
product-os-security::RSA
… - public_private_sign_verify all?
-
Enables std of ring ^0.16.20
Affects
product-os-security::KeyError
,product-os-security::generate_public_private_keys
,product-os-security::get_public_key
,product-os-security::private_key_sign
,product-os-security::public_key_verify
… - vendored-openssl all?
- certificates all? = rcgen, rustls, rustls-pemfile
-
Affects
product-os-security::certificates
… - open_ssl = openssl
-
Affects
certificates::SSLCertificate
… - file all?
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- blake2 hash? hasher? mac?
- argon2 password_hash?
-
Enables argon2 ^0.4.0
- orion diffie_hellman…server_key_store? jwt_encrypt_decrypt? jwt_encrypt_decrypt_std? symmetric_encrypt_decrypt?
- ring public_private_sign_verify?
-
Enables ring ^0.16.20
- x25519-dalek diffie_hellman_key_store?
- hkdf diffie_hellman_key_store?
- jwt-compact jwt_auth_verify
- sha2 certificates_custom? diffie_hellman_key_store?
- urlencoding implicit feature
-
Enables urlencoding
urlencoding:
A Rust library for doing URL percentage encoding
- serde jwt_auth_verify
- serde_json auth_verify? byte_vector?
- hex auth_verify?
- base64 jwt_encrypt_decrypt?
-
Enables base64 ^0.21.5
- uuid diffie_hellman…server_key_store? diffie_hellman_key_store?
- chrono default certificates_custom? jwt_auth_verify time_otp?
- totp-lite implicit feature
-
Enables totp-lite
Time based OTP
- const-oid certificates_custom?
-
Enables const-oid
TLS support
- der certificates_custom?
- spki certificates_custom?
- signature certificates_custom?
- rsa certificates_custom?
- rustls certificates? certificates_custom?
-
Enables rustls ^0.21.8
TLS library for Rust
- rcgen certificates?
-
Enables rcgen ^0.11.3
Generate self-signed certificate
- rustls-pemfile certificates? certificates_custom?
-
Enables rustls-pemfile ^1.0.4
Generate self-signed certificate
- openssl open_ssl? vendored-openssl?
- product-os-random default certificates_custom? diffie_hellman_key_store? generator? password_hash? public_private_encrypt_decrypt? symmetric_encrypt_decrypt?
- product-os-async-executor default jwt_auth_verify time_otp?
- product-os-urlencoding auth_verify? string_safe?
- arbitrary implicit feature
-
Enables arbitrary
arbitrary:
The trait for generating structured data from unstructured data