Account Key |
Previous name for the Secret Key. See Secret Key |
account password |
Something you must remember and type when unlocking 1Password. It’s never transmitted from your devices. Previously known as Master Password. |
Account Unlock Key (AUK) |
Key used to decrypt a user’s personal key set. It’s derived from the user’s account password and Secret Key. Previously known as the Master Unlock Key. |
Advanced Encryption Standard (AES) |
Probably the best studied and most widely used symmetric block cipher. |
authentication |
The process of one entity proving its identity to another. Typically the authenticating party does this by proving to the verifier that it knows a particular secret that only the authenticator should know. |
authenticity |
Knowing who created or sent a message. The typical mechanisms used for this with respect to data are often the same as those used to protect data integrity; however, some authentication process may be necessary prior to sending the data. |
BigNum |
Some cryptographic algorithms involve arithmetic (particularly exponentiation) on numbers that are hundreds of digits long. These require the use of Big Number libraries in the software. |
Chosen Ciphertext Attack (CCA) |
A class of attacks during which the attacker modifies encrypted traffic in specific ways and may learn plain text by observing how the decryption fails. |
confidentiality |
Data confidentiality involves keeping data secret. Typically this is achieved by encrypting the data. |
CPace |
A modern PAKE using a shared secret, defined by Abdalla, Haase, and Hesse. |
credential bundle |
A bundle containing a randomly generated SRP-𝑥 and Account Unlock Key (AUK), used to sign in to 1Password when signing in with single sign-on (SSO). It’s encrypted by the device key and stored on 1Password servers. See also Device Key |
Cryptographically Secure Pseudo-Random Number Generator (CSPRNG) |
A random number generator whose output is indistinguishable from truly random. Despite “pseudo” in the name, a CSPRNG is entirely appropriate for generating cryptographic keys. |
device key |
A cryptographic key stored on a 1Password client that uses single sign-on (SSO). It’s used to decrypt the credential bundle it receives from the server upon successful sign in. See SSO |
Diffie-Hellman key exchange (DHE) |
An application of the discrete logarithm problem (DLP) to provide a way for parties to decide upon a secret key without revealing any secrets during the communication. It’s named after Whitfield Diffie and Martin Hellman who published it in 1976. |
discrete logarithm problem (DLP) |
If 𝑦≡𝑔𝑥 mod𝑝 (for a carefully chosen𝑝and some other conditions) it’s possible to perform exponentiation to compute 𝑦 from the other variables, but it’s thought to be infeasible to compute 𝑥 from 𝑦. Computing 𝑥 from 𝑦 (and the other parameters) is reversing the exponentiation and is taking a logarithm. |
ECDSA using P-256 and SHA-256 (ES256) |
A digital signature algorithm using Elliptic Curve Digital Signature Algorithm (ECDSA) and P-256 as named in §3.1 of RFC 7518. |
Ellipic Curve Cryptography (ECC) |
A public key encryption system able to work with much smaller keys than are used for other public key systems. |
Elliptic Curve Digital Signature Algorithm (ECDSA) |
A digital signature algorithm based on elliptic curve cryptography described in FIPS PUB 186-4. |
Emergency Kit |
Contains your Secret Key, account password, and details about your account. Your Emergency Kit should be printed and stored in a secure place, and used if you forget your account password or lose your Secret Key. |
end-to-end (E2E) |
Data is only encrypted or decrypted locally on the users’ devices with keys that only the end users possess. This protects the data confidentiality and integrity from compromises during transport or remote storage. |
Galois Counter Mode (GCM) |
An authenticated encryption mode for use with block ciphers. |
hash-based key derivation function (HKDF) |
A key derivation function that uses HMAC for key extraction and expansion. Unlike PBKDF2, it’s not designed for password strengthening. |
HTTP Strict Transport Security (HSTS) |
Strict Transport Security has the server instruct the client that insecure HTTP is never to be used when talking to the server. |
infeasible |
Effectively impossible. It’s not technically impossible for a single monkey placed in front of a manual typewriter for six weeks to produce the complete works of Shakespeare. It is, however, infeasible, meaning the probability of it happening is so outrageously low it can be treated as impossible. |
integrity |
Preventing or detecting tampering with the data. Typically done through authenticated encryption or message authentication. |
item sharing |
A mechanism for sharing copies of 1Password items with individuals who are not members of the account. Also enables item sharing with individuals who don’t use 1Password. Previously known as the Password Security Sharing Tool (PSST). |
JSON Object Signing and Encryption (JOSE) |
A suite of specifications for creating and using Javascript objections for data protection and authentication. It includes JSON Web Key (JWK) and JSON Web Token (JWT). |
JSON Web Key (JWK) |
A format for describing and storing cryptographic keys defined in RFC 7517. |
JSON Web Token (JWT) |
A means of representing claims to be transferred between two parties and defined in RFC 7517. These are typically signed cryptographically. |
key encryption key (KEK) |
An encryption key used for the sole purpose of encrypting another cryptographic key. |
key set |
How collections of keys and their metadata are organized within 1Password. |
linked app or browser |
A client trusted to use SSO by having set up a device key and created a corresponding credential bundle. |
Man in the Middle (MITM) |
A Man in the Middle attack has Alice believing she’s encrypting data to Bob, while she’s actually encrypting her data to a malicious actor who then re-encrypts the data to Bob. The typical defense for such an attack is for Alice and Bob to manually verify they’re using the correct public keys for each other. The other approach is to rely on a trusted third party who independently verifies and signs Bob’s public key. |
multi-factor authentication (MFA) |
Requiring a combination of secrets (broadly speaking) such as a password or cryptographic key held on a device to grant access to a resource. |
mutual authentication |
A process in which all parties prove their identity to each other. |
nonce |
A non-secret value used in conjunction with an encryption key to ensure relationships between multiple plaintexts are not preserved in the encrypted data. Never encrypt different data with the same combination of key and nonce. Ideally, most software developers using encryption – as they should – would never have to interact with or much less understand the difference between them. We don’t live in such a world. |
passkey |
A credential with which you authenticate to a server. Unlike a password, the passkey isn’t sent to the server to authenticate. Instead, the passkey signs a challenge the server provides to your device. This process is also known as WebAuthn or FIDO2 authentication. |
password-authenticated key exchange (PAKE) |
Password-based key exchange protocol allows for a client and server to mutually authenticate each other and establish a key for their session. It relies on either a secret each have or related secrets that each have. |
primary account |
A local 1Password client may distinguish a single account it knows about as the primary account. Unlocking this account may automatically unlock secondary accounts the client may handle. See also secondary account |
reauthentication token |
An authorization token kept by clients that use biometrics to perform a quick unlock of their single sign-on (SSO) user accounts. |
Recovery Group |
The 1Password Group that holds a copy of the vault keys for vaults that may need to be recovered if account passwords or Secret Keys are lost. |
representational state transfer (REST) |
A software design approach that, among other things, allows a service to interact with clients in a simple and predictable manner. |
RESTful |
The adjectival form of representational state transfer (REST). See REST |
Recovery Group member |
A member of a Recovery Group. See Recovery Group |
salt |
A non-secret value added to either an encryption process or hashing to ensure the result of the encryption is unique. Salts are typically random and unique. |
secondary account |
An account that a client may unlocked automatically when the primary account is unlocked. See also primary account |
Secret Key |
A randomly generated user secret key that is created upon first signup. It’s created and stored locally. Along with the user’s account password, it’s required both for decrypting data and authenticating to the server. The Secret Key prevents an attacker who has acquired remotely stored data from attempting to guess a user’s account password. Previously known as the Account Key. |
Secure Remote Password (SRP) |
A method for both a client and server to authenticate each other without either revealing any secrets. In the process, they also agree on an encryption key to be used for the current session. We’re using Version 6 with a modified key derivation function. |
single sign-on (SSO) |
In the setting of a company or another organization, when you are provided with a single set of username, password, or other authentication factors to log in to services that company or organization provides for you. It’s one of the methods that can be used to sign in to 1Password. |
slow hash |
A cryptographic hash function designed to be computationally expensive. Used for hashing passwords or other guessible inputs to make guessing more expensive to an attacker who has the hash output. |
SRP-\(v\) |
The Secure Remote Password (SRP) verifier, 𝑣, used by the server to authenticate the client. |
SRP-\(x\) |
The client secret, 𝑥, used by the Secure Remote Password (SRP) protocol. Derived from the user’s account password and Secret Key. |
Transport Layer Security (TLS) |
The successor to SSL. It puts the “S” in HTTPS. |
two-secret key derivation (2SKD) |
Two different secrets, each with their own security properties, are used in deriving encryption and authentication keys. In 1Password, these are your account password (something you know) and your Secret Key (a high-entropy secret you have on your device). |
Unicode Normalization Form Compatibility Decomposition (NFKD) |
A consistent normal form for Unicode characters that could otherwise be different sequences of bytes. |
Universally Unique Identifier (UUID) |
A large arbitrary identifier for an entity. No two entities in the universe should have the same UUID. |
zero-knowledge protocol |
A way for parties to make use of secrets without revealing those secrets to each other. See also SRP |