키 캡슐화 메커니즘

Key encapsulation mechanism

암호화 프로토콜에서는 Key Encapsulation Mechanism(KEM;캡슐화 메커니즘)을 사용하여 비대칭(공개 키) 알고리즘을 사용하여 전송을 위한 대칭 키 재료를 확보한다.하이브리드 암호 시스템에서 일반적으로 사용됩니다.실제로 공개키 시스템은 긴 메시지 전송에 사용하기에는 서툴다.대신 비교적 짧은 대칭 키를 교환하는 데 자주 사용됩니다.그런 다음 대칭 키를 사용하여 긴 메시지를 암호화합니다.공개 키 시스템에서 대칭 키를 전송하는 기존 접근 방식은 먼저 랜덤 대칭 키를 생성한 다음 선택한 공개 키 알고리즘을 사용하여 암호화하는 것입니다.그런 다음 수신인은 공개 키 메시지의 암호를 해독하여 대칭 키를 복구합니다.대칭 키는 일반적으로 짧기 때문에 완전한 보안을 위해 패딩이 필요하며 패딩 방식의 보안 증명은 [1]완전하지 않은 경우가 많습니다.KEM은 공개 키 시스템의 기초가 되는 유한 그룹에서 랜덤 요소를 생성하고 해당 요소를 해싱함으로써 대칭 키를 도출함으로써 프로세스를 간소화함으로써 패딩의 필요성을 없앱니다.

RSA 암호화 사용 예시

RSA 시스템 문서에 사용된 것과 동일한 표기법을 사용하여 Alice가 평소처럼 개인 키를 비밀로 유지하면서 공개 키style(n, e)\ (그런 다음 Bob은 대칭 키 M을 Alice에게 보내려고 합니다.를 들어 M은 128 또는 256비트 AES 키일 수 있습니다.공용 n(\ n 일반적으로 1024비트 이상이며, 따라서 일반적인 대칭 키보다 훨씬 큽니다.e가 e < \ M^ { }< 로 작을 경우 일반 [2]정수 산술로 암호화를 빠르게 해제할 수 있습니다.

이러한 잠재적 약점을 피하기 위해 Bob은 먼저 OAEP와 같은 패딩 방식이라고 알려진 합의된 가역 프로토콜을 사용하여 M을 더 큰 1 < < \ 1 < < >로 변환합니다.그런 다음 다음과 같은 cc를 계산합니다.

Alice는 다음 계산에 의해 개인 키 d를 사용하여 c c로부터 {\d 수 있습니다.

mm을 하면 패딩 방식을 반대로 하여 원래 메시지 M을 복구합니다.

KEM을 사용하면 다음과 [3]같이 프로세스가 간소화됩니다.

Bob은 랜덤 대칭 키 M을 생성하는 대신 먼저 1m <{ 1 <m { m 생성합니다.그는 대칭 키 을 M 도출합니다.는 KDF(\ KDF) KDF(m)의 파생 키입니다그런 다음 mm에 하는 cc를 계산합니다.

그런 다음 Alice는 위와 같은 방법으로 개인 키 d(\d)를 사용하여c(\ c에서 m m 합니다.

m{ m하면 대칭 키 M을 M DF () { M= 복구할 수 있습니다.

KEM은 패딩 방식의 복잡성을 제거하고 패딩이 [1]안전하다는 것을 보여주기 위해 필요한 증거를 제시합니다.M은 KEM 접근법에서는 m{\ m에서 계산할 수 있지만 키 파생 함수가 단방향일 경우 그 반대가 불가능합니다.어떻게든 M을 회복한 공격자는 을 얻을 수 없습니다.패딩 어프로치에서는 얻을 수 있습니다따라서 KEM은 키를 캡슐화한다고 합니다.

동일한 m 사용하여 ee} 이상의 수신자에 키를 캡슐화하고 수신자는 동일한 e e를 공유하지만 pq n 다른 중국어 렘을 통해 m m 할 수 있습니다.연사 정리따라서 여러 수신자에 대한 키 캡슐화를 계산해야 할 경우 독립적인 값 m을 사용해야 합니다.

Diffie-Hellman 키 교환 및 기타 공개 키 [4]방식에서도 동일한 기술을 사용할 수 있습니다.

레퍼런스

  1. ^ a b 엄격한 보안성을 갖춘 OAEP 변종Draft 1.0, Jakob Jonson, 2002
  2. ^ RSA(알고리즘)# 일반 RSA에 대한 공격
  3. ^ 키 캡슐화: 공개키 암호화 XML 보안 작업반 F2F를 위한 새로운 체계, 2009년 5월
  4. ^ ECC용 PSEC-KEM

「 」를 참조해 주세요.