Zastanawiałem się, jak działa wypożyczanie filmów w iTunes z punktu widzenia bezpieczeństwa. Biorąc pod uwagę, że „wypożyczone” pliki są faktycznie pobierane na komputer użytkownika i następnie odtwarzane z tego miejsca, wydaje się, że nie ma sposobu, aby uniemożliwić użytkownikowi zapisywanie plików w nieskończoność.

Jest możliwe, że pliki są przechowywane w jakimś zastrzeżonym formacie (czymś w rodzaju CSS), ale można to łatwo zmienić na dłuższą metę poprzez inżynierię wsteczną kodu, który je odtwarza (tak jak stało się z DeCSS) .

Byłbym bardzo zadowolony, gdyby ktoś wskazał mi odniesienia do analizy tego systemu.

Odpowiedź

Systemy DRM zwykle działają według odmiany tych samych podstawowych zasad:

  • Treść jest szyfrowana za pomocą symetrycznego algorytmu kryptograficznego, takiego jak na przykład AES-128.
  • Klucz zawartości wraz z czytelnym dla komputera opisem praw użytkowania (np. „graj przez 48 godzin”) jest dostarczany na urządzenie użytkownika po zakupie zawartości.
  • Ten klawisz + prawa Pakiet jest często nazywany „licencją” i sam jest zaszyfrowany za pomocą kryptografii klucza publicznego. Oznacza to, że urządzenie użytkownika posiada klucz prywatny do odszyfrowania tej licencji.
  • Podczas odtwarzania zawartości koniecznie jest ” kawałek oprogramowanie działające w aplikacji do odtwarzania – w tym przykładzie iTunes. „Zaufany” jest w cudzysłowie, ponieważ to Apple ufa, a nie tobie!
  • To oprogramowanie, czasami nazywane „agentem”, odpowiada za odszyfrowanie i – co ważne – egzekwowanie praw użytkowania. W tym przykładzie prawdopodobnie zniszczy klucz samoczynnie po 48 godzinach.
  • Agenci, ze względu na swoją naturę, są zwykle silnie opancerzeni przed atakami, aby pokonać próby inżynierii odwrotnej: dekompilacja przyniesie śmieci, debugowanie jest niemożliwe itp.

A więc … Odpowiadając na pytanie: tak, zawartość i klucz odszyfrowywania znajdują się na urządzeniu (przynajmniej przez chwilę), ale jest maszyny działające przeciwko wszelkim próbom ich złożenia. W przeszłości ludziom czasami się to udawało, ale poprzeczka cały czas rośnie.

Komentarze

  • Wątpię, czy ostatni punktor jest ściśle poprawny – bez względu na to, jaki poziom zaciemnienia zostanie zastosowany, bez wątpienia nadal możliwe jest odtworzenie kodu w odpowiednim czasie i wysiłku. Ponadto podczas debugowania " wskazówki " są bez wątpienia usuwane ze skompilowanego kodu, debugowanie w takich warunkach nie jest bynajmniej niemożliwe.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *