#암호 #암호문 #암호화 #복호화 #키 #전치법 #치환법 #대칭키 #공개키 #키분배 #DES #IDEA #RSA #AES #ECC #ElGamal

암호의 정의

암호의 정의

  • 두 사람이 안전하지 않은 채널을 통해 정보를 주고 받더라도, 제 3자는 정보의 내용을 알 수 없도록 하는 것.
  • 암호화와 복호화는 “키” 를 통해 수행되며, 이 키는 암호화, 복호화를 위한 가장 중요한 열쇠가 된다.

암호의 구성요소 설명
평문 plaintext. 원래의 메시지.
암호문 cipthertext. 코드화된 메시지.
암호화 encryption. 평문을 암호문으로 변환하는 것.
복호화 decryption. 암호문을 평문으로 변환하는 것.
암호화와 복호화에 사용되는 요소

고대 암호

전치법 (전치 암호, 순열 암호)

  • permutation 혹은 transposition cipher
  • 평문에 있는 문자들의 순서를 바꿈으로써 암호화하는 기법
  • e.g. 스파르타의 봉 암호 : 기원전 400년대 스파르타 사람들이 군사용으로 사용하던 암호방식
  • 여기서 키는 순서를 뒤섞는 방법 이 된다. 스파르타의 봉 암호의 키는 “봉의 굵기” 가 됨.

치환법

  • substitution cipher
  • 평문의 문자들을 다른 문자로 치환(바꿈)함으로써 암호화하는 기법
  • 치환 규칙에 따라 암호화 및 복호화를 한다.

시저 암호

  • 평문의 각 문자를 알파벳 순서상 세 문자 뒤에 위치하는 문자로 치환
  • (암호화) APPLE -> DSSOH
  • (복호화) DSSOH -> APPLE

시프트 암호

  • 평문의 각 문자를 알파벳 순서상 k 번째 뒤 문자로 치환 (0 <= k <= 25)
  • 예를 들어 5번째 뒤의 문자로 치환한다면
  • (암호화) APPLE -> FUUQJ
  • (복호화) FUUQJ -> APPLE

현대 암호

대칭키 암호

대칭키 암호의 개념

  • 암호화와 복호화에 같은 키(비밀키) 하나를 사용하는 암호방식
  • 장점 : 암호화와 복호화의 속도가 빠르다.
  • 단점 : 키 분배 문제 존재
  • 키 분배 문제 : 키를 제 3자에게 노출하지 않으면서, 송신자가 수신자가 공유하기 어려움. (도중 탈취 가능성)
  • 대표적인 알고리즘 : DES, AES, IDEA 등

대칭키 암호 알고리즘은 이름 중간에 E 가 들어간다.

블록 암호와 스트림 암호

  • 블록 암호 : 평문을 고정된 크기의 블록으로 나눈 뒤, 각 블록마다 암호화 과정 수행
  • 스트림 암호 : 평문과 같은 길이키 스트림을 생성해, 평문과 키를 비트 단위로 XOR 하여 암호화 함

공개키 암호

  • 암호화와 복호화에 두 개의 서로 다른 키를 사용하는 암호 방식
  • 암호화 때는 공개키를 이용해 암호화 하며, 복호화 때는 개인키를 이용해 복호화할 수 있다.
  • 공개키 : 누구나 공개키를 이용해 암호화할 수 있음
  • 개인키 : 오직 키 소유 주체 자신만 개인키를 이용해 복호화할 수 있음
  • 장점 : 키 관리가 쉬우며, 키 분배 문제가 없음
  • 단점 : 대칭키 암호에 비해 속도가 느림
  • 대표적인 알고리즘 : RSA, ECC, ElGamal 등.

Reference

컴퓨터 보안 - 김진욱, 유대현, 김희천 저

Comments