CTR Mode for Encryption

CTR Mode for Encryption

CTR Mode for Encryption Onn Haran – Passave Olli-Pekka Hiironen – Nokia 1 Disclaimer ❒ This presentation is informative ❒ The described functionality should not be part of 802.3 2 How Cipher Block is Applied? ❒ When using a symmetric block code (like AES), the plaintext is divided into blocks (128-bit in AES case) ❒ The mathematical operations, in addition to encryption function, are called Block Cipher Mode of Operation ❒ Some modes of operation requires an Initialization Vector (IV), which is used in the initial step of encryption/decryption 3 Why Block Cipher Mode of Operation is Needed? ❒ Advantages of adding Block Cipher Mode of Operation are: – The same plaintext will be encrypted to a different ciphertext, at any invocation • Important when analyzing repeating patterns (DA, SA, Ethertype, IP headers, TCP headers, known packets like ICMP, ARP, etc…) – Helps in handling last block problem • Last block can be smaller than code block size – Impossible to perform packet replay – Increases encryption level 4 Block Cipher Mode of Operation Recommendation ❒ National Institute of Standards and Technology (NIST) recommends 5 block cipher modes of operation (publication 800-38A) ❒ Two features are required: – Maintaining packet length – Length of last block should be arbitrary – Enabling parallel encryption - Encryption of a plaintext block shouldn’t depend on result from previous block ❒ From these modes only Counter (CTR) mode supports both features ❒ Additional mode Offset Codebook (OCB) was proposed for 802.11, but it is protected by patents 5 Frame Format – CTR mode Packet Packet Packet Original [Length: [15:0] [31:16] (N-1)*16] frame Counter Counter Counter #1 #2 . #N Cipher Cipher Cipher + + Encryptor + Encrypted Encrypted Encrypted Ciphered Packet Packet Packet [Length: [15:0] [31:16] frame (N-1)*16] Counter Counter Counter #1 #2 . #N Cipher Cipher Cipher + + Decryptor + Packet Packet Decoded Packet [15:0] [31:16] [Length: frame (N-1)*16] 6 Counter Initialization Vector (IV) ❒ Counter Initialization Vector must be used only once (nonce) per a specific key ❒ The counter is based on PON clock ❒ The counter IV will be a concatenation of: – cycle_counter [32 bits] – (PON clock+ 16)[32:5] – PON clock rounded to the closest 512nSec boundaries – N [7 bits] – Serial number of cipher block inside frame 7 Counter Initialization Vector (IV) ❒ 32-bit cycle_counter is incremented whenever PON clock wraps around – LSB of cycle_counter is transmitted in preamble – ONU resets cycle_counter when changing keys – OLT monitors changes in key number. When detected: • Counter is reset if LSB is 0 • Counter is set to 32’h0000_0001 if LSB is 1 8.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    8 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us