2011-04-05 3 views
4

Nous sommes en train de parler de la façon de mettre en place un magasin de location de vidéos en ligne. Outre le streaming, nous aimerions que l'utilisateur puisse d'abord télécharger un film, qui est ensuite stocké pendant un certain temps sur l'appareil lui-même, dans ce cas, un appareil iOS.iOS: crypter/décrypter le fichier vidéo

Mais comment pouvons-nous y parvenir et le conserver? Évidemment, nous ne voulons pas que l'utilisateur puisse simplement copier le fichier du système de fichiers, ce qui est une tâche facile une fois que l'appareil est jailbreaké.

Il est donc nécessaire de stocker le fichier crypté ou avec une sorte de DRM. Mais même alors: Comment s'assurer que l'utilisateur ne peut pas le décrypter lui-même? Et une fois la lecture commencée, comment pouvons-nous réaliser que nous ne décryptions pas le fichier entier (ce qui serait trop gros pour le stocker dans la mémoire) afin que l'utilisateur n'y accède pas.

Des idées/solutions?

+0

Je suis à la recherche d'un décryptage à la volée sur iOS. Je posterai tous les liens utiles que je trouve. – darvids0n

+0

Cela ne semble pas être facile. J'ai décidé d'aller avec HTTP Live Streaming dans un fichier local, qui prend en charge les segments de médias et le décryptage. – darvids0n

Répondre

0

À un moment donné, le fichier doit être déchiffré sur l'appareil pour pouvoir être lu. Un reverse-engineer intelligent découvrira comment couper après ce point et copier le fichier. C'est ainsi que la plupart des DRM sont cassés, il s'agit juste de savoir comment entrer dans l'exécution de l'application au bon endroit. Votre meilleur pari est de créer autant de fonctionnalités anti-débogage que possible à votre code et/ou de le diffuser sans stockage local. Les deux options ne sont pas parfaites et peuvent être vaincues au fil du temps, mais elles ralentiront au moins la plupart d'entre elles.

1

Bienvenue dans le monde de DRM. Le fait est que vous ne pouvez pas empêcher un attaquant déterminé de déchiffrer la vidéo. Si l'utilisateur peut le voir jouer, il pourra accéder à la vidéo décryptée complète, même si cela signifie qu'il faut intercepter les signaux vidéo bruts envoyés à l'écran LCD. La seule chose que vous pouvez faire est de le rendre plus difficile grâce à des techniques anti-débogage et de chiffrement.

0

Vous devez obtenir l'accord des propriétaires de contenu qui fournissent les fichiers vidéo. En général, ils nécessitent un DRM pré-certifié tel que PlayReady (Microsoft) WideVine (Google) ou Verimatrix.