티스토리 뷰
Classical Encryption Techniques
[ Plaintext & Ciphertext ]
· Plaintext : 암호화되기 전의 원래 텍스트. 평문.
· Ciphertext : 평문을 암호화하여 얻은 암호문.
[ Secure ]
· Unconditionally Secure : 수학과 관련없는 통계적인 암호화 방식.
· Computationally Secure : 수학적으로 풀어낼 수 있으나 계산량 측면에서 현실적으로 불가능한 암호화 방식.
[ Classical Encryption ]
: 고전적인 암호화 방식으로, 대부분 암호화와 복호화에 동일한 Key를 이용하는 Symmetric Cipher를 이용.
· Substitution Cipher
- Caesar Cipher : 알파벳 테이블을 기준으로 오른쪽으로 이동하여 암호화하며, 보통 3칸 이동.
- Monoalphabetic Cipher : 각각의 평문의 문자(알파벳)를 무작위로 매칭시키는 방법.
- Playfair Cipher : 두 글자씩 묶어서 대응하는 암호화 방식.
1) 단어로 된 Secret Key를 5×5 행렬(Digraph)에 넣되, 같은 글자는 무시.
2) 나머지 빈 칸은 알파벳 순으로 입력.
( 이때 총 25칸이므로 Pigeonhole Principle에 의해 하나의 문자는 같은 글자로 2개 대응. 보통 I와 J를 동일하게 취급. )
3) 암호화 규칙
① 직사각형 : 직사각형의 대칭 위치로 변경.
② 같은 행 : 행에서 다음 글자로 변경.
③ 같은 열 : 열에서 다음 글자로 변경.
④ 같은 글자 반복 : 본문에서 자주 사용하지 않는 문자를 넣고 ① ~ ③중 암호화. 보통 X나 Q를 사용.
- Vigenere Cipher (Polyalphabetic Substitution Cipher)
: 한 글자씩 대응시키되, 대응되는 문자를 여러 개로 하는 방법.
: Key가 단어의 반복으로이루어져 있어 주기 예측과 주기를 이용한 분석으로 인해 공격당할 수 있음.
→ 이를 방지하기 위해 첫 암호 Key 이후 Plaintext를 암호문으로 사용하는 Vigenere Autokey System 도입.
( Vigenere Autokey System도 여전히 주기가 살아있어 완전히 해결하지는 못함 )
- Vernam Cipher
: Plaintext를 bit 형태로 바꾸고 Key와 XOR 연산을 하여 암호화.
- One-Time Pad
: Vernam Cipher를 개선한 형태로, Key를 재사용하지 않고 버리며, 계속해서 같은 길이의 Key 생성.
: Plaintext의 길이 만큼의 Random한 Key를 만드는 데 어려움이 있으며, 전송 상의 문제로도 실용화 어려움.
: 낮은 대역폭, 높은 보안인 예외적인 상황에서만 사용.
· Transposition Cipher
- Rail Fence Cipher : 숫자로 된 Key에 따라 Plaintext를 지그재그로 나누고, 줄대로 읽는 방식.
- Row Transposition Cipher
: 긴 숫자로 된 Key에 따라 Plaintext를 대응하는 방식.
: 여러 Round로 진행될 수 있음.
[ Rotor Machine ]
: Substitution Cipher와 Transposition Cipher를 결합한 방식.
: 세계대전 당시에도 사용한 암호화 기기이며, 사용할 때 마다 다른 암호를 만들어 보안성 향상.
[ Steganography ]
: 암호가 본문에 보이지만, 찾기 힘든 형태로 되어있는 것.
: 이미지나 동영상 내부에 악성 코드를 입력해 바이러스 공격을 하는 방식으로 이용되기도 함.
'컴퓨터 공학 이론 > 컴퓨터 보안' 카테고리의 다른 글
[컴퓨터 보안] Stream Cipher & Block Cipher (0) | 2023.04.27 |
---|---|
[컴퓨터 보안] Group and Field (0) | 2023.04.27 |
[컴퓨터 보안] Web Hacking & Protection (0) | 2023.04.27 |
[컴퓨터 보안] Security Threat (0) | 2023.04.27 |
[컴퓨터 보안] Basic Number Theory (0) | 2023.04.27 |