카이사르 암호 (Caesar Cipher)
모든 문자에 대해, 아스키코드 상에서 특정 수만큼 더해서 암호화
알파벳이 26개기 때문에, 26번만에 해독될 수 있다. (브루트포스)
모노알파벳 암호 (Monoalphabetic Cipher)
각각의 알파벳이 랜덤한 알파벳으로 변환되어 암호화
브루트포스 방식으로 해독하려면 26! 번으로 해독된다.
하지만 영어에서, 가장 많이 나오는 문자가 e이고, 다음이 t, 다음이 a ... 인 점, 그리고 2, 3개의 알파벳이 연속하여 나오는 빈도 테이블을 이용하여 암호화 문자열의 알파벳 빈도를 구하면 해독될 수 있다.
폴리알파벳 암호 (Polyalphabetic Cipher)
암호화하는 동안 여러 알파벳 대치 방식을 사용한다. 문자 빈도를 변조하기 때문에 해독하기 어렵다.
암호화 할 때 알파벳 대치 방식은 키를 통해 결정된다. 예를 들어 키가 "AB"라면 첫 번째 문자는 A에 대한 알파벳 대치 표, 두 번째 문자는 B에 대한 알파벳 대치 표를 사용한다. 키의 길이를 초과하는 세 번째 문자의 경우, 다시 키의 처음으로 돌아가서 A에 대한 알파벳 대치 표를 사용하게 된다.
원타임패드 (One-Time Pad)
이론 상 완벽한 보안법으로, 각 메시지에 대해 같은 길이의 키가 사용되고, 그 키는 단 한 번만 사용되고 재사용되지 않는다. 따라서 암호문과 원문이 통계적인 관계를 갖지 않기에 해독이 불가능해진다.
다만 메시지의 길이에 따라 키의 크기가 커지고, 완전히 무작위로 생성해야하기 때문에 키를 안전하게 생성하고 분배하는 것이 어려워져서 현실적인 방법은 아니다.
전위 암호 (Transposition Cipher)
전위 암호는 메시지 문자들의 위치를 변경하여 암호화하는 방법이다. 문자들을 대치하지 않고 위치를 변환한다.
그 중 레일 펜스 암호(rail fence cipher)는 메시지를 일렬로 작성한 후, 특정한 규칙에 따라 위치를 바꾼다. 문자를 대치하지 않기에 원문과 동일한 알파벳 빈도를 가져 해독될 수 있다.
곱셈 암호 (Product Cipher)
곱셈 암호는 여러 암호화 방법을 사용한 기법이다.
대치 암호나 전위 암호만 사용하면 보안이 떨어진다. 따라서 대치 암호와 전위 암호를 같이 사용하여 보안성을 크게 올린다. 이는 고대 암호와 현대 암호를 이어주는 다리 역할을 한다.
스테가노그래피 (Steganography)
정보를 숨기는 기법이다. 예를 들어, 이미지의 픽셀의 끝에 비트를 붙여 사람의 눈으로는 인지할 수 없지만 존재하는 데이터를 만든다. 이는 정보의 보안성을 높이기 보다는 정보의 존재 자체를 숨기는 것에 의의가 있다.
'학교강의필기장 > 암호학' 카테고리의 다른 글
5. Random Number (2) | 2023.10.16 |
---|---|
4. DES, block/stream cipher mode (0) | 2023.10.15 |
3. AES (0) | 2023.10.12 |
2. 모듈러 연산 (1) | 2023.10.10 |
0. 암호학 개요 (0) | 2023.09.04 |