[정보처리기사 실기] 암호알고리즘 방식
양방향 방식
블록 암호 방식 : 긴 평문을 암호화하기 위해 고정 길이의 블록을 암호화하는 블록 암호 알고리즘을 반복하는 방법
스트림 암호 방식 : 매우 긴 주기의 난수열을 발생시켜 평문과 더불어 암호문을 생성하는 방식
비대칭키암호방식(=공개키 암호방식)
비대칭키 암호방식에서는 공개키와 개인키가 존재하며, 공개키는 누구나 알수 있지만, 그에 대응하는 개인 키는 키의 소유자만이 알수 있어야한다.
구분 | 대칭키 암호방식 | 비대칭키 암호 방식 |
키 | 대칭키(비밀키) | 비대칭 키(공개키, 사설키) |
키의 관계 | 암호화 키 = 복화화키 | 암호화 키 ≠ 복호화키 |
키 개수 | n(n-1)/2 | 2n |
알고리즘 | DES, AES, SEED | 디피-헬만, RSA |
대칭키 암호화 알고리즘
DES : 1975 IBM에서 개발하고 미국 연방 표준국에서 발표한 대칭키 기반 블록 알고리즘 64bit
SEED : 1999년 국내 한국인터넷진흥원이 개발한 블록 암호화 알고리즘
AES : 2001년 미국표준 기술 연구소에서 발표한 블록 암호화 알고리즘
ARIA : 2004년 국가정보원과 산학연구협회가 개발한 블록 암호화 알고리즘
IDEA : DES를 대체하기 위해 스위스 연방기술 기관에서 개발한 블록 암호화 알고리즘
LFSR : 시프트 레지스터의 일종으로, 레지스터에 입력되는 값이 이전 상태 값들의 선형 함수로 계산되는 구조로 되어있는 스트림 암호화 알고리즘
Skipjack : 미 국가안보국에서 개발한 Clipper 칩에 내장된 블록 알고리즘
비대칭키 암호화 알고리즘
디피-헬만 : 최초의 공개키 알고리즘으로 1976년에 고안한 알고리즘으로서 유한 필드내에서 이산대수의 계산이 어려운 문제를 기본원리로 하고있음 .
RSA : 1997년 3명의 MIT 수학교수가 고안한 큰 인수의 곱을 소인수분해하는 수학적 알고리즘 이용하는 공개키 암호화 알고리즘
ECC : 1985년 코블리치와 밀러가 RSA 암호 방식에 대한 대안으로 처음 제안 타원 곡선암호는 유한체 위에서 정의된 타원곡선 군에서의 이산대수의 문제에 기초한 공개키 암호화 알고리즘
ElGamal : T.ElGamal이 1984년에 제안한 공개키 알고리즘
해시암호화 알고리즘
MD5 : 1991년 R.rivest가 MD4를 개선한 암호화 알고리즘으로 프로그램이나 파일의 무결성 검사에 사용
SHA-1 : 1993년 NSA에서 미 정부 표준으로 지정되었고, DSA에서 사용
SHA-256/384/512 : SHA 알고리즘의 한 종류로서 256비트의 해시값을 생성하는 해시함수
HAS-160 : 국내 표준 서명 알고리즘을 위하여 개발된 해시함수
HAVAL : 메시지를 1024bits 블록으로 나누고 128,160,192,224,256 비트인 메시지 다이제스트를 출력하는 해시 알고리즘
데이터암호화전송
IPSec : IP계층(3계층)에서 무결성과 인증을 보장하는 인증헤더(AH)와 기밀성을 보장하는 암호화(ESP)를 이용한 IP보안프로토콜
SSL/TLS : 전송계층(4계층)과 응용계층(7계층) 사이에서 클라이언트와 서버간의 웹 데이터 암호화(기밀성), 상호 인증 및 전송시 데이터 무결성을 보장하는 보안 프로토콜
S-HTTP : 웹상에서 네트워크 트래픽을 암호화하는 주요방법중 하나로 클라이언트와 서버간에 전송되는 모든 메시지를 각각 암호화 하여 전송하는 기술이다 메세지 보호는 HTTP를 사용한 애플리케이션에 대해서만 가능하다.