Mi chiedevo come funzionano i noleggi di film di iTunes dal punto di vista della sicurezza. Dato che i file “noleggiati” vengono effettivamente scaricati sul computer dellutente e poi riprodotto da lì, sembra che non ci sia modo di impedire allutente di salvare i file a tempo indeterminato.
È possibile che i file siano archiviati in un formato proprietario (qualcosa come CSS), ma questo potrebbe essere facilmente sovvertito a lungo termine decodificando il codice che li riproduce (come è successo con DeCSS) .
Sarei molto felice se qualcuno potesse indicarmi alcuni riferimenti che analizzano questo sistema.
Answer
I sistemi DRM tendono a funzionare tutti secondo una variazione degli stessi principi di base:
- I contenuti sono crittografati con un algoritmo di crittografia simmetrico, come ad esempio AES-128.
- La chiave dei contenuti, insieme a una descrizione leggibile dalla macchina dei diritti di utilizzo (come “riproduci per 48 ore”), viene consegnata al dispositivo dellutente al momento dellacquisto dei contenuti.
- Questa chiave + i diritti bundle è spesso chiamato “licenza” ed è esso stesso crittografato con crittografia a chiave pubblica. Ciò implica che il dispositivo dellutente possiede la chiave privata per decrittografare questa licenza.
- Durante la riproduzione del contenuto, è necessariamente presente un “attendibile ” pezzo di software in esecuzione allinterno dellapp di riproduzione, in questo esempio iTunes. “Attendibile” è tra virgolette perché Apple si fida di essa, non di te!
- Questo software, a volte chiamato “agente”, si occupa della decrittazione e, cosa importante, dellapplicazione dei diritti di utilizzo. In questo esempio, forse si autodistruggerà la chiave dopo 48 ore.
- Gli agenti, per loro natura, di solito vengono pesantemente corazzati contro gli attacchi, per sconfiggere i tentativi di reverse engineering: la decompilazione produrrà risultati inutili, il debug è reso impossibile, ecc.
Quindi … Per rispondere alla tua domanda: sì, il contenuto e la chiave di decrittazione sono entrambi sul dispositivo (almeno per un po ) ma “sa macchine che lavorano contro ogni tentativo di metterli insieme. Le persone ci sono riuscite occasionalmente in passato, ma lasticella si alza continuamente.
Commenti
- Dubito che il tuo ultimo punto elenco sia strettamente corretto: indipendentemente dal livello di offuscamento, è senza dubbio ancora possibile decodificare il codice dato abbastanza tempo e impegno. Inoltre, durante il debug " i suggerimenti " sono senza dubbio rimossi dal codice compilato, il debug non è affatto impossibile in tali condizioni.