다음을 통해 공유


PlayReady 보안 삭제

PlayReady 버전 4.0에서 도입된 PlayReady Secure Delete 는 클라이언트의 앱에서 영구 라이선스를 삭제할 때 서비스 공급자가 보안 승인을 받을 수 있도록 하는 기능입니다. 이전에는 라이선스가 삭제되었을 때 삭제가 완료되었을 때 서비스 공급자에게 알림을 받지 못했습니다. PlayReady Secure Delete를 사용하면 다음 작업을 수행할 수 있습니다.

서비스 공급자는 지정된 클라이언트 컴퓨터에서 현재 저장된 라이선스와 삭제된 라이선스를 추적할 수 있습니다. 서비스 공급자는 클라이언트에 특정 수의 영구 라이선스를 발급하고 해당 클라이언트 컴퓨터의 라이선스 수를 추적할 수 있습니다. 또한 보안 삭제 기능은 2017년 9월에 정의된 EME(암호화된 미디어 확장) 사양 요구 사항을 충족하며, 라이선스 삭제 레코드를 라이선스 삭제 시 서버로 보내야 한다고 지정합니다.

다음 그림에서는 보안 삭제 흐름을 보여 줍니다.

secure delete

보안 삭제가 발생하기 전에 애플리케이션 또는 클라이언트는 먼저 PlayReady CDM(콘텐츠 암호 해독 모듈)을 인스턴스화하고 서버에서 영구 라이선스를 획득합니다(위 그림의 1-7단계).

다음으로 PlayReady는 세션 식별자(SessionId) 및 하나 이상의 키 식별자(KID)로 구성된 라이선스 세션 Blob의 레코드와 함께 데이터 저장소(HDS, 해시된 데이터 Storage)에 라이선스를 저장합니다. 애플리케이션 또는 클라이언트가 라이선스 삭제 요청을 시작하면 적절한 API를 호출하여 데이터 저장소에서 KID와 연결된 라이선스를 제거합니다. 보안이 아닌 삭제 라이선스 제거 프로세스 중에 PlayReady는 추가 작업 없이 데이터 저장소에서 라이선스를 제거합니다. 보안 삭제를 사용하면 PlayReady는 데이터 저장소에서 KID와 연결된 라이선스를 제거할 뿐만 아니라 SessionId 및 KID(위 그림의 12-13단계)를 포함하는 보안 삭제 챌린지를 생성합니다.

그런 다음 애플리케이션 또는 클라이언트는 보안 삭제 챌린지를 보안 삭제 서버로 보낸 다음, 이 챌린지를 처리합니다.

보안 삭제 챌린지를 처리한 후 보안 삭제 서버는 기본 64로 인코딩된 SessionId가 포함된 암호화되지 않은 서명되지 않은 보안 삭제 응답을 애플리케이션(또는 클라이언트)에 보냅니다.

마지막으로 클라이언트가 보안 삭제 응답을 받으면 PlayReady는 보안 삭제 응답에 포함된 SessionId가 보안 삭제 챌린지를 생성하는 데 사용된 SessionId와 일치하는지 확인합니다. 유효성 검사에 성공하면 PlayReady는 데이터 저장소에서 라이선스 세션의 레코드를 제거합니다.