Lista de permitidos de la aplicación de iOS

Puede realizar la lista de permitidos de sus aplicaciones iOS mediante la herramienta machotools de Adobe.

Por lo general, al completar una aplicación TVSDK, puede utilizar las herramientas de línea de comandos de Adobe Primetime DRM para realizar la lista de permitidos de la aplicación.

SUGERENCIA

También puede utilizar estas herramientas para crear políticas de DRM y cifrar contenido.

Permitir que la aplicación aparezca garantiza que el contenido protegido solo se pueda reproducir en el reproductor de vídeo. Sin embargo, para permitir la inclusión de una aplicación de iOS, es necesario que complete el procedimiento especial que funciona con las políticas de envío de aplicaciones de Apple.

Antes de enviar una aplicación de iOS, debe firmarla y publicarla en Apple.

NOTA

Apple elimina la firma del desarrollador y vuelve a firmar la aplicación con su propio certificado.

Debido a la nueva firma, no se puede utilizar la información de lista de permitidos que generó antes de enviarla a la Apple App Store.

Para trabajar con esta directiva de envío, Adobe ha creado una herramienta machotools que imprimirá la aplicación de iOS para crear un valor de compendio, firmar este valor e insertar este valor en la aplicación de iOS. Después de imprimir la huella de la aplicación de iOS, puede enviarla a la App Store de Apple. Cuando un usuario ejecuta la aplicación desde la App Store, Primetime DRM realiza un cálculo en tiempo de ejecución de la huella digital de la aplicación y lo confirma con el valor de compendio que se insertó anteriormente en la aplicación. Si la huella digital coincide, se confirma que la aplicación está permitida en la lista de permitidos y que el contenido protegido puede reproducirse.

La herramienta Adobe machotools está incluida en el SDK para iOS TVSDK, en […carpeta ]/tools/DRM.

Para usar machotools:

  1. Genere un par de claves.

    Para utilizar una utilidad como OpenSSL, abra una ventana de comandos e introduzca lo siguiente:

    openssl genrsa -des3 -out selfsigncert-ios.key 1024
    
  2. Cuando se le pida, introduzca una contraseña para proteger la clave privada.

    Las contraseñas deben contener al menos 12 caracteres, y los caracteres deben incluir una mezcla de caracteres y números ASCII en mayúsculas y minúsculas.

  3. Para utilizar OpenSSL para generar una contraseña segura, abra una ventana de comandos e introduzca lo siguiente:

    openssl rand -base64 8
    
  4. Generar una solicitud de firma de certificado (CSR).

    Para utilizar OpenSSL para generar una CSR, abra una ventana de comandos e introduzca lo siguiente:

    openssl req -new -key selfsigncert-ios.key -out selfsigncert-ios.csr -batch
    
  5. Firme automáticamente el certificado e introduzca cualquier duración.

    El siguiente ejemplo da una caducidad de 20 años:

    openssl x509 -req -days 7300 -in selfsigncert-ios.csr
      -signkey selfsigncert-ios.key -out selfsigncert-ios.crt
    
  6. Convierta el certificado autofirmado en un archivo PKCS#12:

    openssl pkcs12 -export -out selfsigncert-ios.pfx
      -inkey selfsigncert-ios.key -in selfsigncert-ios.crt
    

    Puede usar el certificado autofirmado para firmar su aplicación iOS.

  7. Actualice la ubicación del archivo PFX y la contraseña.

  8. Antes de crear la aplicación en Xcode, vaya a Build Phases > Run Script y añada el siguiente comando al script de ejecución:

    mkdir -p "${PROJECT_DIR}/generatedRes" "${PROJECT_DIR}/machotools" sign
      -in "${CODESIGNING_FOLDER_PATH}/${EXECUTABLE_NAME}"
      -out "${PROJECT_DIR}/generatedRes/AAXSAppDigest.digest"
      -pfx "${PROJECT_DIR}/selfsigncert-ios.pfx"
      -pass PASSWORD
    
  9. Ejecute machotools para generar el valor hash del ID del editor de la aplicación.

    ./machotools dumpMachoSignature -in ${PROJECT_DIR}/generatedRes/AAXSAppDigest.digest
    
  10. Cree una nueva directiva de DRM o actualice la directiva existente para incluir el valor hash de ID de editor devuelto.

  11. Con el AdobePolicyManager.jar, cree una nueva directiva de DRM (actualice la directiva existente) para incluir el valor hash del ID de editor devuelto, un ID de aplicación opcional y los atributos de versión mínimo y máximo en el archivo incluido flashaccess-tools.properties.

    java -jar libs/AdobePolicyManager.jar new app_allowlist.pol
    
  12. Empaquete el contenido utilizando la nueva directiva DRM y confirme la reproducción del contenido permitido en la aplicación iOS.

En esta página