
SKP(봉인 키 보호)
데이터 보호를 지원하는 Apple 기기에서 KEK(키 암호화 키)는 시스템의 소프트웨어 측정값으로 보호되거나 봉인되며 Secure Enclave에서만 사용할 수 있는 UID에 연결됩니다. Apple Silicon이 탑재된 Mac에서 macOS는 다른 플랫폼에서 지원되지 않는 중요한 보안 정책 변경(예: 보안 시동 또는 SIP 비활성화)을 지원하기 때문에 시스템의 보안 정책에 대한 정보를 통합하여 KEK의 보호를 한층 강화합니다. Apple Silicon이 탑재된 Mac 시스템에서 FileVault는 데이터 보호(클래스 C)를 사용하여 구현되므로 이 보호에는 FileVault 키가 포함됩니다.
사용자 암호, 장기 SKP 키 및 하드웨어 키 1(Secure Enclave의 UID)를 연결하여 파생된 키는 암호 파생 키라고 합니다. 이 키는 지원되는 모든 플랫폼의 User keybag과 KEK(macOS만 해당)를 보호하고 Apple Watch와 같이 다른 기기에서 생체 인식 잠금 해제 또는 자동 잠금 해제를 활성화하는 데 사용됩니다.

Secure Enclave 시동 모니터는 로드된 Secure Enclave OS의 측정값을 캡처합니다. 응용 프로그램 프로세서 Boot ROM에서 LLB에 연결된 Image4 매니페스트를 측정할 때 해당 매니페스트는 로드된 다른 모든 시스템 페어링된 펌웨어의 측정값도 포함합니다. LocalPolicy는 로드된 macOS에 대한 핵심 보안 구성을 포함합니다. 또한 LocalPolicy는 macOS Image4 매니페스트의 해시인 nsih
필드를 포함합니다. macOS Image4 매니페스트는 모든 macOS 페어링 펌웨어 및 부트 커널 모음 또는 SSV(서명된 시스템 볼륨) 루트 해시와 같은 핵심 macOS 시동 개체의 측정값을 포함합니다.
위에서 측정한 펌웨어, 소프트웨어 또는 보안 구성 요소를 공격자가 예기치 않게 변경할 수 있는 경우, 하드웨어 레지스터에 저장된 측정값을 수정합니다. 측정값이 수정되면 키 계층의 봉인을 효과적으로 해제하며 암호화 하드웨어 파생 SMRK(시스템 측정 루트 키)가 다른 값으로 유도됩니다. 이는 SMDK(시스템 측정 장치 키)에 접근할 수 없도록 만들고, 이에 따라 KEK를 유발하여 데이터에 접근할 수 없게 됩니다.
하지만 시스템이 공격받고 있는 상황이 아닌 경우 LocalPolicy의 nsih
필드와 펌웨어 측정을 변경하는 합법적 소프트웨어 업데이트를 수용하여 새로운 macOS 측정값을 가리키도록 해야 합니다. 펌웨어 측정 통합을 시도하지만 신뢰할 수 있는 확인된 정보가 없는 다른 시스템에서는 사용자가 보안을 비활성화하고 펌웨어를 업데이트한 다음, 보안을 다시 활성화해야 새로운 측정 기준을 캡처할 수 있습니다. 이로 인해 소프트웨어 업데이트 중 공격자가 펌웨어를 변조할 수 있는 위험이 크게 증가합니다. Image4 매니페스트가 필요한 모든 측정값을 포함한다는 사실은 이 시스템에 도움을 줍니다. 일반적인 시동 과정 중 측정값이 일치하는 경우, SMRK로 SMDK를 암호화 해제하는 하드웨어는 제시된 향후 SMRK로 SMDK를 암호화할 수도 있습니다. 하드웨어는 소프트웨어 업데이트 후 예상되는 측정값을 지정함으로써 현재 운영 체제에서 접근 가능한 SMDK를 암호화하여 향후 운영 체제에서 접근할 수 있게 합니다. 마찬가지로 고객이 LocalPolicy에서 자신의 보안 설정을 합법적으로 변경하는 경우, 다음 재시동 시 LLB가 계산하는 LocalPolicy에 대한 측정값을 기반으로 하여 SMDK를 향후 SMRK로 암호화해야 합니다.