¿Cómo funciona la aplicación iOS DRM exactamente?

8

Cuando compro una aplicación en iTunes en mi computadora con Windows, obtengo un archivo * .ipa que es un paquete de aplicaciones iOS autónomo. Puedo explorar el contenido de estos archivos IPA con 7-Zip e incluso extraer recursos y otros detalles, lo que sugiere que estos archivos IPA no están encriptados en absoluto.

Entonces, si no están cifrados, ¿cómo funciona el DRM? ¿Qué me impide copiar un archivo IPA a la computadora de otra persona e importar la IPA a iTunes y luego instalarlo en el dispositivo de otra persona?

Además, ¿puede alguien confirmar que, siempre que guarde el archivo IPA, podré instalarlo en mis iDevices (bajo el mismo ID de Apple, por supuesto)? Solo me preocupa que en el futuro una aplicación pueda actualizarse para eliminar funciones o incluso se pueda extraer de la tienda de aplicaciones por completo.

    
pregunta Dai 08.03.2012 - 23:20

2 respuestas

12

En realidad, funciona más como SSL. Al registrarse para una cuenta Apple, Apple genera un par de claves públicas / privadas para su nombre de usuario. Luego le da su clave privada y mantiene su público. (Por eso, cuando compra por primera vez o cuando restaura su iDevice, debe activarlo con su cuenta de iTunes). Tras la activación, transfiere su clave privada a su iDevice. Básicamente, lo que sucede es cuando compras una aplicación (gratuita o de pago). Apple genera un encabezado de 4096 bytes que está cifrado con tu clave pública.

Si tiene alguna comprensión de las claves públicas / privadas, la clave pública puede cifrarse para su par privado ... Por ejemplo, usaría una clave pública de servidores para cifrar los datos y enviarlos al servidor. El servidor entonces usaría su clave privada para descifrarlo. Cuando quiere devolver datos, usa mi clave pública para cifrar los datos y yo utilizo mi clave privada para descifrarlos. Las claves públicas solo pueden cifrar datos y no pueden descifrar y viceversa para claves privadas.

Cuando descarga su aplicación, tiene un encabezado cifrado con su clave pública. Solo su clave privada puede descifrar el encabezado incrustado en la aplicación. Por ejemplo, si copié una IPA generada para ti y la puse en mi iDevice (esto suponiendo que puedas obtenerla allí, iTunes se negaría a sincronizarla de todos modos), y luego intenté ejecutarlo, simplemente fallaría. ¡Porque mi clave privada no podría descifrar el encabezado! También vale la pena notar que el archivo IPA (una IPA es esencialmente un archivo zip que ha sido renombrado) no tiene el encabezado, si observa el contenido de una IPA, se dará cuenta de que contiene un archivo sin extensión. Tomar la aplicación de Facebook, por ejemplo, tendría un archivo llamado 'Facebook'. Este es el binario de la aplicación, y este es el archivo que tiene el encabezado cifrado.

Sí, como se indicó anteriormente, sus aplicaciones continuarán ejecutándose siempre que pueda recordar su ID de Apple, ya que el iDevice (e iTunes) NO hace ninguna comprobación de firmas con iTunes. ¡Esto significa que puede instalar aplicaciones eliminadas y también sincronizar IPA más antiguas con su dispositivo siempre y cuando sean suyas y aún tenga la IPA de forma indefinida!

    
respondido por el jduncanator 10.04.2012 - 20:48
0

Simplemente cambia la extensión de .ipa a .zip . Si está utilizando una versión anterior de iTunes, el archivo IPA estará en:

C:\user\ ...\music\itunes\mobile applications 

Apareció ... Vaya al usuario que estaba usando cuando descargó la aplicación.

    
respondido por el Just 10.10.2018 - 09:16

Lea otras preguntas en las etiquetas