본문 바로가기
  • Always Awake
정보처리기사/5과목

[정보처리기사 필기] 암호 알고리즘

by NerdyBoy 2022. 3. 2.

개요


암호 알고리즘은 패스워크, 주민번호, 은행계좌와 같은 중요정보를 보호하기 위해 평문을 암호화된 문장으로 만드는 절차 또는 방법을 의미한다.

암호 방식 분류[1]

 

암호 방식


1. 개인키 암호화(Private Key Encryption) 기법

동일한 키로 데이터를 암호화 하고 복호화한다.

  • 데이터베이스 사용자는 평문의 정보 M을 암호화 알고리즘 E와 개인키(Private Key) K를 이용하여 암호문 C로 바꾸어 저장시켜 놓으면 사용자는 그 데이터베이스에 접근하기 위해서 복호화 알고리즘 D와 개인키 K를 이용하여 다시 평문의 정보 M으로 바꾸어 이용하는 방법 이다.

개인키 암호화 기법

  • 개인키 암호화 기법에서 암호화 대상이 n개일 때 사용되는 키의 개수는 2n이다.
  • 개인키 암호화 기법은 대칭 암호 기법또는 비밀키 암호화 기법이라고도 한다.
  • 한 번에 하나의 데이터 블록을 암호화 하는 블록 암호화 방식과, 평문과 동일한 길이의 스트림을 생성하여 비트/바이트/워드 단위로 암호화 하는 스트림 암호화 방식으로 분류된다.
  •  종류
    • 블록 암호화 방식 : DES, SEED, AES, ARIA
    • 스트림 암호화 방식 : LFSR, RC4
  • 장점 : 암호화/복호화 속도가 빠르며, 알고리즘이 단순하고 공개키 암호 기법보다 파일의 크기가 작다
  • 단점 : 사용자의 증가에 따라 관리해야 할 키의 수가 상대적으로 많아진다.

 

2. 공개키 암호화(Public Key Encryption) 기법

데이터를 암호화할 때 사용하는 공개키(Public Key)는 데이터 베이스 사용자에게 공개하고, 복호화할 때의 비밀키(Secret Key)는 관리자가 비밀리에 관리

  • 데이터베이스 사용자는 평문 M을 암호화 알고리즘 E와 공개키 P를 이용하여 암호문 C로 바꾸어 저장시켜 놓고, 이를 복호화하기 위해서는 비밀키와 복호화 알고리즘에 권한이있는 사용자만이 복호화 알고리즘 D와 비밀키 S를 이용하여 다시 평문의 정보 M으로 바꿀 수 있는 기법이다.

공개키 암호화 기법

  • 공개키 암호화 기법에서 암호화 대상이 n개일 때 사용되는 키의 개수는 n(n-1)/2
  • 비대칭 암호화 기법이라고도 하며, 대표적으로는 RSA(Rivest Shamir Adleman) 기법이 있다.
  • 장점 : 키의 분배가 용이하고, 관리해야 할 키의 개수가 적다
  • 단점 : 암호화/복호화 속도가 느리며, 알고리즘이 복잡하고, 개인키 암호화 기법보다 파일의 크기가 크다

 

양방향 알고리즘 종류

개인키, 공개키 암호화 방식에서 사용되는 주요 암호화 알고리즘에는 SEED, ARIA등이 있다. 자세한 종류는 다음과 같다.

더보기
SEED 1998년 한국 인터넷 진흥원(KISA)에서 개발한 블록 암호화 알고리즘
블록 크기는 128비트이며, 키 길이에 따라 128, 256으로 분류된다.
ARIA(Academy,
Research Institute,
Agency)
2004년 국가정보원과 산학여녑회가 개발한 블록 암호화 알고리즘
블록 크기는 128비트이며, 키 길이에 따라 128, 192, 256으로 분류된다.
DES(Data Encryption Standard) 1975년 미국 NBS에서 발표한 개인키 암호화 알고리즘
DES를 3번 적용하여 보안을 더욱 강화한 3DES도 있다.
평문을 64비트로 블록 화를하고, 실제 키의 길이는 56비트를 이용한다
AES(Advanced
Encryption Standard)
2001년 미국 표준 기술 연구소(NIST)에서 발표한 개인키 암호화 알고리즘
RSA(Rivest Shamir Adleman) 1978년 MIT의 라이베스트(Rivest), 샤미르(Shamir), 애들먼(Adleman)에 의해 제안된 공개키 암호화 알고리즘
큰 숫자를 소수분해하기 어렵다는것에 기반하여 만들어짐
공개키와 비밀키를 이용하는데 여기서 키란 메시지를 열고 잠그는 상수(Constant)를 의미

 

3. 해시(Hash)

임의의 길이의 입력 데이터나 메시지를 고정된 길이의 값이나 키로 변환하는 것을 의미한다.

  • 해시 알고리즘을 해시 함수라고 부르며, 해시 함수로 변환돈 값이나 키를 해시값 또는 해시키라고 부른다.
  • 무결성 검증을 위해 사용될 뿐만 아니라 정보보호의 다양한 분야에서 활용된다.
  • 복호화가 거의 불가능한 일방향 함수에 속한다.

해시함수 종류

SHA 시리즈 1993년 미국 국가안보국(NSA)이 처음 설계했으며, 미국 국립표준기술연구소(NIST)에 의해 발표되었다.
MD5 1991년 R.Rivest가 MD4를 대체하기 위해 고안한 암호화 해시 함수이다.
블록 크기는 512비트, 키 길이는 128비트
N-NASH 1989년 일본의 전신전화주식회사(NTT)에서 발표한 암호화 해시 함수
블록 키 길이 모두 128비트
SNEFRU 1990년 R.C.Merkle가 발표한 해시 함수

 

출처

자료 참고: 

시나공 정보처리기사 필기 2022를 참고하여 작성되었습니다

표지

 

[1] https://m.blog.naver.com/ehtm/221937255350

댓글