Title: A Comparative Study of New Block Ciphers
1A Comparative Study of New Block Ciphers
- Min Zhuo
- ECE 575
- Data Security and Cryptography
- Mar 11, 1999
2Introduction
- Block Cipher and DES
- Advanced Encryption Standard Program
- 21 algorithms submitted to NIST
- Twofish - submitted by Counterpane Co., USA
- Frog - submitted by TecApro Co., Costa Rica
- Mars - submitted by IBM, USA
- RC6 - submitted by RSA, USA
3Project Objectives
- Study of four Block Ciphers
- Algorithm
- Characteristics
- Comparison
- Structure
- Operation
- Security
- Efficiency
4Evaluation Criteria
- Security
- Cryptoanalysis
- Mathematical basis
- Cost/Efficiency
- Computational Efficiency
- Algorithm Setup
- Key Setup and Change
- Encryption and Decryption
- Memory Requirement
- Algorithm characteristic
- Flexibility, Simplicity
- Hardware and Software Suitability
5Twofish Overview
- 128-bit Block Feistal network
- 16 rounds
- Key length 128 bits, 192 bits, 256 bits
- Pre- and Post-whitening
- Key-dependent S-box
- Key can be precomputed for efficiency
6Twofish Algorithm
- Whitening
- increases the difficulty of key search attacks.
- MDS(maximum distance separable) Matrix
- PHT ( pseudo-hadamard transform)
- Steps
- Pre-Whitening
- 16 round function
- Undo last swap
- Post-whitening
7Twofish Round Function Block Diagram
8Frog Overview
- an unorthodox structure, 8 iterations
- block size 8-128 bytes, key size 5-125 bytes
- only byte level XORs and byte level substition
- a secret internal key, 2304 bits - the heart
of FROG
9Frog Algorithm
- Internal Key
- 8 records for 8 iterations
- record
- xorBuf, 16 bits
- SubstPermu 256 bits
- bombPermu16 bites
10Mars Overview
- 128-bits block Festial-3 network
- A variable key size, from 128 to 1248 bits
- working with 32 bits words
- Strong 32 bits operations
- XORS, additions, subtraction, table lookups,
- multiplication, both fixed and data-dependent
rotation - a mixed structure
11 Mars Algorithm
Key addition
Eight rounds of unkeyed forward mixing
Eight rounds of keyed forward mixing
Eight rounds of keyed forward transformation
Eight rounds of unkeyed backwards transformation
Key subtraction
12RC6 Overview
- 128-bit Block Feistal-2 network
- four 32-bits working registers for Input/Output
- 20 rounds
- key size 16,24,32 bytes
- key expansion
- Pre and Post whitening
13RC6 Algorithm
- B B S 0
- D D S 1
- for i 1 to 20 do
- t ( B x ( 2B 1 ) ) ltltlt 5
- u ( D x ( 2D 1 ) ) ltltlt 5
- A ( ( A ? t ) ltltlt u ) S 2i
- C ( ( C ? u ) ltltlt t ) S 2i 1
- (A, B, C, D) (B, C, D, A)
-
- A A S 42
- C C S 43
14Comparison of Algorithm
the number of chosen plaintext the number of
known plaintext
15Comparison of Operations
16Comparison of Encryption Speed
source NIST Preliminary test report the
test platform IBM-compatible PC
17Comparison of Key Setup Speed
18Comparison of RAM Required
19Conclusion
- Frog large memory required, has been broken.
- Twofish simple operations, limited resource
required, can be used in some resource-limited
environment, such as smartcard. - Mars and RC6 high security and high efficiency
in 32 bit processor, but are ill-suitable for
smardcards.