
NFC 및 SE 플랫폼 보안
Apple이 개발한 보안 솔루션인 NFC 및 SE 플랫폼은 공인 개발자가 iOS 앱 내에서 기능을 제공할 수 있도록 지원합니다. iOS 18.1 이상이 설치된 기기에서는 개발자가 Secure Element에 자격 증명을 저장할 수 있습니다. 저장된 자격 증명은 결제, 출입, 대중교통 이용, 고객 보상 프로그램 및 티켓에 사용할 수 있습니다. 개발자는 카드 세부사항을 비롯한 사용자의 개인정보와 데이터를 보호해야 합니다. 이 플랫폼은 iPhone 하드웨어, 소프트웨어, Apple 서버의 보안 기능을 제공합니다. 개발자는 Secure Element, 생체 인증 센서, Secure Enclave, Apple 서버를 사용하여 다음 사용 단계에서 자격 증명을 보호할 수 있습니다.
참고: 개발자에게 NFC 및 SE 플랫폼을 사용할 수 있는 권한을 부여해야 합니다. 이렇게 하면 개인정보 보호 및 보안 표준을 준수하려는 공인 개발자만 NFC 및 SE 플랫폼을 사용할 수 있습니다.
NFC 및 SE 플랫폼 구성요소 보안
NFC 및 SE 플랫폼은 개발자가 iPhone 사용자와 안전하게 거래하도록 하드웨어 및 소프트웨어에 대한 접근 권한을 제공합니다.
Secure Element
Secure Element는 Java Card 플랫폼을 실행하는 업계 표준 집적 회로입니다. EMVCo와 CC(공통 평가 기준)의 인증을 모두 받았으며 NFC 및 SE 플랫폼용으로 승인된 애플릿을 포함한 Java Card 애플릿을 지원합니다. 또한 NFC 및 SE 플랫폼 애플릿의 인증과 활성화를 관리하기 위한 특수 애플릿도 있습니다. 자격 증명 데이터를 암호화한 후 고유 키를 사용하여 해당 애플릿으로 보낼 수 있습니다. 이 데이터는 애플릿에 저장되며 Secure Element의 보안 기능으로 보호됩니다. 거래 중에 단말기는 NFC 컨트롤러를 통해 Secure Element와 직접 통신합니다.
NFC 컨트롤러
NFC 컨트롤러는 NFC 프로토콜을 처리하며 응용 프로그램 프로세서와 Secure Element 간의 통신 및 Secure Element와 POS 단말기 간의 통신을 전달합니다. NFC 컨트롤러를 사용하면 기기와 가까운 거리에 있는 단말기를 통해 비접촉식 거래를 진행할 수 있습니다. NFC 컨트롤러는 범위 내의 단말기가 보내는 요청만을 비접촉식 거래로 인식합니다.
사용자가 Face ID, Touch ID 또는 휴대폰의 암호를 사용하여 거래를 진행하도록 승인하면 Secure Element 내의 NFC 및 SE 플랫폼 애플릿이 준비한 비접촉식 응답이 NFC 컨트롤러를 통해 NFC 필드로만 단독으로 전달됩니다. 그 결과 비접촉식 거래의 세부 사항이 로컬 NFC 필드에 포함되어 응용 프로그램 프로세서에 노출되지 않습니다.
Secure Enclave
Secure Enclave는 기기에서 사용자 인증 및 보안 의사 프로세스를 관리하여 승인된 거래가 진행되도록 합니다. Secure Enclave와 Secure Element 간의 통신은 직렬 인터페이스를 통해 이루어지며 Secure Element는 NFC 컨트롤러에 연결된 이후 다시 응용 프로그램 프로세서에 연결됩니다. Secure Enclave와 Secure Element는 직접 연결되지 않더라도 런타임 시 생성된 공유 비밀을 사용하여 안전하게 통신할 수 있으며 필요에 따라 통신 링크에서 기밀성과 무결성을 제공하기 위해 사용될 수도 있습니다.
Apple 서버
Apple 서버는 NFC 및 SE 플랫폼 파트너의 승인된 애플릿 패키지를 호스트합니다. 또한 NFC 및 SE 플랫폼에서 사용되는 보안 도메인과 애플릿을 비롯하여 Secure Element에서의 설정과 생성을 관리합니다.
애플릿 및 구성
NFC 및 SE 플랫폼을 사용하려면 개발자는 자격 증명을 지원하는 애플릿 번들과 제품 구성이 있어야 합니다. 모든 애플릿을 Secure Element에 안전하게 설치하려면 Apple에 전송하기 전에 공인된 타사 보안 평가 연구소에서 보안 검토를 받아야 합니다. Apple에 전송한 후 애플릿 번들과 관련 제품 구성의 검토를 거쳐 승인을 받은 경우에만 NFC 및 SE 플랫폼에서 사용할 수 있습니다. 승인을 받으면 Apple 서버에서 애플릿 패키지에 서명한 후 호스트합니다.
또한 개발자는 법률, 규정 또는 결제 네트워크 운영자의 요구 사항과 같은 사용 사례와 운영 계획에 따라 애플릿에 필요한 기타 모든 인증 또는 자격 요건을 획득할 독자적인 책임이 있습니다.
자격 증명 권한 설정
NFC 및 SE 플랫폼 개발자는 사용자가 새로운 자격 증명의 권한을 설정하는 프로세스를 안전하게 보호할 책임이 있습니다. 여기에는 iOS 앱의 사용자 인증, 사용자가 입력한 민감한 데이터의 보호 및 확인, 서버와의 통신, 자격 증명 추가를 위한 승인, 자격 증명 권한 개시, 개인 맞춤화 데이터 처리와 같은 단계가 포함될 수 있습니다. 또한 개발자는 해당 솔루션이 자격 증명 권한 설정 및 사용의 보안과 관련된 모든 해당 규정과 업계 표준을 충족하는지 확인할 책임이 있습니다.
iOS 앱에서 새로운 자격 증명을 생성하도록 요청하면 NFC 및 SE 플랫폼은 해당 요청을 Apple 서버로 전송합니다. 요청된 제품 구성과 관련된 애플릿이 아직 Secure Element에 다운로드되지 않은 경우 Apple 서버는 서명된 패키지를 Secure Element에 다운로드하기 시작합니다. 그런 다음 새로운 자격 증명을 저장하는 데 사용될 Secure Element의 분리된 보안 도메인 내에 새로운 애플릿 인스턴스가 설치됩니다. 설치를 마치면 개발자가 선택한 TSM(Trusted Service Manager)은 키와 계정 번호 같은 필요한 자격 증명 데이터로 애플릿 인스턴스를 비공개로 개인 맞춤화할 수 있습니다.
보안 저장 장치 및 접근
Secure Element의 하드웨어 및 소프트웨어 보안 기능은 보관 중이거나 사용 중인 NFC 및 SE 플랫폼 자격 증명을 모두 보호하는 데 사용할 수 있습니다. 개발자는 Secure Element 애플릿이 안전한 방식으로 구현되고, 보안 지침을 따르며, 플랫폼에서 제공할 수 있는 보안 기능을 최대한 활용하여 자격 증명 데이터를 적절하게 보호해야 합니다.
NFC 및 SE 플랫폼은 제품 구성 및 애플릿 인스턴스에 대한 접근을 관련 iOS 앱으로 제한합니다. 따라서 승인되지 않은 앱은 수정하거나 사용하기 위해 상호 작용할 수 없습니다. 관련 iOS 앱에서만 다음을 수행할 수 있습니다.
애플릿 인스턴스 생성 요청하기
애플릿 인스턴스에 명령 개인 맞춤화, 업데이트 및 전송하기
거래 시작하기
애플릿 인스턴스 삭제 요청하기
거래 승인
앱에서 진행하는 모든 거래는 사용자의 승인을 받아야 합니다. NFC 및 SE 플랫폼은 앱 개발자에게 확실하게 승인받을 수 있는 방법을 제공합니다. 사용자는 물리적인 제스처를 결합한 생체 인식이나 암호를 통해 Secure Enclave에 거래를 승인합니다. 승인을 받으면 Secure Enclave는 인증 데이터를 Secure Element에 전송합니다. 그러면 Secure Element가 이를 확인하고 애플릿에 NFC 인터페이스를 활성화하도록 알립니다. NFC 및 SE 플랫폼 개발자는 거래 승인 메커니즘을 안전하게 활용하고 거래를 수행하기 위해 Apple에서 제공하는 사양에 따라 iOS 앱과 Secure Element 애플릿을 구현해야 합니다.
거래를 시작하려면 iOS 앱을 전면에서 실행하고 iPhone을 잠금 해제해야 합니다. 설정에서 iOS 앱을 기본 비접촉식 앱으로 설정한 경우, 사용자가 측면 버튼(Face ID 기기) 또는 홈 버튼(Touch ID 기기)을 두 번 클릭하고 (iPhone이 잠겨 있는 경우) 사용자 인증을 마치면 해당 앱이 자동으로 실행됩니다.
또한 개발자의 NFC 및 SE 플랫폼 iOS 앱은 거래에 사용될 자격 증명을 사용자에게 명확하게 알리고 모든 관련 거래 세부 정보를 표시해야 합니다.
수명 주기 관리
개발자는 NFC 및 SE 플랫폼 API를 사용하여 자격 증명 데이터를 업데이트하거나 자격 증명을 삭제한 다음 iOS 앱에서 애플릿에 적절한 명령을 보낼 수 있습니다. 자격 증명을 정지하거나 연결 해제하는 기능을 추가할 수도 있지만 이 기능은 NFC 및 SE 플랫폼에서 제공하지 않습니다.
모든 Secure Element 자격 증명은 다음의 경우에 안전하게 지워집니다.
사용자가 iCloud에서 로그아웃
기기 암호 제거
모든 콘텐츠 및 설정 지우기를 사용하여 기기 지우기 또는 나의 찾기를 사용하여 원격으로 기기 지우기
Apple 데이터 및 개인정보 보호 페이지에서 Apple 계정 삭제 요청
사용자는 관련 iOS 앱을 삭제하여 iPhone에서 특정 자격 증명을 제거할 수도 있습니다.