일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- 분할정복
- BOJ
- 동적계획법
- backtracking
- 유니온파인드
- 다이나믹프로그래밍
- stack
- 분리집합
- 그리디
- DP
- 백트래킹
- union-find
- 알고스팟
- Algospot
- 백준
- 완전탐색
- DFS
- 종만북
- 너비우선탐색
- priority_queue
- 문자열
- 세그먼트트리
- 누적합
- 이분탐색
- acm
- 알고리즘문제해결전략
- 재귀
- Greedy
- 스택
- BFS
- Today
- Total
DAMPER's blog
A Tutorial on the Implementation of Block Ciphers - Intro. 본문
이 글은 '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페이지로 이루어져 있는 글을 소단원 단위로 정리해서 글을 써보려 합니다.
나중에 수정하더라도 일단 정리를 다 하는 것을 목표로 하고 있습니다.
'암호' 카테고리의 다른 글
[암호수학] 암호수학 요약 - 대수학 (2) | 2023.02.17 |
---|---|
A Tutorial on the Implementation of Block Ciphers - 1.1 Target Implementation Environments (0) | 2022.01.09 |