CryptoBook
  • CryptoBook
  • Book Plan
  • Style Guide
    • Sample Page
  • Contributors
  • Fundamentals
    • Mathematical Notation
    • Division and Greatest common divisor
      • Euclidean Algorithm
    • Modular Arithmetic
      • Theorems of Wilson, Euler, and Fermat
        • Fermat's Little Theorem in Detail
        • Euler's Theorem in Detail
      • Quadratic Residues
    • Continued Fractions
  • Number Theory
  • Ideals
  • Polynomials With Shared Roots
  • Integer Factorization
    • Pollard rho
    • Sieves
  • Abstract algebra
    • Groups
      • Another take on groups
      • Discrete Log Problem
    • Rings
    • Fields
    • Polynomials
  • Elliptic Curves
    • Untitled
  • Lattices
    • Introduction
    • LLL reduction
      • Gram-Schmidt Orthogonalization
      • Lagrange's algorithm
      • LLL reduction
    • Lattice reduction
      • Minkowski reduced
      • HKZ reduced
      • LLL reduced
    • Applications
      • Coppersmith algorithm
      • Extensions of Coppersmith algorithm
    • Hard lattice problems
    • Lattices of interest
    • Cryptographic lattice problems
      • Short integer solutions (SIS)
      • Learning with errors (LWE)
      • Ring-LWE
      • NTRU
    • Interactive fun
    • Resources and notations
  • Asymmetric Cryptography
  • RSA
    • Proof of correctness
    • RSA application
    • Low Private Component Attacks
      • Wiener's Attack
      • Boneh-Durfee Attack
    • Common Modulus Attack
    • Recovering the Modulus
  • Diffie-Hellman
    • MITM
  • Elliptic Curve Cryptography
  • Symmetric Cryptography
    • Encryption
    • The One Time Pad
    • AES
      • Rijndael Finite Field
      • Round Transformations
  • Hashes
    • Introduction / overview
    • The Birthday paradox / attack
  • Isogeny Based Cryptography
    • Introduction to Isogeny Cryptography
    • Isogenies
    • Isogeny and Ramanujan Graphs
  • Appendices
    • Sets and Functions
    • Probability Theory
Powered by GitBook
On this page
  • Introduction
  • Formal definition

Was this helpful?

Export as PDF
  1. Symmetric Cryptography

Encryption

Author: Chuck_bartwoski

Introduction

A typical application of cryptography is secure communication. Informally a secure communication channel is one that provides both confidentiality and Integrity of the messages. In this section we investigate confidentiality, therefore we may assume that integrity is already guaranteed by some other means. (see section on integrity...#TODO)

We assume that two parties that want to communicate share a secret key kkk. Prior to sending a message, the sender encrypts the message with the secret key, this produces a ciphertext that is then sent. The receiver uses the same key to decrypt the message and recover the message.

Intuitively: A secure encryption scheme will prevent an eavesdropper to learn the content of the message since the ciphertext is unintelligible. The security requirement will be formalized later.

Formal definition

We introduce some notation first: We will use M\mathcal MM to denote the set of al possible message, K\mathcal KK is the set of all possible keys and C\mathcal CC is the set of ciphertexts.

A symmetric encryption scheme E\mathcal EEis a tuple of efficiently computable functions (KGen, Enc, Dec)(\text{KGen, Enc, Dec})(KGen, Enc, Dec).:

  • Selects a key at random from the key space.

  • Enc:M×K↦C\text{Enc}: \mathcal M \times \mathcal K \mapsto \mathcal CEnc:M×K↦C. Encrypts the message mmm with the key kkk into a ciphertext c=Enc(m,k)c = \text{Enc}(m, k)c=Enc(m,k). Sometimes written as c=Enck(m)c = \text{Enc}_k(m)c=Enck​(m)

  • Dec:C×K↦M×{⊥}\text{Dec}: \mathcal C \times \mathcal K \mapsto \mathcal M \times \{ \bot\}Dec:C×K↦M×{⊥}. Decrypts the ciphertexts ccc with the key kkk into the message mmm or returns an error (⊥\bot⊥). m=Dec(c,k)m = \text{Dec}(c, k)m=Dec(c,k). Sometimes written as m=Deck(c)m = \text{Dec}_k(c)m=Deck​(c)

ForE\mathcal EE to be useful we need that Dec(Enc(m,k),k)=m;∀m,k\text{Dec}(\text{Enc}(m,k), k) = m; \forall m,kDec(Enc(m,k),k)=m;∀m,k. This is also called correctness.

After all what's the point of confidentially sending a nice Christmas card to your grand children if they wont be able to read its content

TODO: security notions and examples

PreviousElliptic Curve CryptographyNextThe One Time Pad

Last updated 4 years ago

Was this helpful?