Block Cipher
KodeGear
(http://www.kodegear.co.kr)
1
Contents
• Introduction
• Stream Cipher
• ECB
• CBC
• others
• Closing
2
Introduction
• Encipherment
o Meaning any mechanism transforming a
data for the unauthorised can’t understand
o Normally a key (pair) is used
o stream cipher and block cipher
3
Stream Cipher
• Consider data a bit streams
• There is a key stream for encipherment
• The bits and keys are doing exclusive-OR
for each bits
• Faster than block cipher but lower
security
• Ex) LFSR, MUX generator
4
Block Cipher
• Cut the data into several blocks to do
encipherment
• Keys and IV (Initial Vector) are used
• Slower than stream cipher but appears
higher security
• Ex) DES, AES
5
ECB (Electronic Code Book)
• Encrypt blocks of plaintext with the key
• Key is already shared beforehand
• Same plaintext produces same ciphertext
so shows low security
6
Source: wikipedia
CBC (Cipher Block Chaining)
• Reverse operation for decryption with key and
IV
• Can be parallelized because previous
ciphertext block (or IV) is enough for
decryption
7
Source: wikipedia
CBC (Cipher Block Chaining)
• Exclusiv-ORed block between plaintext and
previous ciphertext are encrypted with
symmetric keys
• IV (Initial Vector) is used at first encipherment
• Slower because encryption should be
sequential
8
Source: wikipedia
Closing
• Data stream or data block can be
encrypted
• EBC is encryption for plaintext blocks
with keys and have lower security
• CBC is encryption for data blocks which
are exclusive-ORed between plaintext
blocks and previsous ciphertext with keys
9

Block Cipher

  • 1.
  • 2.
    Contents • Introduction • StreamCipher • ECB • CBC • others • Closing 2
  • 3.
    Introduction • Encipherment o Meaningany mechanism transforming a data for the unauthorised can’t understand o Normally a key (pair) is used o stream cipher and block cipher 3
  • 4.
    Stream Cipher • Considerdata a bit streams • There is a key stream for encipherment • The bits and keys are doing exclusive-OR for each bits • Faster than block cipher but lower security • Ex) LFSR, MUX generator 4
  • 5.
    Block Cipher • Cutthe data into several blocks to do encipherment • Keys and IV (Initial Vector) are used • Slower than stream cipher but appears higher security • Ex) DES, AES 5
  • 6.
    ECB (Electronic CodeBook) • Encrypt blocks of plaintext with the key • Key is already shared beforehand • Same plaintext produces same ciphertext so shows low security 6 Source: wikipedia
  • 7.
    CBC (Cipher BlockChaining) • Reverse operation for decryption with key and IV • Can be parallelized because previous ciphertext block (or IV) is enough for decryption 7 Source: wikipedia
  • 8.
    CBC (Cipher BlockChaining) • Exclusiv-ORed block between plaintext and previous ciphertext are encrypted with symmetric keys • IV (Initial Vector) is used at first encipherment • Slower because encryption should be sequential 8 Source: wikipedia
  • 9.
    Closing • Data streamor data block can be encrypted • EBC is encryption for plaintext blocks with keys and have lower security • CBC is encryption for data blocks which are exclusive-ORed between plaintext blocks and previsous ciphertext with keys 9