Compartilhar via


Verificação e inicialização

[O recurso associado a esta página, do SDK do Windows Media Format 11, é um recurso herdado. Foi substituído por de Leitor de Origem e do Gravador do Coletor de. de Leitor de Origem e Gravador do Coletor foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use de Leitor de Origem e o Gravador do Coletor em vez de do SDK do Windows Media Format 11, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Você deve executar as seguintes etapas para verificar se a transscriptografia é permitida e inicializar um objeto que descriptografará o conteúdo:

  1. Se você já tiver a ID da chave para o conteúdo, pule para a etapa 5.
  2. Chame a função WMCreateEditor para criar um objeto de editor de metadados e obter uma instância da interface IWMMetadataEditor desse objeto.
  3. Chame IWMMetadataEditor::QueryInterface para obter uma instância da interfaceIWMDRMEditor.
  4. Chame IWMDRMEditor::GetDRMProperty para obter a propriedade DRM_DRMHeader_KeyID.
  5. Inicialize as APIs Estendidas do Cliente DRM de Mídia do Windows chamando a funçãoWMDRMStartup.
  6. Chame a função WMDRMCreateProtectedProvider para criar um objeto de provedor seguro e obter uma instância da interface deIWMDRMProviderdesse objeto.
  7. Chame IWMDRMProvider::CreateObject para criar um objeto de gerenciamento de licença e obter uma instância de sua interface deIWMDRMLicenseManagement.
  8. Chame IWMDRMLicenseManagement::CreateLicenseEnumeration, passando a ID da chave e o direito que rege as ações a serem executadas com o conteúdo depois que ele for transscriptografado. Essa chamada recuperará uma instância da interfaceIWMDRMLicenseque pode ser usada para enumerar por meio de licenças correspondentes.
  9. Chame IWMDRMLicense::GetInclusionList para recuperar a lista de CPS (sistemas de proteção de conteúdo autorizados), conforme especificado pelo emissor da licença.
  10. Analise a lista de inclusão para confirmar se o GUID do CPS de saída é permitido pela licença.
  11. Se o GUID de exportação desejado não estiver na lista de inclusão, chame IWMDRMLicense::GetNext para obter a próxima licença aplicável (se houver) e repita as etapas 9 e 10. Se nenhuma licença tiver o GUID desejado em sua lista de inclusão, a exportação não poderá ser executada.
  12. Chame IWMDRMLicense::CreateSecureDecryptor para criar um objeto de decryptor. Passe o certificado do aplicativo de exportação. Essa chamada fornecerá um ponteiro para uma instância da interface IWMDRMDecrypt do objeto descriptografador e um objeto binário que contém a semente. Somente a constante DRM_PROTECTION_TYPE_RC4 do Windows Media tem suporte como um argumento para o parâmetro dwFlags no momento.
  13. Use o esquema de criptografia OAEP RSA para descriptografar o vetor de inicialização.
  14. Use a biblioteca de análise ASF fornecida pela Microsoft quando você entrar no contrato de exportação drm de mídia do Windows, para localizar o deslocamento em bytes para cada conteúdo.

exportando de conteúdo compactado