728x90
암호화 알고리즘 개요
양방향과 단방향
암호화와 복호화는 보안의 핵심 기술이다.
암호화 복호화는 크게 양방향과 단방향으로 나눌 수 있다.
참고로 복호화는 復號化 이고, 이 때 복은 회복하다에서 쓰는 복이다.
양방향 암호화
양방향 암호화 (Two-way Encryption) 는 대칭 키 암호화와 비대칭 키 암호화로 나눌 수 있다.
대칭 키 암호화 (Symmetric Encryption)
그림
원문 -> (암호화, 키 K) -> 암호문 -> (복호화, 같은 키 K) -> 원문
특징
암호화와 복호화에 동일한 키를 사용한다.
장점
속도가 빠르다.
단점
키 유출 시 보안 위험이 크다.
키 분배가 어렵다.
대표 알고리즘
AES (Advanced Encryption Standard)
가장 많이 사용된다.
128bit, 192bit, 256bit 가 있다.
DES / 3DES
예전에 사용한 방식이다.
요즘은 보안 취약점 때문에 쓰지 않는다.
RC4
특수한 경우에 사용한다.
Blowfish
특수한 경우에 사용한다.
비대칭 키 암호화 (Asymmetric Encryption)
그림
원문 -> (암호화, 공개키) -> 암호문 -> (복호화, 개인키) -> 원문
특징
서로 다른 공개 키(Public Key)와 개인 키(Private Key) 사용한다.
장점
키 분배가 용이하다.
공개 키는 배포 가능하기 때문이다.
단점
속도가 느리다.
대표 알고리즘
RSA
ECC (Eliptic Curve Cryptography)
ElGamal
단방향 암호화
"암호화한 데이터를 복호화해서 원래 상태로 되돌릴 수 있는 방식"
1.1. 대칭 키 암호화 (