Cryptography: Ciphers, Security, and MAC

Miscellaneous: Secret (Symmetric), Public (Asymmetric).

Math:

  1. XOR (a ⊕ b) is 0 if the values are the same, 1 if they are different. c = (x ⊕ k) is random and independent of the original X.
  2. Addition: Given x is a binary string of length n, and a is an integer, then (a+x) is the n least significant bits of the binary encoding of adding the values a and x.
  3. Given n bits, Pr[any one string] = 1/2n.

Classical Ciphers/Principles:

  1. Shift: Shifts all letters by the same amount (key). It can be cracked by brute-
Read More

TCP Acknowledgments and Digital Certificate Verification

Understanding TCP Acknowledgments

(A) Why is acknowledgment 701 sent when the segment with sequence 801-900 is received? Because in TCP, acknowledgments are cumulative, which means that the acknowledgment number refers to the next expected byte, indicating that all previous bytes have been successfully received and are in order.

The sender sends segments with sequence numbers 501-600, 601-700, and 701-800. The segment with sequence number 701-800 is lost. The receiver successfully receives segments

Read More

Cryptography and Authentication: Principles and Techniques

Cryptography and Authentication: Core Concepts

Confidentiality: Can you keep a secret? Integrity: Did you get the same message I sent you? Identification/Authentication: Who are you? Can you prove it? Authorization & Access Control: What are you allowed to do? Availability: Are you there when needed?

Symmetric Key Cryptography (SKC)

Secure Key Cryptography: Vigenere Cipher: P XOR k = C, C XOR k = P. The first byte of the plaintext is XOR’ed with the first character of k, the second byte with the

Read More

Cryptography: Hash Functions, Public Key, SSL, and PGP

Hash Function Algorithms

MD5: A widely used hash function (RFC 1321) that computes a 128-bit message digest in a 4-step process. For any arbitrary 128-bit string x, it appears difficult to construct a message m whose MD5 hash is equal to x.

SHA-1: Another hash function in use. It is a US standard [NIST, FIPS PUB 180-1] and produces a 160-bit message digest.

Public-Key Certification

Motivation: Trudy plays a pizza prank on Bob.

  1. Trudy creates an e-mail order: “Dear Pizza Store, Please deliver to me four
Read More

Message Authentication Codes (MAC) and Hash Functions in Cryptography

Message Authentication Codes (MAC)

An alternative authentication technique involves the use of a secret key to generate a small fixed-size block of data, known as a cryptographic checksum or MAC, that is appended to the message.

  • Condenses a variable-length message using a secret key to a fixed-size authenticator.
  • This technique assumes that two communicating parties, say A and B, share a common secret key.
  • When A has a message to send to B, it calculates the MAC as a function of the message and key:
Read More

Cryptography Concepts and Security Analysis

1. Consider the mono-alphabetic substitution cipher (Lecture 1, slide 20). What is the size of its key space? -26!

2. Consider the poly-alphabetic substitution cipher (Lecture 1, slide 22). What is the size of its key space? -26^t (that is, 26 to the power of t)

3. You know that a meaningful plaintext in a language with an x-letter alphabet is encrypted using either the mono-alphabetic substitution cipher or the poly-alphabetic substitution cipher (with a key of t random numbers in [1,x], for a known

Read More