본문 바로가기
CS 지식

대칭키와 공개키

by chanfficial 2022. 11. 10.

대칭키 암호(symmetric-key algorithm)

: 암호화 알고리즘의 한 종류로, 암호화와 복호화 같은 암호 키를 사용하는 알고리즘

  • 대칭키 암호화에서는 암호화, 복호화에 동일한 암호키를 사용한다.
  • 그렇기 때문에 해당 암호키를 아는 사람만 문서를 복호화 할 수 있다.

 

대칭키 암호 방식의 장단점

  • 공개키 암호화 방식에 비해 속도가 빠르다.
  • 암호키를 공유하기 때문에 이를 교환할 때 키가 탈취될 수도 있는 키 배송 문제가 발생한다.

-> 이러한 키 배송 문제를 해결하기 위한 방법으로는 아래의 4가지가 존재한다.

  1. 키의 사전 공유에 의한 해결
  2. 키 배포 센터에 의한 해결
  3. Diffie-Hellman 키 교환에 의한 해결
  4. 공개키 암호에 의한 해결
  • 또한 사람이 증가할수록 각각 따로 암호키 교환을 해야하므로 관리해야 할 키가 방대해지는 문제가 있다.

 

대칭키 암호 방식에 해당하는 대표적인 알고리즘 DES, 3DES, AES, ARIA 등이 있고

대칭키 암호의 종류로는 아래와 같은 것들이 있다.

  1. 스트림 암호: 연속적인 비트 / 바이트를 계속해서 입력받아, 그에 대응하는 비트 / 바이트를 생성하는 방식
  2. 블록 암호: 정해진 한 단위(블록)를 입력받아 그에 대응하는 암호와 블록을 생성하는 방식

 


 

공개키 암호(Asymmetric Encryption)

: 대칭키 암호 방식의 키 교환 문제를 해결하기 위해 등장한 암호화 방식으로, 키가 공개되어 있기 때문에 키를 교환하지 않아도 모든 사람이 접근할 수 있다.

  • 각 사용자만이 가지고 있는 개인키가 존재한다. 
  • 암호화된 데이터는 수신자의 공개키에 대응되는 개인키를 갖고 있는 수신자만이 볼 수 있게 된다.

-> 데이터를 전송할 때 송신자는 수신자의 공개키로 암호화한 데이터를 보내고, 수신자는 본인의 개인키로 해당 데이터를 복호화해서 확인할 수 있다.

 

공개키 암호 방식의 장단점

  • 따로 암호키 교환이나 분배를 할 필요가 없어 기밀성을 제공한다. 
  • 암호화된 데이터를 복호화할 수 있는 건 개인키를 가진 수신자뿐이므로 일종의 인증 기능을 제공한다.
  • 그렇기 때문에 대칭키 암호 방식에 비해 속도가 느리다는 단점이 있다.

공개키 암호 방식의 대표적인 알고리즘에는 RSA, Elgamal 등이 있고

공개키 암호 방식의 종류에는 아래와 같은 것들이 있다.

  1. 디피-헬만 키 교환: 두 사람이 암호화되지 않은 통신망을 통해 공통의 비밀 키를 공유하는 암호키 교환 방식이다.
  2. Rabin 암호: 소인수분해를 기반으로 한 공개키 암호 방식이다.

 


'CS 지식' 카테고리의 다른 글

HTTP의 GET 과 POST  (0) 2022.11.12
HTTP 와 HTTPS  (0) 2022.11.12
TCP와 UDP의 특징과 차이  (0) 2022.11.04
OSI 7계층이란 ?  (1) 2022.11.03
[TCP] 3-way / 4-way handShake  (0) 2022.11.02