봄수의 연구실

공개 키 본문

Computer Science/Security

공개 키

berom 2023. 4. 5. 21:46

공개 키

오늘은 공개 키 암호의 기본적인 개념을 살펴보고 키 분배 문제에 대한 준비 과정을 알아보자

공개 키 알고리즘은 수학적 함수에 근거해서 만들었다.

  1. 서로 다른 두 개의 키를 이용하는 비대칭 방식
  2. 두 개의 키를 사용하기 때문에 기밀성과 키 분배, 인증 분야에서 성능이 뛰어나다.

공개 키 암호 시스템은 크게 아래 3 분류로 나눌 수 있다.

  1. 암호화/복호화 - 공개키로 메시지를 암호화
  2. 디지털 서명 - 자신의 개인키로 복호화
  3. 키 교환 - 세션 키 교환을 위해 상호 협조

공개 키 암호에 대한 오해

  1. 공개 키 암호가 관용 암호보다 해독에 있어 안전하다
    • 암호 시스템의 안전도는 키의 길이와 암호를 뚫는데 필요한 계산량에 따라 달라진다
    • 근본적으로 공개 키 암호화 관용 암호 중 어느 것이 더 암호 해독에 더 강하다고 말할 근거가 전혀 없다
  2. 대칭 암호는 더 이상 사용하지 않는다?
    • 오히려 그 반대로 현재 사용 되는 공개 키 암호 시스템은 계산량이 많아 대칭 암호를 아직도 사용하다
  3. 대칭 암호는 키 분배 센터를 이용해야해서 성가시지만, 공개 키를 사용하면 키 분배가 매우 쉽다???
    • 공개 키 암호도 모종의 프로토콜이나 중앙 에이전트가 필요할 때가 있다
    • 사용하는 절차도 대칭 암호와 비교 할 때 더 단순하다거나 더 효과적이라고 말하기 어렵다

공개 키 암호 구조의 핵심

  • 평문
  • 암호 알고리즘
  • 공개 키와 개인 키
  • 암호 문
  • 복호 알고리즘

핵심 단계

  1. 사용자는 한 쌍의 키를 생성하여 하나는 메시지 암호화에 사용하고, 다른 하나는 복호화에 사용한다
  2. 사용자는 두 키 중 하나를 공개한다. 공개 키와 쌍을 이루는 것을 개인 키라고 한다.
  3. 다른 사람에게 메시지를 보내고 싶으면 해당 사람의 공개 키로 암호화를 해서 상대방에게 보낸다.
  4. 받는 사람은 자신의 개인키로 받은 메시지를 복호화 한다.

일반적으로 대칭/공개 키 암호에서 사용 되는 키는 구분 되어 불린다

  • 대칭 암호에서 사용 되는 키는 일반적으로 비밀키라 불린다
  • 공개 키 암호에서 사용 되는 키는 공개키와 개인 키라고 불린다

공개 키 암호 요건

공개 키 암호에서 요구하는 조건을 서술하면 아래와 같습니다

공개키 암호 시스템에서는 A라는 송신자가 B라는 수신자에게 보내려는 메시지를 암호화하는 과정에서, B는 자신의 개인키(PRb)를 사용하여 암호문©을 원문(M)으로 복호화할 수 있습니다.

  1. B는 한 쌍의 키(공개키: 𝑃𝑈𝑏 , 개인키: 𝑃𝑅𝑏 )를 생성한다.
  2. 송신자 A는 공개키와 평문 𝑀을 알고 있으며, 암호문을 계산적으로 쉽게 구한다.
  3. A는 공개키와 암호문 𝐶를 전송한다.
  4. 수신자 B는 자신의 개인키를 이용하여 원문으로 복호화 한다.
  5. 공격자가 공개키와 암호문을 알고 있어도, 개인키를 알아내는 것이 계산적으로 불가능해야 한다.
  6. 공격자가 공개키와 암호문을 알고 있어도, 원문을 알아내는 것이 계산적으로 불가능해야 한다.
  7. 2개의 키 중 어느 하나를 암호화에 사용하면 다른 하나는 복호화에 사용 할 수 있다.

레퍼런스

728x90

'Computer Science > Security' 카테고리의 다른 글

Diffie-hellman  (0) 2023.04.08
RSA는 무엇인가?  (0) 2023.04.05
블록 암호 기반 MAC(CMAC)  (0) 2023.04.04
HMAC  (0) 2023.04.04
메시지 다이제스트  (0) 2023.04.03