요약

  • AES-XCBC-MAC-96는 128비트 결과 중 앞쪽 96비트를 IPsec 인증자로 전송합니다. RFC 3664는 대신 전체 128비트를 IKE의 PRF 출력으로 사용했습니다.
  • RFC 4434는 그 출력과 128비트 키에 대한 결과를 그대로 유지하되, 단일 크기 키 제한을 제거했습니다. IKEv2는 키 생성에는 고정 길이 의미를, 공유 비밀 인증에는 가변 길이 의미를 사용합니다.

하나의 구조, 세 가지 길이

이 역사에서 중요한 숫자는 단순히 “128비트”가 아닙니다. RFC 3566에서 AES-XCBC-MAC-96은 128비트 값을 계산하고 그 가장 왼쪽 96비트만 ESP 또는 AH 인증자로 전송합니다. 수신자는 전체 값을 계산한 뒤 같은 96비트를 비교합니다. 이 축약된 필드는 패킷 인증을 위해 설계된 것이며, 이 구조가 만들어낼 수 있는 전체 결과가 아닙니다.RFC 3566

IKE에는 의사 난수 함수(PRF)에 대한 다른 용도가 있었습니다. 그 출력은 키 생성에 공급되므로, RFC 3664는 96비트 PRF 출력이 IKEv1이나 IKEv2에서 장기적으로 사용하기에 너무 짧다고 판단했습니다. 조정은 의도적으로 좁은 범위를 가졌습니다. AES-XCBC 구조를 취하되 마지막 절단을 생략한 것입니다. 그 결과는 128비트 PRF 출력입니다. 이것이 IKE가 생성하는 모든 키가 128비트라는 뜻은 아닙니다. 그 출력은 프로토콜별 키 유도의 입력이 됩니다.RFC 3664

RFC 3664는 처음에 AES-XCBC-MAC-96의 또 다른 규칙을 그대로 이어받았습니다. 키는 정확히 128비트여야 한다는 규칙이었습니다. PRF는 전폭 출력을 가졌지만 입력 키는 고정 크기였습니다. 공유 비밀의 길이가 그와 다른 IKE 구현체들에게는 이 명세 경계가 불편했습니다. 이후 문서는 128비트 키에 대한 128비트 결과를 바꾸지 않았습니다. 바뀐 것은 AES 기반 연산 전에 입력 키를 어떻게 정규화하는지였습니다.RFC 3664 메타데이터 및 정정 사항RFC 3664 정정 사항

2006년의 정정은 입력에 관한 것이었다

RFC 4434는 정확히 128비트여야 한다는 제한을 제거하고 변환 과정을 명시했습니다. 128비트 키는 그대로 사용됩니다. 더 짧은 키는 오른쪽에 0비트를 채워 128비트에 이르게 합니다. 129비트 이상인 키에 대해서는 전부 0인 128비트 키를 사용하고 긴 키를 메시지로 하여 PRF를 다시 적용하며, 그 출력이 정규화된 키가 됩니다. 긴 키 경로는 일반적인 절단이 아니며, 범용 해시로 설명해서는 안 됩니다.RFC 4434

이 변경이 중요한 이유는 “같은 알고리즘”이라는 표현이 두 가지 질문을 숨길 수 있기 때문입니다. 즉, 어떤 바이트가 회선에 전송되는지, 그리고 구현체들이 어떤 입력을 받아들이기로 합의하는지입니다. RFC 4434는 128비트 키는 RFC 3664와 동일한 회선 결과를 유지한다고 명시합니다. 다른 길이는 더 이상 거부되지 않고, 새 규칙에 따라 128비트 AES 키로 변환됩니다. 명세된 출력은 여전히 절단되지 않은 128비트 XCBC 값이며, 96비트 ESP/AH 인증자가 아닙니다.RFC 4434 메타데이터 및 정정 사항RFC 4434 정정 사항

IKEv2는 키에 두 가지 역할을 부여했다

후속 문서는 IKEv2 내부에서 구분을 만들었습니다. AES-XCBC-PRF-128이 키 재료를 생성할 때는 고정 길이 PRF로 취급됩니다. IKEv2 절차는 명세대로 두 논스 사이에 기여분을 나눕니다. 같은 PRF가 공유 비밀을 인증할 때는 RFC 4434가 이를 가변 길이로 취급하므로, 비밀 자체가 128비트일 필요가 없습니다. 이 문서는 이 논리를 “다소 비틀린” 것이라 부르며, 그 명시된 목적은 RFC 3664의 고정 키 규칙을 따르는 구현체와 더 유연한 규칙을 사용하는 구현체 간의 상호운용성입니다.RFC 4306RFC 4434

이것은 결과를 좌우하는 경계를 가진 작은 표준 개정입니다. PRF는 하나의 출력 폭을 가지면서도 프로토콜은 용도에 따라 서로 다른 입력 키 의미를 부여할 수 있습니다. “128”을 보편적인 키 크기로 읽으면 첫 번째 구분이 무너지고, 96비트 MAC 필드를 PRF 출력으로 읽으면 두 번째 구분이 무너집니다. RFC 8221의 이후 ESP/AH 권고는 패킷 인증 알고리즘에 관한 것이며, IKE PRF 협상이나 구현 동작에 대한 증명이 아닙니다.RFC 8221

기록이 보여주는 것은 인터페이스 계약에 대한 정정이며, 특정 구현체가 실패했다거나 수정된 규칙이 배포된 시스템에서 보편화되었다는 증거가 아닙니다. RFC 4434는 전폭 결과를 유지하고, 128비트 키 사례를 보존하며, 더 짧고 긴 입력이 AES에 어떻게 도달하는지를 명시했습니다. 이 역사는 그 별개의 단계들에 자리합니다. 패킷 필드를 위해 MAC을 절단하고, IKE의 PRF를 위해 전체 값을 유지하고, 수행하는 역할에 따라 키를 정규화합니다.

출처