DAMPER's blog

A Tutorial on the Implementation of Block Ciphers - Intro. 본문

암호

A Tutorial on the Implementation of Block Ciphers - Intro.

DAMPER 2022. 1. 4. 20:34
728x90

이 글은 'A Tutorial on the Implementation of Block Ciphers : Software ans Hardware Appplications, Howard M. Heys' 를 읽고 정리한 글입니다.

 

Terminology and Notion

Abbreviation Definition
SPN Substitution-Permutation Network
IoT Internet of Things
AES Advanced Encryption Standard
ECB electronic codebook mode
CBC cipher block chaining mode
CTR counter mode
CMOS complementary metal-oxide semiconductor
AISC application-specific integrated circuit
FPGA field-programmable gate array

\( B \)  : plaintext / ciphertext block size (also, size of cipher state)

\( κ \)  : number of cipher key bits (also, size of key state)

\( R \)  : number of Rounds

\( n \)  : S-box size (number of input / output bits)

\( P = \{p_{B-1} \cdots p_{1}p_{0} \} \)  : plaintext block of \( B \)  bits

\( C = \{c_{B-1} \cdots c_{1}c_{0} \} \)  : ciphertext block of \( B \)  bits

\( K = \{k_{κ-1} \cdots k_{1}k_{0} \} \)  : \( κ \) - bit cipher key

\( D = \{d_{B-1} \cdots d_{1}d_{0} \} \)  :  \( B \)  - bit cipher state

....

 

목차는 다음과 같이 이루어져 있습니다.

Contents

1. Introduction to Block Ciphers

   1.1  Target Implementation Environments

   1.2  Basic Cipher Principles

   1.3  Substitution Permutation Networks

   1.4  Modes of Operation

   1.5  General Implementation Structure

   1.6  Summary

2. Software Implemenation

   2.1  Structure of Encryption

   2.2  Structure of Decryption

   2.3  Direct Implementation of an SPN

   2.4  Table Lookup Implementations

   2.5  Time/Memory Tradeoffs of Lookup Tables

   2.6  Bit-slice Implementations

   2.7  Software Implementation of Cipher Modes

   2.8 Summary

3. Hardware Implemantation

   3.1  Iterative Design

   3.2  Parallelization - A High Speed Implementation

   3.3  Pipelining - A High Speed Implementation

   3.4  Serial Design - A Compact Implementation

   3.5  Hardware Implementation of Decryption

   3.6  Hardware Implementation of Cipher Modes

   3.7  Tradeoffs Betwwen Architectures

   3.8  Summary

4. Conclusion

 

 

약 80페이지로 이루어져 있는 글을 소단원 단위로 정리해서 글을 써보려 합니다.

나중에 수정하더라도 일단 정리를 다 하는 것을 목표로 하고 있습니다.

728x90