Jak można chronić oprogramowanie przed piractwem?

76

Dlaczego piractwo wydaje się takie łatwe?

Wydaje się trochę trudno uwierzyć, że przy wszystkich naszych postępach technologicznych i miliardach dolarów wydanych na opracowanie najbardziej niewiarygodnego i oszałamiającego oprogramowania, nadal nie mamy innych sposobów ochrony przed piractwem niż „numer seryjny / klucz aktywacyjny” „. Jestem pewien, że mnóstwo pieniędzy, może nawet miliardów, zostało przeznaczonych na stworzenie systemu Windows 7 lub pakietu Office, a nawet Snow Leopard, ale mogę je uzyskać za darmo w mniej niż 20 minut. To samo dotyczy wszystkich produktów Adobe, które są prawdopodobnie najłatwiejsze.

Czy może istnieć niezawodna i odporna na hakowanie metoda ochrony oprogramowania przed piractwem? Jeśli nie realistycznie, to teoretycznie możliwe? Czy bez względu na to, jakie mechanizmy stosują te firmy, czy hakerzy zawsze potrafią to obejść?

psr
źródło
5
W rzeczywistości niektóre korporacje wypróbowują znacznie bardziej wyrafinowane metody antypirackie (np. Wymagające połączenia z Internetem, sprawdzania, czy jedna kopia działa tylko na jednym sprzęcie, zamków DNA itp.). Ale wciąż się łamią.
76
Istnieje proste rozwiązanie: zapewnij oszałamiająco wysoką jakość wsparcia dla legalnych użytkowników. Co więcej, nie traktuj nieopłacających użytkowników jak przestępców, ale jako potencjalny rynek. Oczywiście to kosztuje, ale oszczędności w kosztach prawnych i opłatach płaconych za ochronę przed kopiowaniem fabryk kludge złagodziłyby cios.
biziclop,
26
Nie ma dobrego rozwiązania technologicznego problemu behawioralnego.
Job
16
Wytrwałość - daj człowiekowi rybę, on zje rybę; powiedz mu, że nie może mieć ryb, spodziewaj się walki.
Orbling
7
@Job: ... Nie. Istnieje coraz więcej dowodów, które sugerują, że „piractwo” (bardzo zły termin na naruszenie) ma znaczącą korzyść ekonomiczną dla twórców treści , a tym samym przynosi korzyści społeczności. Twoje porównanie byłoby znacznie dokładniejsze przy omawianiu „zalet” DRM.
greyfade

Odpowiedzi:

76

Kod to dane. Gdy kod można uruchomić, kopia tych danych jest kodem niechronionym. Niechroniony kod można skopiować.

Zaostrzenie kodu za pomocą kontroli antypirackich czyni go nieco trudniejszym, ale hakerzy po prostu użyją debugera i go usuną. Wstawianie no-ops zamiast wywoływania „check_license” jest dość łatwe.

  • Programy trudne do zhakowania robią coraz bardziej irytujące rzeczy.
  • Ale dostawcy muszą sprzedawać klientom oprogramowanie, z którego są gotowi korzystać.
  • Nie wszyscy pozwalają komputerom dzwonić do domu.
  • Niektóre osoby pracujące nad wrażliwymi rzeczami odmawiają podłączenia maszyn do Internetu.

Programy, które sprzedaję u mojego obecnego pracodawcy (narzędzia lotnicze) nigdy nie dzwonią do domu . Klienci nie tolerowaliby dzwonienia do domu w celu „aktywacji” przy każdym uruchomieniu programu.

W najgorszym przypadku program działa na maszynie wirtualnej bez sieci, gdzie zawsze jest to stała data.

Być może raz został legalnie zainstalowany, ale żaden wysiłek deweloperów nie może sprawić, że dowie się, że tak nie było.

  • Próby dodania sprzętowego „zabezpieczenia przed kopiowaniem” do komputerów ogólnego przeznaczenia są skazane na niepowodzenie.
  • Cokolwiek firma sprzedaje sprzęt bez zapobiegania kopiowaniu, ostatecznie sprzedaje cały sprzęt.
  • Dostawcy tacy jak Dell i Intel stopniowo starają się wprowadzać sprzęt szpiegujący, taki jak Palladium, ale zdecydowanie im się to opiera.
  • Gdy komputer robi coś naukowego w czasie rzeczywistym, wszelkie przerwy w „sprawdzaniu pirackich treści” spowodują awarie. Gdyby wszystkie komputery miały sprzętowy DRM, specjalne naukowe / działające w czasie rzeczywistym nie musiałyby go mieć. Przypadkowo każdy kupiłby specjalne naukowe / działające w czasie rzeczywistym.
  • Sprzętowe kontrole DRM będą miały fałszywe alarmy dotyczące niektórych rodzajów treści.

    • Najprostszy przypadek: rozdzielczość. Nagrywam wideo Quad HD z mojego zestawu kamer (siedzącego teraz na biurku). Windows DRM dostaje się między mną a danymi, ponieważ jest to QuadHD.

    • Analiza sygnatur: sprzętowy DRM jest niewielki i ma względnie stały zestaw danych. Musi także korzystać z tej samej magistrali danych co procesor, więc spowalnia to sporadycznie. To niszczy wszystko w czasie rzeczywistym.

    • Zatem, aby sprzętowy DRM był mądrzejszy podczas fałszywie dodatniego, komputer w końcu zostanie przerwany, aby przejść i sprawdzić za pomocą usługi internetowej. Teraz mój procesor danych naukowych albo nie działa, ponieważ nie jest podłączony do sieci, albo przestaje przesyłać strumieniowo dane.

Tim Williscroft
źródło
3
Co do twojego pierwszego punktu, co jeśli Twój komputer nie był tym, który uruchomił kod? Może gdzieś komputer? Pewnie teraz wydaje się to niemożliwe, ale czy teoretycznie byłoby to rozwiązanie? (czy to właśnie jest przetwarzanie w chmurze?)
Bałwan
@mohabitar: To kwestia ludzi. Piractwo polega na zaufaniu. Żaden komputer nie może zaufać osobie. Tylko ludzie mogą ufać ludziom.
S.Lott,
2
@mohabitar: Przetwarzanie w chmurze z pewnością ogranicza piractwo, ponieważ nie jest dostępny kod źródłowy do kopiowania (z wyjątkiem przypadku naruszenia bezpieczeństwa sieci). Jednak (a) wiele zadań jest całkowicie nieodpowiednich dla chmury i (b) jeszcze więcej zadań wykonuje się lepiej na komputerze stacjonarnym (więc aplikacje komputerowe wygrywają ze swoimi odpowiednikami w chmurze).
dbkk
@ nohabitar: Masz na myśli, jak tu zasugerowałem ?
Ben Voigt,
1
@Ben Voight Próbowałem rozszerzyć opis trybów awarii, które to wprowadza. Przykład: Załóżmy, że przesyłam strumieniowo dane z instrumentu naukowego na dysk twardy. W moim kontrolerze dysku twardego znajduje się sprzętowy DRM. Przesyłam strumieniowo dane z maksymalną szybkością zapisu, a obwód DRM wykrywa, co uważa za sygnaturę DRM w strumieniu danych naukowych. Teraz mnie to zatrzymuje. Albo uzyskać weryfikację online, albo mnie po prostu zatrzymuje. Ow Ow Ow. Albo jeszcze gorzej, dzwoni do MPAA, aby pozwać mnie do przesyłania strumieniowego czegoś, co wygląda jak film w opinii ich 5-dolarowego układu antypirackiego.
Tim Williscroft
62

Ostatecznie dużym problemem jest to, że większość oprogramowania wymaga przekazania zamka i klucza potencjalnemu napastnikowi i ma nadzieję, że nie wymyślą, jak je złożyć.

Tylko bezpieczna metoda zabezpieczania oprogramowania jest nie dając go do użytkownika (np SaaS). Na przykład zauważysz, że nie możesz „pirować” Dokumentów Google. Ostatecznie, jeśli próbujesz coś zabezpieczyć, musisz założyć, że mają pełną wiedzę na temat wszystkiego, co im dajesz. Nie możesz ufać klientowi. Dotyczy to zarówno zapobiegania piractwu, jak i ochrony systemu przed zagrożeniem.

Ponieważ istniejące modele dystrybucji oprogramowania opierają się na dostarczeniu klientowi całego pakietu, a następnie próbie zabezpieczenia go sprzętem potencjalnej kontroli atakującego , model dystrybucji jest niezgodny z jakąkolwiek koncepcją oprogramowania „niepiracyjnego”.

Anon.
źródło
Wszyscy myśleli, że istnieje kilka dobrych odpowiedzi na to pytanie, i są one tutaj dobrze reprezentowane, jeśli czytasz wszystkie odpowiedzi, moim zdaniem ta odpowiedź i inna odpowiedź, która wspomina o SaaS, zawiera praktyczne rozwiązania. Próba (odpowiedź OSS) może być niewłaściwa, teoretycznie lepiej przekonać użytkowników, ale tej właśnie używa obecnie branża.
Encaitar
28

Podstawowym problemem IMHO jest to, że większość lub wszystkie „niezawodne i hack proof” metody * ochrony oprogramowania przed piractwem denerwują, a nawet wypędzają niewinnych i legalnych użytkowników.

Na przykład sprawdzenie, czy aplikacja jest zainstalowana tylko na jednym komputerze, może utrudnić użytkownikowi zmianę sprzętu na swoim komputerze. Klucze sprzętowe mogą oznaczać, że nie możesz korzystać z tej samej aplikacji na komputerze w pracy i w domu. Nie wspominając już o numerach kierunkowych DVD, CSS, Sony rootkit i in., Które nie są ściśle związane z ochroną oprogramowania, ale ściśle ze sobą powiązane.

* które, jak zauważył @FrustratedWithFormsDesigner, nigdy nie są idealne w praktyce; nie ma 100% bezpieczeństwa, możesz tylko spróbować uczynić go wystarczająco kosztownym, aby intruz przełamał obronę, aby nie było ich „zbyt wielu”. I wierzę, że jest to spowodowane fundamentalną naturą oprogramowania i informacji cyfrowych, że gdy komuś uda się przełamać konkretną obronę, przerwa może prawie zawsze zostać trywialnie odtworzona przez miliony.

Péter Török
źródło
2
W końcu nawet te prawdopodobnie zostaną zhakowane.
FrustratedWithFormsDesigner
2
Amen do @Frustrated. Podstawowym prawem wszechświata jest „życie ORAZ przeszkody -> przeszkody są w końcu przezwyciężone” LUB życie kończy się.
2
Mogą (klucze): Cubase używa jednego. Hack to sterownik urządzenia, który ładuje wirtualne urządzenie USB, które informuje oprogramowanie, co chce usłyszeć.
James Love
1
@FrustratedWithFormsDesigner, dobry punkt, dziękuję za wzmiankę. Rozszerzyłem swoją odpowiedź, aby rozwinąć to nieco dalej.
Péter Török,
Co ważniejsze, wszelkie technologiczne środki przeciwdziałające piractwu wpłyną negatywnie na niektórych użytkowników. Pytanie brzmi, jak bardzo chcesz ukarać płacących klientów, aby zranić tych, którzy jeszcze nie zapłacili. Kiedy twoje uzupełnienie mówi „wcale”, nie masz dużego wyboru. A kiedy to działa, często jest do bani dla niektórych użytkowników. Weź Steam - jak wiele osób, mam dokładnie jedną grę Steam i nigdy nie kupię innej. Zamiast tego poczekam, aż dostępna będzie wersja z pękniętą, nieparowaną wersją, ponieważ wrażenia Steam są tak okropne.
28

Dlaczego oprogramowanie jest dziś łatwe do piractwa?

Bardziej opłaca się sprzedawać oprogramowanie łatwe do piractwa.

Podejmując decyzję o środkach antypirackich, firmy przeprowadzają analizę kosztów i korzyści. W przypadku dowolnego zestawu środków, jeśli korzyści nie przewyższają kosztów, firma tego nie robi.

Koszty obejmują czas i wysiłek na wdrożenie, udokumentowanie, wsparcie i utrzymanie środków, a być może straty sprzedaży, jeśli są naprawdę denerwujące. Ogólnie rzecz biorąc, istnieją dwa rodzaje korzyści:

  • Większe zyski, ponieważ ludzie, którzy pirateliby program, kupili go zamiast tego…
  • Ludzie, którzy podejmują decyzje, cieszą się, że program nie jest piracki.

Oto prosty przykład: Microsoft Office.

Teraz stwardnienie rozsiane polega na pieniądzach, a nie na tym, by uszczęśliwić egzekucję piractwem. Od pewnego czasu MS sprzedaje wersję Office dla domu i studenta za znacznie tańszą niż normalną wersję dla biznesu. Kupiłem to kilka lat temu i w ogóle nie było ochrony przed kopiowaniem! Technologia „antypiracka” polegała na wprowadzeniu klucza produktu, który był następnie przechowywany w folderze aplikacji. Ale możesz uruchomić go na dowolnej liczbie komputerów, na ile chcesz, i wszystkie działałyby dobrze! W rzeczywistości na komputerze Mac można przeciągnąć folder aplikacji przez sieć na inny komputer, na którym nigdy nie przeprowadzono instalacji, a ponieważ klucz produktu był przechowywany w aplikacji, działał świetnie.

Dlaczego taka żałosna technologia antypiracka? Dwa powody.

Po pierwsze, dodatkowy koszt wsparcia technicznego dla użytkowników domowych psujących swoje instalacje po prostu nie był tego wart.

Drugi to nietechniczne środki antypirackie . MS ma program informacyjny, w którym jeśli wiesz, że firma piruje oprogramowanie MS - na przykład instalując 200 kopii tego samego „Domu i studenta” - możesz do nich zadzwonić. Następnie MS przychodzi i kontroluje firmę, a jeżeli stwierdzi pirackiego oprogramowania, pozywa bzdura z nich - i ty dostać duże cięcie wygranych.

Zatem stwardnienie rozsiane nie musi używać technologii, aby zapobiec piractwu. Uważają, że bardziej opłacalne jest używanie zimnej, twardej gotówki.

Bob Murphy
źródło
25

Jak powiedział Bruce Schneier , próba uniemożliwienia skopiowania plików cyfrowych jest jak próba zmoczenia wody. Mówi przede wszystkim o „DRM”, który stosuje się bardziej do treści (np. Filmów) niż do kodu, ale z punktu widzenia zapobiegania kopiowaniu zawartości pliku nie ma większego znaczenia - kopiowanie pliku kopiowanie pliku jest kopiowaniem pliku .

Jerry Coffin
źródło
17

Istnieje tylko jedna „głupia i hackoodporna metoda ochrony oprogramowania przed piractwem” :

Wolne oprogramowanie (ponieważ możesz z nim robić, co chcesz, a nawet sprzedawać).

Nie możesz ukraść tego, co zostało ci dane za darmo. To prawda, że ​​zepsuje to niektóre modele oprogramowania firm dinozaurów, ale piractwo nigdzie się nie zmierza. Sprzedawaj coś, czego nie możesz skopiować, najlepiej coś, co towarzyszy temu, co rozdałeś za darmo; twoja pomoc na przykład.

Orbling
źródło
Chciałbym skrócić tę odpowiedź: „Open source”.
Alexey,
4
Riiiight ... „firmy dinozaurów”. A potem udawaj, że zwiększasz wartość poprzez zawyżone „umowy o świadczenie usług”? Nie, dziękuję, wolę płacić za inżynierię jakości niż kontrakty na usługi puchu. Chociaż kocham, a nawet sponsorujemy wolne oprogramowanie, twoja odpowiedź straciła wiarygodność poprzez komentarz „dinozaur”.
DeepSpace101
1
Jak to jest jedyny sposób? Co z oprogramowaniem działającym na serwerze właściciela? Również jeśli zaakceptujemy, że Wolne Oprogramowanie jest odpowiedzią na piractwo, co robimy z ludźmi, którzy biorą wolne oprogramowanie, modyfikują go, a następnie naruszają umowę, nie udostępniając zmian innym osobom. Czy to nie piractwo wolnego oprogramowania?
Stilgar
5
To jest niepoprawne; piractwo większości darmowego oprogramowania jest bardzo łatwe - wykorzystuj go w sposób niezgodny z licencją. Na przykład Matthew Garrett ma długą i bajeczną historię pomagania firmom w przestrzeganiu zobowiązań GPL dotyczących busyboksa.
RAOF,
1
@Orbling Możliwe jest pirowanie prawie wszystkiego ; praktycznie wszystkie licencje mają jakieś wymagania. Nie można upuścić nagłówków praw autorskich z pracy licencjonowanej BSD. Licencje Apache dodają znaczące ograniczenia. Nawet WTFPL zabrania zmiany licencji bez zmiany nazwy! Ponadto jest całkowicie możliwa sprzedaż oprogramowania GPL.
RAOF
13

Jest to spowodowane połączeniem czterech głównych czynników:

Na poziomie podstawowym wiele czynności wykonywanych przez komputer polega na kopiowaniu danych. Na przykład, aby uruchomić program, komputer musi skopiować go z dysku twardego do pamięci. Ale gdy coś zostanie skopiowane do pamięci, można je zapisać z pamięci w innym miejscu. Biorąc pod uwagę, że podstawową zasadą „ochrony przed piractwem” jest tworzenie oprogramowania, którego nie można pomyślnie skopiować, można zacząć dostrzegać skalę problemu.

Po drugie, rozwiązanie tego trudnego problemu działa bezpośrednio przeciwko interesom zarówno legalnych użytkowników, jak i tych, którzy chcą korzystać z oprogramowania bez legalnego nabywania go. Niektórzy z tych użytkowników będą posiadać wiedzę techniczną potrzebną do analizy skompilowanego kodu. Teraz masz kompetentnego przeciwnika aktywnie działającego przeciwko tobie.

Ponieważ jest to trudny problem, a ponieważ wytwarzanie prawidłowego oprogramowania jest z natury trudne, bardzo prawdopodobne jest, że Twoje rozwiązanie zawiera przynajmniej jeden błąd, który można wykorzystać. W przypadku większości programów nie ma to znaczenia, ale większość programów nie jest aktywnie atakowana przez zdeterminowanego przeciwnika. Ponieważ oprogramowanie jest tym, czym jest, po znalezieniu jednego nadającego się do wykorzystania błędu można go wykorzystać do przejęcia kontroli nad całym systemem i wyłączenia go. Aby zapewnić niezawodną ochronę, rozwiązanie bardzo trudnego problemu musi być idealne, w przeciwnym razie zostanie złamane.

Czwarty czynnik to światowy Internet. Sprawia, że ​​problem przekazywania informacji wszystkim zainteresowanym jest trywialny. Oznacza to, że gdy raz twój niedoskonały system zostanie złamany, zostanie on wszędzie złamany.

Połączenie tych czterech czynników oznacza, że ​​żaden niedoskonały system ochrony przed kopiowaniem nie może być bezpieczny. (A kiedy ostatni raz widziałeś idealne oprogramowanie?) W świetle tego pytanie nie powinno brzmieć: „dlaczego oprogramowanie jest nadal łatwe do piractwa?”, Ale „dlaczego ludzie wciąż próbują temu zapobiec?”

Mason Wheeler
źródło
Więc uważasz, że strata czasu i pieniędzy to nawet ~ próba ~ ochrony twojego oprogramowania?
Bałwan
4
@mohabitar: Tak, właśnie tak myślę, ponieważ to nigdy nie działa i nigdy nie działa. Żaden system DRM, o którym wiem, nie przetrwał dłużej niż 1 miesiąc po tym, jak został wystawiony na działanie Internetu, zanim został całkowicie złamany. Microsoft wydaje więcej pieniędzy na badania i rozwój każdego dnia, niż zobaczysz w całym swoim życiu, i nie mogą tego dobrze zrobić. Cholera, Windows 7 został złamany, zanim jeszcze został wydany! Co więc sprawia, że ​​każdy mniejszy programista uważa, że ​​ma jakąkolwiek szansę na sukces?
Mason Wheeler,
2
Jedną rzeczą, którą drobni programiści mają „po swojej stronie”, jest to, że mniej piratów może się tym przejmować. Jeśli nikt nie chce twojego oprogramowania, nikt nie będzie go pirował ani nie stworzył crack dla innych. Niezbyt miła myśl, ale z praktycznym aspektem, jeśli celujesz w niszowy rynek.
Steve314,
3
@ Steve314: Może, ale jeśli i tak nie ma za tobą piratów, to jeszcze bardziej marnuje się. Zamiast próbować rozwiązać problem, który istnieje, ale którego nie można rozwiązać dobrze, poświęcasz zasoby na rozwiązanie problemu, który nie istnieje.
Mason Wheeler,
1
@ Steve314: Heck, jeśli jesteś na tyle cyniczny, możesz argumentować, że aktywnie w twoim najlepszym interesie, w tych szczególnych okolicznościach, jest brak ochrony przed kopiowaniem. Jeśli to zrobią piraci, a poznasz ich przed sąd, możesz zrobić o wiele więcej szkód niż w przypadku sprzedaży, więc dlaczego nie ułatwić im tak łatwo, jak to możliwe? ;)
Mason Wheeler
9

Często pomijaną, główną motywacją stojącą za rozwiązaniami SaaS opartymi na chmurze jest zabezpieczenie strumieni przychodów.

Myślę, że właśnie tam jest przyszłość monetyzacji i ochrony własności intelektualnej.

Dzięki odejściu od sprzedawania lokalnych rozwiązań, które mają być uruchamiane w środowisku niezależnym od dostawców, ostatecznie każda strategia przeciwko piractwu oprogramowania jest skazana na niepowodzenie. Po prostu nie ma sposobu, aby chronić swoje aktywa, gdy przekazujesz je komuś innemu, ponieważ ochrona musi być egzekwowana na jego komputerze.

Udostępniając swoje oprogramowanie w chmurze i udostępniając go jako usługę, skutecznie podnosisz poziom piractwa do poziomu, na którym ma małe firmy.

Johannes Rudolph
źródło
1
Nie, to nie działa. Widzisz, istnieje coś takiego jak szpiegostwo, które istnieje od zarania dziejów. Również były pracownik lub ktoś, kto po prostu nie jest szczęśliwy, może to ujawnić. Lub może przypadkowo wyciec. Istnieją miliony scenariuszy, w których to nie działa, i wiele z nich jest prawdopodobne.
Ismael Luceno
8

Myślę, że odpowiedź, której szukasz, jest taka, że ​​wiele firm tak naprawdę nie interesuje się piractwem w ten sposób. Nikt nie chce, aby ich rzeczy wychodziły za darmo, ale kiedy spojrzysz na kompromis między irytującym a koniecznością wspierania wszystkich ludzi, w których zaawansowana ochrona przed kopiowaniem zepsuła się lub zepsuła ich komputery. Kilka firm zrobiło wszystko, co w ich mocy, aby się tym przejmować, ale pod koniec dnia rzeczy wciąż są spękane, a ich użytkownicy często wychodzą ze złym posmakiem w ustach.

Nie warto boleć (ani potencjalnej utraty klientów) próbować wdrożyć go dla kilku osób, którym i tak nie można się włamać.

Niektóre firmy postrzegają nawet pirackich użytkowników jako zasób. Valve zachwiało się w wiadomościach z takim komentarzem jakiś czas temu i nie możesz mi powiedzieć, że Microsoft nie wyszedł po zwycięskiej stronie wszystkich pirackich instalacji Windows w Azji przez lata.

W przypadku mikroprocesorów chcą sprzedawać duże bloki licencji dla małych chłopców, których potrzebują na każdą sprzedaż, ale nie mogą sobie pozwolić na utratę klientów, a w niektórych przypadkach nawet na rootkity i inne ohydne bzdury, których ludzie używają do zbudowania tego rodzaju blokady -w.

Nie można stworzyć idealnej walki z piractwem, ale nie ma wielu ludzi, którzy są bardzo zmotywowani, aby spróbować.

Rachunek
źródło
7

Cokolwiek wbudujesz w swoje oprogramowanie, musi być zrozumiałe dla maszyny, która je uruchomi. Ponieważ oprogramowanie stało się bardziej wyrafinowane, oprogramowanie do zrozumienia innego oprogramowania również stało się bardziej wyrafinowane. Więc jeśli to oprogramowanie jest zrozumiałe dla maszyny, jest zrozumiałe (i modyfikowalne) przez pirata.

Na przykład w zasadzie można wbudować silne szyfrowanie w pliku wykonywalnym, aby większość oprogramowania była nieczytelna. Problem polega na tym, że maszyny użytkowników końcowych nie mogą odczytać tego kodu bardziej niż piraci. Aby rozwiązać ten problem, oprogramowanie musi zawierać zarówno algorytm deszyfrujący, jak i klucz - zarówno w trybie jawnym, jak i przynajmniej ukrywającym się za słabszym szyfrowaniem (przy czym deszyfrowanie jest jasne).

IIRC, najlepsze deasemblery mogą ostrzec Cię o zaszyfrowanym kodzie i pomóc uchwycić i przeanalizować, co kryje się za szyfrowaniem. Jeśli wydaje się, że autorzy deasemblera są źli, należy wziąć pod uwagę, że twórcy zabezpieczeń potrzebują tego każdego dnia, aby badać wirusy i inne złośliwe oprogramowanie, które również ukrywa się w zaszyfrowanym kodzie.

Prawdopodobnie są tylko dwa rozwiązania tego problemu. Jednym z nich jest zamknięta platforma, która blokuje własnych użytkowników. Jak pokazuje Playstation 3, niekoniecznie jest to gwarancja. W każdym razie istnieje duża klasa nie-złych użytkowników, którzy jej nie polubią.

Drugim jest, aby twoje oprogramowanie działało na serwerach, które są pod twoją kontrolą.

Steve314
źródło
5

Zautomatyzowane zwalczanie piractwa jest logiczną sprzecznością.

Dostawcy mają zaufanie do uzasadnionych użytkowników.

Każde „zautomatyzowane” zwalczanie piractwa ma na celu zautomatyzowanie relacji zaufania.

Jak to może działać? Jak można wszelkie środki techniczne kiedykolwiek przyjść do „Trust” osoby?

Zaufanie jest związkiem z natury ludzkim. Każdy mechanizm techniczny może zawsze zostać obalony przez osoby, które wydają się godne zaufania, ale nie są.

Co do tego, ludzie cały czas gubią zaufanie.

S.Lott
źródło
1
Kroki: 1. wynajdź Skynet 2. wdrożyć program antypiracki 3. zysk
nigdy nie koduj
5

Chyba jednym z powodów jest to, że ci sami ludzie, którzy wiedzą, jak pisać przyzwoite zabezpieczenia, prawdopodobnie sami są hakerami.

Również próba ochrony przed piractwem jest naprawdę bardzo trudna. Ponieważ komputer musi sam wykonać tę ochronę, można ją przechwycić w dowolnym momencie (pamięć / wykonanie / ruch sieciowy ...). Tam właśnie pojawia się zaciemnianie, próbujące uniemożliwić zrozumienie, co się dzieje.

Wierzę, że siła numerów seryjnych i kluczy aktywacyjnych polega na tym, że możesz przynajmniej zobaczyć, kto jest piratem, i spróbować go wyśledzić / zablokować w ten sposób. Uważam, że jest to jeden z powodów, dla których tak wiele usług jest obecnie usługami online. (Steam, aktualizacja systemu Windows itp.) Nagle staje się o wiele trudniejszy do złamania, ... ale znowu jest to możliwe.

Tam, gdzie masz udany produkt, masz więcej ludzi próbujących go złamać, więc szanse na piractwo są większe.

Steven Jeuris
źródło
3
Bezpieczeństwo przez zaciemnienie nie jest w żaden sposób rozsądnym rozwiązaniem przeciwko piractwu.
Johannes Rudolph,
1
@Johannes Rudolph: Nie zaszkodzi zaciemnić twojego bezpieczeństwa. ; p
Steven Jeuris
1
Zgadzając się, odstraszy kilka hakerów, ale dla kogoś, kto naprawdę chce złamać oprogramowanie, jest to raczej opakowanie na prezent.
Johannes Rudolph
Niedoskonały środek bezpieczeństwa jest bezwartościowy. Wystarczy jedna osoba, aby złamać oprogramowanie, a potencjalny pirat przegrał. Ponieważ zaciemnianie ma swoją cenę, prawie na pewno nie jest tego warte.
David Thornley,
5

Technicznie rzecz biorąc, oprogramowanie nadal może być pirackie, ponieważ większość IT nadal działa w środowiskach programowych i sprzętowych zaprojektowanych tysiące lat temu, kiedy nawet pojęcie piractwa komputerowego nie istniało.

Te fundamenty należy zachować dla kompatybilności wstecznej, jeszcze bardziej zwiększając naszą zależność od nich.

Gdybyśmy od nowa przeprojektowali środowiska sprzętowe / programowe z myślą o zwalczaniu piractwa, moglibyśmy wprowadzić znaczne ulepszenia.

Sam zobacz:

  • Ten sam otwarty system operacyjny z wszystkimi jego elementami całkowicie odsłoniętymi i dosłownie oferujący się do manipulacji

  • Ta sama otwarta architektura komputerowa, która zajmie każde oprogramowanie, które rzucisz na nią

  • Model dystrybucji oprogramowania nadal opiera się na niezaszyfrowanych plikach przekazywanych użytkownikowi

Dokładnie taki sam problem istnieje z Internetem i jego niskim poziomem bezpieczeństwa, wieloma podatnościami, otwartością na manipulacje, spamem i rozproszonymi atakami. Za drugim razem zrobilibyśmy to znacznie lepiej, gdybyśmy mogli przerobić Internet. Niestety musimy trzymać się tego, co musimy zachować kompatybilność z masą istniejących aplikacji i usług.

Na razie wydaje się, że najlepszym sposobem ochrony oprogramowania przed piractwem jest wprowadzenie zmian na poziomie sprzętowym:

  • Zamknij sprzęt i zmień go w czarną skrzynkę. Uniemożliwić użytkownikowi bałagan ze sprzętem i jego oprogramowaniem. Podejście to polega na prawdopodobnie zaszyfrowaniu wszystkiego na poziomie układu, aby ich zewnętrzne interfejsy były w pełni szyfrowane. Dobrym przykładem tego jest szyfrowanie HDCP dla interfejsu multimedialnego HDMI - strumień multimediów jest szyfrowany, zanim opuści odtwarzacz i jest odszyfrowywany wewnątrz jednostki wyświetlającej, aby nie było żadnego otwartego strumienia danych do przechwycenia.

  • Zamknij kanały dystrybucji. Wszystkie zewnętrzne media i kanały online powinny być w pełni zaszyfrowane, aby tylko certyfikowany sprzęt był w stanie odszyfrować strumień danych.

Można je wyciągnąć, ale cały ekosystem zamieni się w więzienie. Najprawdopodobniej powstanie równoległy / podziemny ruch wolnego sprzętu / oprogramowania, tworząc równoległy ekosystem.

user8685
źródło
Tak realistycznie, nie. Ale co z teoretycznie? Jakie byłyby sposoby?
Bałwan
Zobacz aktualizację mojej odpowiedzi.
2
Szyfrowanie niczego nie rozwiązuje, ponieważ musi zostać zaszyfrowane, aby mogło zostać uruchomione. Komputery zamknięte „czarnymi skrzynkami” nie są komputerami ogólnego przeznaczenia. Przypominają sobie konsole do gier i iPady. Historia łamania więzienia tego rodzaju sprzętu do maszyn ogólnego przeznaczenia jest dość zabawna.
Tim Williscroft,
Tak naprawdę nie próbowali sprawić, by było to niemożliwe do złamania, a to, co nazywacie „łamaniem więzienia”, jest taktyką marketingową sponsorowaną i [potajemnie] wspieraną przez same firmy.
2
Właśnie to głosi Microsoft. Zatrzyma to większość uprawnionych użytkowników, instalując bezpłatne oprogramowanie. I spraw, aby używali mikroprocesorów. (bez firefox, bez chrome, bez apache, bez internetu)
ctrl-alt-delor
4

Biorąc pod uwagę ten wysiłek, zapewniono by niemal idealną ochronę przed kopiowaniem… ale nie byłoby to warte kosztów . Kilka znaczących blogów doskonale o tym rozmawiało : w szczególności koncepcja optymalnego poziomu piractwa .

Środki przeciwdziałające piractwu wiążą się z kilkoma kosztami: bezpośrednim kosztem ich wdrożenia, ale także kosztami pośrednimi: np. Środki często powodują niedogodności, zniechęcając użytkowników.

Piractwo ma koszty, ale często nie są strasznie wysokie. Może mieć także pewne zalety, np. W poszerzeniu bazy użytkowników. Jak napisał jeden z komentatorów w poście Coding Horror: „Teraz, gdy jestem programistą i mam pieniądze na oprogramowanie, mam tendencję do kupowania programów, które pirowałem w czasach studenckich, ponieważ już je znam. ”

Dlatego pewna ochrona przed piractwem jest ważna, aby upewnić się, że legalna sprzedaż nie zostanie zbyt mocno podcięta; ale poza pewnym punktem nie ma ekonomicznej zachęty, by ulepszyć środki antypirackie.

Peter LeFanu Lumsdaine
źródło
4

Wszystkie odpowiedzi wydają się techniczne, ale nie jest to problem techniczny, lecz społeczny.

Oprogramowanie jest łatwe do skopiowania i trudne do napisania. Jeśli kopiowanie nie byłoby łatwe, nie zawracalibyśmy sobie głowy. Większość programów jest po prostu drogie, aby pisać jednorazowo, a te mniejsze wymagają większych programów do uruchomienia. Jeśli również utrudniamy kopiowanie programów, stawiamy siebie w niekorzystnej sytuacji konkurencyjnej. Tak, możesz zmaksymalizować zysk krótkoterminowy, odrzucając kopiowanie. Ale w końcu stracisz udział w rynku, kto kiedykolwiek może zminimalizować koszty kopiowania, pisania i pisania.

Wolne oprogramowanie minimalizuje 1 z tych kosztów związanych z kopiowaniem i znacznie obniża pozostałe 2 koszty pisania i użytkowania.

koszt kopiowania

Mogę zainstalować Linuksa Ubuntu w tym samym czasie i wysiłku, co Windows 7 [Windows 7 potrzebuje mnie, abym dodatkowo dodał klucz licencyjny, co nieco utrudnia].

Windows 7 będzie kosztował 100 funtów, ale dla Ubuntu mogę go pobrać, kupić za 6 funtów w sklepie z czasopismami (z bezpłatnym magazynem wrzuconym do magazynu), wysyłkę pocztową za 2 funty lub pożyczyć płytę CD od znajomego.

koszt pisania

Wolne oprogramowanie można modyfikować, co zmniejsza koszty. Nie muszę zaczynać od początku.

koszt użytkowania

W systemie Windows 7 nie otrzymuję żadnych aplikacji oprócz przeglądarki internetowej, w Ubuntu dostaję każdą aplikację, którą mogę sobie wyobrazić, wiele instalacji z systemem operacyjnym.

Nie potrzebuję skanera antywirusowego w systemie Linux.

Mogę uruchomić Linuksa na starszym sprzęcie.

Dzięki Wolnemu Oprogramowaniu nikt nie zmusza do aktualizacji, tworząc niekompatybilne wersje tam narzędzi biurowych.

ctrl-alt-delor
źródło
3

W świecie, w którym komputery są wystarczająco podobne, aby móc pobierać oprogramowanie z sieci i natychmiast je uruchamiać, bardzo trudno jest zidentyfikować coś , co pozwala ustalić, czy ten komputer działa poprawnie, ale ten komputer nie jest.

W końcu sprowadza się to do posiadania czegoś, czego nikt inny nie ma. Może to być numer seryjny, za który zapłaciłeś, klucz sprzętowy lub dysk DVD z fizycznymi błędami w określonej lokalizacji. Oprogramowanie następnie szuka tej konkretnej rzeczy i odmawia uruchomienia, jeśli jej nie ma. W przypadku numerów seryjnych musisz także mieć lokalizację w Internecie, w której oprogramowanie może potwierdzić, że numer seryjny jest akceptowalny dla statku macierzystego.

Niestety hakerzy są bardzo dobrzy w chirurgicznym usuwaniu takich kontroli, więc kod musi być bardzo skomplikowany i trudny do modyfikacji, aby utrudnić, ale przy wystarczającym poświęceniu człowiek nadal może to zrobić.

W związku z tym większość niedrogich produktów programowych wybiera numer seryjny ze statkiem-matką w Internecie, który go zatwierdza, a także z polityką licencyjną, do której zobowiązane są korporacyjne kasy pieniężne. Drogie produkty zwykle wykorzystują ochronę klucza sprzętowego.

użytkownik1249
źródło
Następnie ktoś łamie klucz sprzętowy (co jest na ogół łatwe; skontrolowałem jeden z tych systemów raz) i produkuje sterownik, który go emuluje: P.
Ismael Luceno
2

Istnieją różne rodzaje oprogramowania, które mają zabezpieczenia.

Gdy weźmiesz przykład systemu Windows 7, oczywiste jest, że odpowiedź brzmi „nie”, po prostu dlatego, że architektura komputera i programowanie komputera są bardzo dobrze znane.

Ale jeśli weźmiesz pod uwagę inne oprogramowanie, takie jak PS3, PSP i iPhone, to jest zupełnie inna, głównie dlatego, że producent ma kontrolę nad wszystkim, nie tylko oprogramowaniem: mogą sprawić, że sprzęt będzie działał tylko oryginalne oprogramowanie, a to wymaga dobre umiejętności hakowania, aby je złamać.

Powinieneś rzucić okiem na projekt Microsoft Longhorn w tamtych czasach: w czasie, gdy chcieli wdrożyć układy scalone, aby sprawdzić, czy twoje oprogramowanie jest oryginalne, czy nie. Teoretycznie włamanie byłoby bardzo trudne, ale nie zrobili tego, ponieważ byłoby to bardzo nachalne.

żart
źródło
3
PS3 został złamany zaledwie kilka miesięcy po tym, jak Sony usunęło OtherOS. IPhone jest rutynowo łamany. Jakość umiejętności hakerskich naprawdę nie ma znaczenia, ponieważ jeśli jedna osoba może coś złamać, technika rozprzestrzenia się w sieci.
David Thornley,
Powodem, dla którego Microsoft nie wdraża środków, które są teraz możliwe dzięki „TreacherousComputing”, jest fakt, że zdał sobie sprawę, że zaszkodziłoby to ich biznesowi…
Ismael Luceno