1.3 Practical Cryptography Flashcards
Cryptography is used for….
Two main types…..
Cryptography is used for confidentiality, integrity, and non-repudiation of data.
Symmetric and asymmetric cryptography are the two main types.
Symmetric Cryptography
Uses the same key for encryption and decryption.
Efficient and fast, but key management can be complex.
Common algorithms: AES, DES, 3DES.
Operates in block cipher or stream cipher mode.
Asymmetric Cryptography
Uses a mathematically related public-private key pair.
More secure for key exchange and digital signatures, but slower.
Common algorithms: RSA, Diffie-Hellman, Elliptic Curve Cryptography (ECC), DSA.
Encryption Levels
Full disk encryption protects all user data on a device.
Partition encryption protects specific disk partitions.
File-level encryption protects individual files.
Volume/block encryption protects a section of the physical drive.
Database encryption protects data stored in databases.
Hashing, Salting, and HMACs
Hashing creates a fixed-length digest from variable-length data.
Salting adds random data to a hash function to make it harder to crack.
HMACs are used for message integrity and origin authentication with a shared secret key.
Key Exchange
Traditionally a challenge due to the need for secure key distribution.
Asymmetric key exchange algorithms (e.g., Diffie-Hellman) are commonly used.
Ephemeral Diffie-Hellman provides perfect forward secrecy.
Elliptic Curve Diffie-Hellman is efficient for mobile devices and IoT.
Digital Signatures and Certificates
Digital signatures use public/private key pairs for authenticity, integrity, and non-repudiation.
Common hashing algorithms: SHA-1, SHA-2, SHA-3.
Common signing algorithms: RSA, DSA, Elliptic Curve DSA.
Digital certificates bind public keys to entities using a trusted third-party (CA).
X.509 standard defines the format for digital certificates.
Public Key Infrastructure (PKI)
PKI is a framework for managing public keys and digital certificates with a trusted CA.
Certificate authorities (CAs) issue, manage, and revoke certificates.
Certificate Signing Request (CSR) is used to request a certificate from a CA.
Certificate Revocation Lists (CRLs) and Online Certificate Status Protocol (OCSP) are used to check certificate validity.
Different trust models exist for CAs (e.g., single CA, hierarchical).