1. 암호화 방식/알고리즘
ㅇ 암호화 및 역암호화를 수행하는 방식/알고리즘
- 평문을 입력 받아, 암호 키를 사용하여, 이를 뒤섞고, 후에 이를 되돌림
2. 암호화 방식/알고리즘의 구분
ㅇ 공유 비밀 키(Shared Secret Key) 방식 (또는, 대칭키 방식)
* (암호화 및 역암호화 키가 서로 동일 : 대칭적)
- 블록 암호화 방식
. 한번에 하나씩 데이터 블록을 암호화
.. 데이터를 큰 블록으로 나누고,
현재의 출력 블록은 현재의 입력 블록에만 영향을 받는 방식의 알고리즘
.. 例) DES (Data Encryption Standard), AES (Advanced Encryption Standard),
SEED(국내표준/전자정부용)
- 스트림 암호화 방식
. 비트/바이트/단어(1/8/32 비트 등)들을 순차적으로 암호화
.. 비트나 바이트 처럼 데이터의 작은 단위들이 입력되며,
현재의 입력에 대한 출력은 과거의 입력에 대해 영향을 받는 방식의 알고리즘
.. 例) RC4 등
ㅇ 공개키 암호방식 (또는, 비대칭키 방식)
* (암호화 및 역암호화 키가 서로 다름 : 비 대칭적)
- 암호화 및 역암호화 키가 서로 다르며, 암호 키로부터 역암호화 키를 계산해낼 수 없기 때문에,
. 비대칭 키 알고리즘이라고 불리움
- 공개키는 공개하고, 비밀키 만 안전하게 유지하는 방식
. 공개 키(Public Key) : 암호화할때 사용하는 암호화키
. 비밀 키(Secrete Key) 또는 개인키(Private Key) : 암호를 풀 때 사용하는 키
.. 이 개인 키에 `유일하게 대응되는` 공개 키로 암호화한 것 만이 역암호화 가능
- 例) RSA(Rivest Shamir Adleman) 등
ㅇ (기타) 해시 알고리즘
- 임의 길이의 메세지를 일정 고정 길이의 해시 값으로 변환시켜주는, 단방향성 알고리즘
. 데이터의 `지문 (指紋)`으로 볼 수 있으며, 원래 데이터의 내용을 반영하는 고유한 값임
. 보안 및 데이터 무결성을 유지하는 데 중요한 역할을 함
- 例) MD4, MD5, SHA-1, SHA-2, SHA-3 등
3. 암호화 방식/알고리즘의 보안 강도
ㅇ 암호 알고리즘이나 암호 시스템의 암호 키 또는 해쉬 함수의 취약성을 찾아내는데 소요되는 작업량
- 작업량의 수치화 : 80,112,128,192,256 비트로써 정의
. 例) 80 비트의 보안강도는, 280번의 계산을 해야 만 암호키/암호알고리즘의
취약성을 알아낼 수 있음을 의미
- "암호 알고리즘 및 키 길이 이용 안내서 (KISA)" 참조 ☞ 한국인터넷진흥원 자료실