대칭키와 공개키

Junwoo Park·2022년 9월 28일
0

면접질문 정리

목록 보기
5/5

정리

  • 대칭키 암호(Symmetric key)란 암호문을 생성(암호화)할 때 사용하는 키와 암호문으로부터 평문을 복원할 때 사용하는 키가 동일한 암호 시스템으로 일반적으로 알고 있는 암호 시스템이다.
  • 공개키 암호는 대칭키 암호의 키 전달에 있어서 취약점을 해결하고자 한 노력의 결과로 탄생했다. 한 쌍의 키가 존재하며, 하나는 특정 사람만이 가지는 개인키(또는 비밀키)이고 다른 하나는 누구나 가질 수 있는 공개키이다.
    • 공개키 암호화 방식은 암호학적으로 연관된 두 개의 키를 만들어서 하나는 자기가 안전하게 보관하고 다른 하나는 상대방에게 공개한다
    • 개인키로 암호화 한 정보는 그 쌍이 되는 공개키로만 복호화가 가능하고, 공개키로 암호화한 정보는 그 쌍이 되는 개인키로만 복호화가 가능하다

질문

  1. SSL인증서에서 공개키가 어떻게 사용되나요?
    : SSL인증서는 데이터를 암호화하는 보안기능을 가진 인증서입니다. 그리고 SSL통신에 사용할 공개키를 클라이언트에게 제공합니다. 이때 공개키가 사용되는 방식을 확인해보면 다음과 같습니다.
    SSL은 공개키와 대칭키 방식을 모두 사용합니다. 이때 공개키 방식으로 대칭키를 전달하고 이후 서로 공유된 대칭키를 가지고 통신하게 됩니다.

  2. 대칭키와 공개키의 차이에 대해 알려주실수 있나요?
    : 대칭키는 암호화/복호화에 사용되는 키가 동일한 암호화 기법입니다. 이때문에 생기는 단점이 키의 공유가 어렵다는 것입니다. 이 단점을 보완한 방식이 공개키 방식입니다. 공개키는 2개의 키를 가지게 됩니다. A키로 암호화를 하면 B키로 복호화를, B키로 암호화를 하면 A키로 복호화를 할수있는 방식입니다.

  3. 공개 키의 암호화 과정을 간단히 설명해주세요
    : A,B키중 하나를 개인키로 해서 자신만 가지고 있고 나머지를 공개키로 지정해 대중들에게 공개합니다. 상황의 예를 들어보자면 클라이언트가 공개키를 사용해 암호화하면 서버는 개인키를 사용해 복호화할수있습니다. 서버가 개인키를 이용해 클라이언트에게 정보를 전달하면 클라이언트들은 공개키를 사용해서 복호화과정을 진행할수있습니다.

profile
배움을 멈추지 않는 개발자, 박준우입니다.

0개의 댓글