Expand description
This module contains the definition for the key identifiers used by the rest of the crates. Any code that needs to interact with the [KeyStore] should use these types.
- SymmetricKeyId is used to identify symmetric keys.
- AsymmetricKeyId is used to identify asymmetric keys.
- KeyIds is a helper type that combines both symmetric and asymmetric key identifiers. This is usually used in the type bounds of [KeyStore], KeyStoreContext, PrimitiveEncryptable, CompositeEncryptable, and Decryptable.
Modules§
- account_
cryptographic_ state - User account cryptographic state
- crypto
- Mobile specific crypto operations
- crypto_
client 🔒 - master_
password 🔒 - security_
state 🔒 - Security state is a signed object that attests to a user’s (or later an organization’s) security state. The security goal is to prevent downgrades of specific features within the user’s account by the server / a networked attacker with TLS introspection access.
- user_
decryption 🔒
Structs§
- Crypto
Client - A client for the crypto operations.
- KeyIds
- Security
State - The security state is a signed object attesting to the security state of a user.
- Signed
Security State - A signed and serialized
SecurityStateobject. - User
Decryption Data - Represents data required to decrypt user’s vault. Currently, this is only used for master password unlock.
Enums§
- Asymmetric
KeyId - Master
Password Error - Error for master password related operations.
- Signing
KeyId - Symmetric
KeyId
Constants§
- MINIMUM_
ENFORCE_ ICON_ URI_ HASH_ VERSION - Icon URI hashes are enforced starting with this security state version.
Functions§
- create_
test_ crypto_ with_ user_ and_ org_ key - This is a helper function to create a test KeyStore with a single user key and an organization key using the provided organization uuid. While this function is not marked as #[cfg(test)], it should only be used for testing purposes. It’s only public so that other crates can make use of it in their own tests.
- create_
test_ crypto_ with_ user_ key - This is a helper function to create a test KeyStore with a single user key. While this function is not marked as #[cfg(test)], it should only be used for testing purposes. It’s only public so that other crates can make use of it in their own tests.