Please enable JavaScript.
Coggle requires JavaScript to display documents.
Information Security (TLS (TLS Handshake protocol (Handshake variants (RSA…
Information Security
TLS
History and overview
-
Runs primarily over TCP, but DTLS runs over datagram protocols
-
TLS Record Protocol
Provides message confidentiality and message integrity, from TLS 1.2 these services can be provided by authenticated encryption (CCM or GCM)
Operations
-
-
Authenticated data: consists of the (compressed) data, the header, and an implicit record sequence number
Plaintext: compressed data and the MAC, if present
Session keys for the MAC and encryption algorithms, or the authenticated encryption algorithm, are computed during the handshake protocol
-
-
-
-
TLS Handshake protocol
Purpose:
Negotiates the version of TLS and the cryptographic algorithms to be used.
Establishes a shared session key for use in the record protocol
Authenticates the server
Authenticates the client (optional)
Completes the session establishment
-
Phases
-
Pase 2 and 3: performs key exchange. The messages and message content used in this phase depend on the handshake variant negotiated in phase 1.
-
-
-
Key establishment
-
-
-
General information
Requirements
-
Protection of keys: only accessible for use in relevant cryptographic algorithms, but not to unauthorized users
Destruction of keys: should be destroyed when served its purpose so that it is of no value to an attacker
-
Types of keys
-
Short term: session keys used to protect communications in a session, e.g. in authenticated encryption. Usually symmetric keys used with ciphers such as AES and MACs because of efficiency
-
Public Key Cryptography
-
Applications
Public Key Encryption
RSA
-
-
-
-
Optimization
Key generation
-
Selecting e has an effect on efficiency
, e=3 smallest value, 2^16 + 1 popular choice, d should be at least sqrt(n)
-
-
-
-
-
-
Number theory
-
-
Primality tests
-
Miller-Rabin
Generating large primes: choose a random odd integer with the same number of bits as the required prime. Test if it's divisible by any of a list of small primes. Then apply Miller-Rabin test with 5 random (or fixed) bases. If this fails increment the number by 2 and test against small primes again, and then run miller rabin again and again til you find a prime.
-
-
Hash functions and MACs
-
Iterated hash functions
-
Merkle-Damgård construction: use a fixed-size compression function applied to multiple blocks of the message. A compression functions take two n-bit input strings and produces an n-bit output string.
1) Break the message m into n-bit blocks
2) Add padding and an encoding of the length of m. This may or may not add one block
3) Input each block into the compression function h along with chained output; use IV to get started
-
Usages
-
-
Authenticated encryption: split the key K into K1 and K2 encrypt with K1 for confidentiality and create MAC with K2 for authenticity and integrity. We use a dedicated algorithm for this. Encrypt the message then MAC it is the safest way.
-
-
-
Ciphers
-
Modern
Block ciphers
AES
-
128 bits block size; 128,192,256 bits key size; 10, 12 or 14 rounds; byte based
-
-
Modes of operation
CBC
Randomized; Padding required; Error propagation within current block and specific bits of next block; IV must be random; Not parallell encryption but parallel decryption
ECB
Not randomized; Padding required; Error propagation within blocks; No IV; Parallel encryption and decryption
CTR
Randomized; Padding not required; Error propagation within specific bits of current block; Nonce must be unique; Parallel encryption and decryption
-
-
Design criteria
-
Feistel network
Encryption and decryption, LiRi
-
-
-
-