데이터 무결성 및 기밀성 확보를 위해 정보를 쉽게 해독할 수 없는 형태로 변환하는 기법이다.
양방향 알고리즘 - 대칭 키(암호화 키 = 복호화 키) , 비대칭 키(암호화 키 ≠ 복호화 키)
일방향 알고리즘 - 해시 함수
대칭 키 암호 방식
블록 암호 방식 : 긴 평문을 암호화하기 위해 고정 길이의 블록을 암호화하는 블록 암호 알고리즘을 반복하는 방법
스트림 암호 방식 : 매우 긴 주기의 난수열을 발생시켜 평문과 더물어 암호문을 생성하는 방식
비대칭 키 암호 방식
비대칭 키 암호 방식은 사전에 개인 키를 나눠 가지지 않은 사용자들이 안전하게 통신하는 방식이다.
공개키로 암호화된 메시지는 반드시 비밀키로 복호화해야 한다.
비대칭 키 암호 방식에서는 공개키와 비밀키가 존재하며, 공개키는 누구나 알 수 있지만, 그에 대응하는 비밀키는 키의 소유자만이 알 수 있어야 한다.
(공개키는 보안 타협 없이 공개적으로 배포가 가능하다.)
공개키 암호 방식에는 RSA, ECC, 디피 -헬만 등이 있다.
일방향 암호 방식은 임의의 길이의 정보를 입력받아, 고정된 길이의 암호문(해시값)을 출력하는 암호 방식이다.
해시 암호화 알고리즘이 적용된 정보는 복호화가 불가능하다.
해시 함수 기반 일방향 암호 방식
MAC : 키를 사용하는 메시지 인증 코드로 메시지의 무결성과 송신자의 인증 보장
(HMAC, NMAC)
MDC : 키를 사용하지 않는 변경 감지 코드로 메시지의 무결성 보장
(MD5, SHA)
DES
1975년 미국의 연방 표준국에서 발표한 대칭 키 기반의 블록 암호화 알고리즘 (64비트)
SEED
1999년 국내 한국인터넷진흥원이 개발한 블록 암호화 알고리즘 (128비트)