암호화 알고리즘

보안/신기술암호 알고리즘
읽는데 7분 소요
처음 쓰여진 날: 2025-09-25
마지막 수정일: 2025-09-25

요약

정보처리기사 실기 시험에 자주 출제되는 대칭키(DES, SEED, AES), 비대칭키(디피-헬만, RSA, ECC), 해시(MD5, SHA) 암호화 알고리즘의 핵심 개념과 차이점을 비교 분석하고 예상 문제를 풀어봅니다.

대칭키 암호화 알고리즘

대칭키 암호화는 암호화와 복호화에 동일한 키 를 사용하는 방식입니다. 키가 하나만 존재하므로 키 관리가 매우 중요하지만, 암호화 속도가 빠르다는 장점이 있습니다.

주요 대칭키 알고리즘 비교

알고리즘주요 특징
DES최초 표준, IBM 개발, 56비트, 현재 취약함
SEED국산 알고리즘, KISA 개발, 128비트, 한국 최초 표준
AESDES 성능 문제 극복, NIST 개발, 128비트, 널리 사용

핵심 요약:

  • DES: 최초의 표준이었지만, 키 길이가 짧아 현재는 취약합니다.
  • AES: 현존하는 가장 안전하고 널리 쓰이는 대칭키 알고리즘입니다.
  • SEED: 최초의 국산 대칭키 알고리즘입니다.(2004년 ARIA로 대체)

비대칭 (공개키) 암호화 알고리즘

비대칭키 암호화는 암호화 키와 복호화 키를 분리하여 사용하는 방식입니다. 하나는 모두에게 공개(공개키)하고, 다른 하나는 비밀로 간직(개인키)합니다. 대칭키 방식보다 속도는 느리지만, 키를 안전하게 교환할 수 있다는 큰 장점이 있습니다.

주요 비대칭키 알고리즘 비교

알고리즘주요 특징
디피-헬만키 교환, 이산 로그, 최초 공개키
RSA소인수분해, 전자서명, 가장 널리 사용
ECC타원곡선, 짧은 키, 모바일 유리

핵심 요약:

  • 디피-헬만: 최초의 공개키 알고리즘
  • RSA: 소인수분해의 어려움을 기반으로 하며, 가장 대중적인 비대칭키 알고리즘입니다.
  • ECC: RSA 대안으로, 짧은 키 길이로 높은 보안성을 제공하여 성능이 우수합니다. 모바일 환경에 적합합니다.

블록 암호화 알고리즘

블록 암호화는 데이터를 고정된 크기의 블록으로 나누어 암호화하는 방식입니다. 대부분의 대칭키 알고리즘이 블록 암호화 방식을 사용하지만, 특수 목적이나 초기 개발된 알고리즘들을 별도로 분류합니다.

주요 블록 암호화 알고리즘 비교

알고리즘주요 특징
IDEA초기 블록 암호화, 스위스 개발, 128비트 키, 64비트 블록
Skipjack음성 암호화, NSA 개발, 80비트 키, 64비트 블록, 전화기 적용

핵심 요약:

  • IDEA: 초기 블록 암호화 알고리즘으로 스위스에서 개발되었으며, 특허로 인해 사용이 제한적입니다.
  • Skipjack: NSA에서 개발한 알고리즘으로 음성 암호화에 주로 사용되며, 전화기 등에 적용됩니다.

해시 암호화 알고리즘

해시 알고리즘은 임의의 길이의 데이터를 고정된 길이의 해시 값으로 변환하는 단방향 함수입니다. 복호화가 불가능하며, 주로 데이터의 무결성 검증이나 패스워드 저장에 사용됩니다.

해시 함수

해시 함수는 임의의 길이의 데이터를 고정된 길이의 해시 값으로 변환하는 함수입니다. 해시 함수는 다음과 같은 특징을 가집니다.

  • 단방향 함수: 복호화가 불가능합니다.
  • 충돌 저항: 서로 다른 입력에 대해 동일한 해시 값을 생성하지 않습니다.
  • 아무리 큰 숫자를 넣더라도 해시 값은 고정된 길이를 가집니다.

주요 해시 암호화 알고리즘 비교

알고리즘주요 특징
MD5128비트, 충돌 취약, 사용 금지
SHA-1160비트, 충돌 취약, 사용 중단
SHA-2256/384/512비트, 안전, 널리 사용

핵심 요약:

  • MD5, SHA-1: 충돌(Collision) 취약점이 발견되어 더 이상 사용해서는 안 됩니다.
  • SHA-2 계열 (SHA-256 등): AES의 키 길이에 대응하여 현재 보안 표준으로 가장 널리 사용되는 안전한 해시 알고리즘입니다.

정보처리기사 실기 대비 문제

기출
문제
다음은 암호화 알고리즘에 대한 설명이다. 괄호 안에 들어갈 가장 적절한 용어를 쓰시오. ( 1 )은/는 암호화와 복호화에 사용하는 키가 동일하다. 비밀키 전달을 위한 키교환이 필요하다. ( 2 )은/는 공개키와 개인키가 존재하며, 공개키는 모두에게 공개되고, 개인키는 소유자만 알 수 있다.
답변
1:
2:
정답정답 보기
기출
문제
DES의 성능과 한계를 극복하기 위해 NIST에서 개발한 암호화 알고리즘이다. 128bit 블록크기를 가지며 키 길이에 따라 128, 192, 256bit를 사용할 수 있다. 이 대칭키 알고리즘은 무엇인가요?
답변
정답정답 보기
기출
문제
임의의 길이의 데이터를 고정된 길이의 해시 값으로 변환하는 단방향 함수를 무엇이라고 하는가?
답변
정답정답 보기
기출
문제
다음은 암호화 알고리즘에 대한 설명이다. 괄호 안에 들어갈 가장 적절한 용어를 쓰시오. ( 1 )은/는 초기에 제시된 블록 암호화 알고리즘으로 128bit 키를 사용하여 64bit 평문을 8라운드에 거쳐 64bit의 암호문으로 만든다. ( 2 )은/는 NSA에서 개발한 블록 알고리즘으로 전화기와 같은 음성을 암호화하는 데 주로 사용된다. 64bit 입출력과 80bit 키를 사용한다.
답변
1:
2:
정답정답 보기
기출
문제
1975년 IBM에서 개발하였으며, 미국 국방성에 의해 데이터 암호화 표준으로 지정되었다. 블록 크기는 64비트이며, 56비트의 키를 사용한다. 현재는 키 길이의 한계로 인해 보안상 취약점이 발견되어 사용이 권고되지 않는다. 다음에서 설명하는 암호화 알고리즘은 무엇인지 쓰시오.
답변
정답정답 보기
문제
소인수분해의 어려움을 기반으로 하는 대표적인 비대칭키 암호화 알고리즘이다. 암호화뿐만 아니라 전자서명 기능도 제공한다. 현재 가장 널리 사용되고 있는 공개키 암호화 알고리즘이다.
답변
정답정답 보기
문제
다음은 대칭키 암호화 알고리즘과 비대칭키 암호화 알고리즘에 대한 설명이다. 괄호 안에 들어갈 가장 적절한 용어를 쓰시오. ( 1 )은/는 암호화와 복호화에 사용하는 키가 동일한 암호화 방식이다. 반면, ( 2 )은/는 암호화와 복호화에 사용하는 키가 서로 다른 암호화 방식으로, 키 생성 속도가 느리고 암복호화 속도가 느리다는 단점이 있다.
답변
1:
2:
정답정답 보기