DOC PREVIEW
MASON ECE 646 - Implementation and Performance analysis of Skipjack & Rijndael Algorithms

This preview shows page 1-2-3-4-5 out of 15 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Implementation and Performance analysis of Skipjack & Rijndael Algorithms by Viswnadham Sanku ECE646 Project Fall-2001TABLE OF CONTENTS TABLE OF CONTENTS_________________________________________________ 2 1. OBJECTIVE ________________________________________________________ 3 2. SKIPJACK CIPHER __________________________________________________ 3 2.1 CIPHER OPERATIONS _____________________________________________ 3 2.2 DESIGN PRINCIPLES_______________________________________________ 5 2.3 CRYPTANALYSIS__________________________________________________ 5 2.4 IMPLEMENTATION & TESTING_____________________________________ 5 PKCS#5 PADDING _____________________________________________________________6 2.5 OPTIMIZATION TECHNIQUES ______________________________________ 6 2.6 RESULTS_________________________________________________________ 6 3. RIJNDAEL CIPHER__________________________________________________ 8 3.1 CIPHER OPERATIONS _____________________________________________ 8 3.2 DESIGN PRINCIPLES______________________________________________ 10 3.3 CRYPTANALYSIS_________________________________________________ 10 3.4 IMPLEMENTATION & TESTING____________________________________ 11 PKCS#5 PADDING ____________________________________________________________11 3.5 OPTIMIZATION TECHNIQUES _____________________________________ 11 3.6 RESULTS________________________________________________________ 12 4. COMPARISION OF SKIPJACK VS RIJNDAEL__________________________ 14 5. PROBLEMS ENCOUNTERED ________________________________________ 14 6. CONCLUSIONS ____________________________________________________ 151. OBJECTIVE The main objective of this project is to implement and analyze the performances of two efficient and secure secret-key block ciphers Skipjack and Rijndael. The purpose of doing this is to get a good insight into the working of secret-key ciphers and to explore better ways of implementation with the help of different optimization techniques. The ciphers are implemented on two different platforms, MS Visual C++(Windows) and GNU C (Linux). Then speeds of operation on single block of data is measured using CPU clock cycles. Then the speeds achieved by my implementation is compared against different other implementations found in the public domain. A measure of diffusion is taken for each round of operation, to see how good the diffusion is at different levels. Finally the two ciphers are compared against each other and the reasons for the differences in their performances are listed. 2. SKIPJACK CIPHER Skipjack is the secret key encryption algorithm designed by the NSA and is used in the Clipper chip and Fortezza PC card. It was implemented in tamper-resistant hardware and its structure had been classified since its introduction in 1993. Skipjack was unclassified on June 24th, 1998. 2.1 CIPHER OPERATIONS Skipjack is block cipher that uses 64-bit block size and 80-bit key. There are total 32 rounds in encryption and 32 rounds in decryption. Skipjack uses two different types of round functions, RuleA and RuleB for encryption and RuleA-1 and RuleB-1 for decryption. Encryption consists of 8 RuleA, and 8 RuleB, 8 RuleA and 8 RuleB rounds. Decryption consists of 8 RuleB-1, 8 RuleA-1, 8 RuleB-1 and 8 RuleA-1 rounds. The 64-bit block is internally divided into four 16-bit words. And in each round a keyed non-linear permutation is applied to one word from the block. Each of the 32 rounds uses 4 byte subkey. 10 byte key is repeated itself to make it 128 byte. G/G-1 permutation is applied to one word in each Rule. This G permutation uses a F table, which is a byte substitution table. The G permutation carries the linear operation of mixing the bytes and no-linear operation of substitution. 8 Rounds (Rule A) 8 Rounds (Rule B) 8 Rounds (Rule A) 8 Rounds (Rule B) 64 bits 64 bits W1 W2 W3 W4 W1 W2 W3 W4 ENCRYPTION 8 Rounds (Rule B-1) 8 Rounds (Rule A-1) 8 Rounds (Rule B-1) 8 Rounds (Rule A-1) 64 bits 64 bits W1 W2 W3 W4 W1 W2 W3 W4 DECRYPTIONg1(high) g2(low) F + F F F + + + ++ ++ g1(high) g2(low) CV4k CV4k+1 CV4k+3 CV4k+2 G Permutation +g1(high) g2(low) F F F F g1(high) g2(low) ++ + +++ + CV4k+3 CV4k+2 CV4k+1 CV4k G-1 Permutation W1 W2 W3 W4 G ++W1 W2 W3 W4 Counter RuleA Counter W1 W2 W3 W4 G ++W1 W2 W3 W4 RuleB W1 W2 W 3 W4 ++W1 W2 W3 W4 Counter G-1 RuleA-1 W1 W2 W3 W4 W1 W2 W3 W4 G-1 ++Counter RuleB-12.2 DESIGN PRINCIPLES • Symmetry. Skipjack encryption and decryption have the same symmetrical structure. This principle simplifies the task of implementation. And it ensures identical security against chosen plaintext and chosen ciphertext attacks. • Not too much Symmetry. Symmetry sometimes allows for clever cryptanalytic attacks. In Skipjack symmetry is broken with round counters. round counters appear to prevent most attacks that attempt to exploit their symmetry, while retaining the equivalence between chosen-plaintext and chosen-ciphertext security against very large class of attacks. • A Round before B Round. A rounds exhibit better diffusion than B rounds and hence makes it harder to peek deep inside the cipher rounds. So A rounds are used before B rounds in encryption direction. A-1 rounds exhibit weaker diffusion than B-1 rounds. So B-1 is used before A-1 in decryption direction. • 8A, 8B Rounds. Any number of rounds less than 8 are vulnerable to cryptanalysis attacks, especially truncated differential cryptanalysis. • 80-bit Key. With longer key size differential style attacks have lower complexity than exhaustive key search. Shorter keys are too weak to resist exhaustive key search. So 80-bit key length is an effective compromised key length. 2.3 CRYPTANALYSIS • Bad interactions between the round-types, i.e A and B Rounds interact poorly where they are applied in consecutive rounds. Because of this the transitions between round types appear to reduce security. • Less diffusion in B rounds and A-1 rounds • A Round mixes the output of the G permutation to the input of the next G permutation, while Rule B mixes the


View Full Document

MASON ECE 646 - Implementation and Performance analysis of Skipjack & Rijndael Algorithms

Documents in this Course
Load more
Download Implementation and Performance analysis of Skipjack & Rijndael Algorithms
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Implementation and Performance analysis of Skipjack & Rijndael Algorithms and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Implementation and Performance analysis of Skipjack & Rijndael Algorithms 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?