Securing Old Computer Games [Film, 1h]
Kacper Szurek, in his latest video, tackles the fascinating topic of security measures in old computer games. He explains how game developers in the past tried to protect their work from piracy and unauthorized copying. Nowadays, with the internet, it's much simpler since many games are digitally purchased through platforms like Steam, where every game is tied to a user’s account. However, things were quite different back then, and game protection relied on inventive methods like revolving wheels with pictures or code cards.
Kacper highlights the importance of understanding the history of these security measures. He references various documents available online, including LGE's 'History of DRM' and the Modern Vintage Gamer channel, which explore the topic from a historical perspective. His material is based on insights from numerous sources, which can be found linked on his website. Kacper also encourages viewers to join a Facebook group where they share daily information about security.
In the first part of the video, Szurek introduces revolving wheels used in games to restrict access only to genuine owners. Valuable information like city population in SimCity was hidden behind graphics to complicate access for pirates. Kacper notes that initial attempts at securing games relied more on physical methods, which evolved into more complex mechanisms over time.
Game developers also employed other techniques, such as color modification on code cards and dongles that needed to be present in the joystick port for games to operate correctly. Kacper passionately discusses these solutions, emphasizing their ingenuity and impact on the gaming market. The material also shares anecdotes about attempts by pirates to communicate and bypass these security measures.
In conclusion, Kacper summarizes the video, mentioning its popularity — at the time of writing this article, the YouTube video had amassed over 81,904 views and 2,109 likes. His work reaches a wide audience, creating a space for viewers to share their opinions and experiences regarding the history of game security.
Toggle timeline summary
-
Music intro.
-
Discussion on the security of old games.
-
Explains how floppy disks were protected from being easily copied.
-
Mention of limited access to phones for securing games.
-
Recommends materials discussing DRM history.
-
Mentions a documentary by LGE about DRM.
-
Suggests Modern Vintage Gamer's materials on game security.
-
Explains the use of references for creating the video content.
-
Encourages joining a Facebook group for security discussions.
-
Discusses the use of specially blurred images in DRM discussions.
-
Starts explaining the early methods of game protection.
-
Describes the 'Dial-a-Pirat' wheel used in games.
-
Explains how matching images unlocked games.
-
Focuses on complications for pirates in creating copies.
-
Highlights the importance of quickly selling games.
-
Questions if all items can be copied.
-
Explains SimCity's unique code entry system.
-
Discusses the red colored security features.
-
Mentions how older printing machines struggled with red.
-
Talks about visuals that make copying difficult.
-
Explains the situation with using colored elements in security.
-
Details a unique method from the game Alone in the Dark.
-
Introduces a method involving finger prints in games.
-
Discusses 'Book of Patterns' as a security feature.
-
Delves into how Nintendo secured their games.
-
Explains the use of chips in cartridges.
-
Describes the concept of a 'dongle' for security.
-
Mentions alterations in big titles to prevent piracy.
-
Notes how some titles were marketed through piracy.
-
Concludes with a humorous mention about how modern games use different elements.
Transcription
♪ ♪ ♪ ♪ ♪ ♪ ♪ ♪ ♪ ♪ ♪ ♪ ♪ Czy zastanawiałeś się kiedyś jak działają zabezpieczenia w starych grach? Jak chroniono dyskietki sprawiając, że nie można ich było w prosty sposób kopiować? Właśnie o tym postaram się opowiedzieć w dzisiejszym odcinku. Obecnie, przynajmniej w teorii, jest dużo prościej. Mamy przecież internet, a każda gra jest podpięta do naszego konta na Steamie czy na innej platformie. Większość gier jest multiplayer, więc jeżeli jedna osoba zaloguje się na nasze konto, to ta poprzednia jest wylogowywana. Ale dawniej nie było tak prosto. Mało kto miał dostęp do telefonu, więc trzeba było jakoś zabezpieczać swoje dzieła. Jak to robiono? Właśnie o tym postaram się dzisiaj opowiedzieć. Ale nie będę mówił o zaawansowanych szczegółach technicznych. Postaram się opowiedzieć o ideach, bo one są proste do zrozumienia i nie zmieniły się na przełomie lat. Ponieważ opowiadam o historii, jest przynajmniej kilka materiałów w internecie, które opowiadają o tym samym. Jeżeli nie chcecie oglądać mojego materiału, mogę polecić Wam co najmniej dwa. Pierwszy autora LGE, który nazywa się Historia DRM. Jest to 17-minutowy, krótki dokument, w którym autor dosłownie przelatuje przez wszystkie popularne zabezpieczenia tamtej epoki. Drugi materiał, który mogę polecić, a w sumie cały kanał, to Modern Vintage Gamer. Możecie wejść na jego stronę, na stronę tego kanału, kliknąć ikonkę lubki, a następnie wpisać Copy Protection. Wtedy znajdziecie wszystkie materiały na tematy powiązane właśnie z bezpieczeństwem gier, ale nie tylko, ponieważ autor opisuje także jak łamano np. konsolę PlayStation, czy też Xbox 360. Tak więc mój materiał niejako bazuje na tych, które tutaj opisałem, ponieważ opisujemy historię, a historia jest tylko jedna i ciężko wymyślić coś nowego. Ponieważ podczas tworzenia tego materiału opierałem się na dość dużej ilości stron, jak zwykle odnośniki do wszystkich stron, z których korzystałem, znajdziecie w lewym dolnym rogu ekranu. Ale jeżeli nie chce wam się przepisywać wszystkich tych długich odnośników, są one pogrupowane na mojej stronie www.szurek.pl/.linki/.15 . Tam znajdują się wszystkie odnośniki, z których korzystałem podczas tworzenia tego materiału. A jeżeli jeszcze nie dołączyliście do naszej grupy Od Zera do Pentestera na Facebooku, serdecznie zachęcam, aby to zrobić. Tam codziennie publikuje jakieś ciekawostki powiązane z bezpieczeństwem. Można mnie także znaleźć na Instagramie kacperszurek. Tam w bardziej graficznej formie opowiadam o bezpieczeństwie w prosty i mam nadzieję zrozumiały sposób. A jeżeli dopiero zaczynasz naukę bezpieczeństwa i jest zbyt dużo materiałów, nie wiesz od czego zacząć, zachęcam do skorzystania z darmowego kursu Od Zera do Pentestera. Znajdziesz go na szurek.tv. A więc zaczynajmy. Na samym początku chciałbym wspomnieć, że niektóre zdjęcia na tej prezentacji są specjalnie zamazane. Ponieważ mówimy tutaj o systemach DRM, które z idei mają chronić przed nieuprawnionym jakby kopiowaniem danej gry, nie jestem prawnikiem i nie chcę się zastanawiać, czy już wygasły prawa do tej gry, a może nie. Dlatego jeżeli przedstawiam jakiś system zabezpieczeń, to zamazuje niektóre części. Mam nadzieję, że nie będzie to wpływało na odbiór tej prezentacji. A ja dzięki temu, mam nadzieję, uniknę w przyszłości próby usunięcia tego filmu. Gdyby jednak do jakiegoś materiału w przyszłości znalazła się osoba, która posiada prawa autorskie np. do tej gry i chciałaby mi ten film po prostu z YouTube usunąć. Jeżeli chcecie zobaczyć zdjęcie w oryginalne, to zawsze w lewym dolnym rogu ekranu znajduje się odnośnik do oryginalnego zdjęcia. Możecie go sobie otworzyć na komputerze i zobaczyć jak to wyglądało w pełnej krasie. Zaczynajmy. Jak wyglądały pierwsze takie metody zabezpieczeń? Tutaj widzimy ekran z gry i widzimy postać pewnego pirata. Możecie zobaczyć, że mamy poziomą linię. To znaczy górna część twarzy nie zgadza się z tą dolną częścią. Dlaczego tak to wyglądało? Jeżeli popatrzymy na to, co otrzymywaliśmy razem z grą, to oprócz samej dyskietki otrzymywaliśmy też takie koło, które nazywało się tutaj Dial-a-Pirat. To koło było obrotowe, to znaczy można było nim kręcić. I wystarczyło wtedy tylko tą górną część dopasować do tej dolnej, która została wyświetlona przez grę. No i wtedy na środku tego koła wyświetlały się pewne cyferki, które należało przepisać do gry. No i wtedy, jeżeli wszystko się zgadzało, mogliśmy rozpocząć rozgrywkę. Istnieje interaktywna wersja tego narzędzia pod adresem, który widnieje w lewym dolnym rogu ekranu. Możecie spróbować samodzielnie zobaczyć, jak to wyglądało. No i dlaczego tutaj korzystano z twarzy, a nie np. z jakichś liter czy cyfr? Chodziło o to, aby nie można było w prosty sposób stworzyć takiej kopii takiego koła. No bo co, musielibyśmy opisywać te twarze, czyli np. że jest ktoś, kogo twarz wygląda jak małpa, albo jakiś pirat, który ma oczy. No bo oczywiście pewnie znaleźliby się jacyś chętni, którzy byliby w stanie odwzorować te zdjęcia, tych twarzy, jakoś pięknie je obmalować, ale dla większości osób było to dość ciężkie. Więc w taki sposób utrudniano wykonanie kopii takiego narzędzia. Oczywiście powstały różne wersje tych codwheels. Tu widzimy inną wersję, która korzystała z takich różnych herbów, ale idea wciąż jest taka sama. Oczywiście dało się to skopiować, jeżeli ktoś był na tyle uparty i też w pewien sposób był na tyle uparty i chciał zepsuć to koło. Tutaj widzimy screenshot z filmu, gdzie autor właśnie rozbiera to koło i wyciąga wszystkie części. No i możemy tutaj zobaczyć, że pod spodem mamy całą tę kartkę z tymi różnymi symbolami. Nad nią jest inna kartka, która jest wycięta w odpowiedni sposób. No i właśnie obracając tym kołem mogliśmy wybrać to, czego oczekiwała od nas gra. Więc teoretycznie można było to jakby odtworzyć. Można było zrobić szablon i potem ktoś po prostu nożyczkami mógłby to wycinać, ale oczywiście było to dość utrudnione. Chodziło o to, aby utrudnić właśnie tym piratom stworzenie, odwzorowanie takich zabezpieczeń. Zwłaszcza chodziło o to, aby w pierwszych kilku tygodniach ta gra nie była zbyt często piracona, no bo zazwyczaj tak to z grami bywa, że największe przychody uzyskuje się właśnie podczas pierwszych, początkowych dni. No ale czy wszystko da się skopiować? Może istnieją jakieś rzeczy, których nie da się skopiować. Teraz mamy telefon i możemy zrobić zdjęcia praktycznie wszystkiego, no ale w przyszłości nie było tak prosto. Mogliśmy oczywiście zrobić zdjęcia analogowe, analogowym aparatem, a potem próbować je jakoś wywoływać i do każdej kopii naszej pirackiej gry dołączać takie zdjęcie, ale oczywiście było to dość problematyczne. Prościej było skorzystać z Xera, czyli taki pirat, który skopiował grę, mógł oczywiście pójść do Xera i skopiować taki właśnie Codewheel albo coś innego. No i tutaj jest druga idea, która przyświecała autorom zabezpieczeń. Widzimy przykład gry SimCity. Tutaj widzimy, że gra prosi nas o podanie jakiegoś kodu. W tym wypadku tym kodem jest populacja danego miasta. No i to miasto nie jest opisane z nazwy, tylko jest opisane w taki graficzny sposób. Czyli widzimy, że nie mamy tutaj do czynienia np. ze stroną czwartą, ale mamy do czynienia ze stroną, która jest opisana jako kwadrat i prawy górny róg jest po prostu czarny. Tak samo z miastami. Nie mamy tutaj nazwy miasta, ale po prostu graficzną reprezentację w formie kwadratów. Chodziło o to, aby też utrudnić jakby kopiowanie tej kartki, ponieważ gdyby były to po prostu same nazwy, nazwę można po prostu przepisać, a tutaj trzeba by się było męczyć i trzeba by było rysować takie kwadraciki. No i jak to wyglądało? Jeżeli popatrzymy sobie, co otrzymywaliśmy w pudełku razem z grą, to widzimy taką jedną wielką czerwoną kartkę. No i widzimy, że rzeczywiście ta kartka jest ponumerowana, widzimy te kwadraciki, nazwy miast, a potem zamazana tutaj w moim przypadku akurat populacja danego miasta. No ale zastanówmy się, dlaczego ta kartka jest czerwona. Na pierwszy rzut oka moglibyśmy pomyśleć, że chodzi o to, aby ciężko się ją czytało. No ale to jest trochę bez sensu. Przecież tą kartkę, tą oryginalną kartkę, posiadała osoba, która zapłaciła za grę. Więc jeżeli ktoś zapłacił za grę, to czemu mielibyśmy mu utrudniać czytanie? Nie chodziło o to, że po prostu taką kartkę czytało się trudniej. Chodziło o coś zupełnie innego. Chodziło o to, że stare czarno-białe maszyny Xero miały problem z czerwonym kolorem. Udało mi się znaleźć przykład firmy i film na YouTubie, gdzie firma reklamuje swój papier, który był copy-proof, czyli teoretycznie nie dało się go skopiować przy pomocy maszyny Xero. No i tutaj widzimy przykład takiej kartki. To jest po prostu czerwona kartka z jakimiś tam napisami. No i tutaj widzimy przykład próby kopiowania tej kartki przez czarno-białą maszynę Xero. Widać, że ta kartka nie jest tak czytelna. Oczywiście jakieś tam pojedyncze symbole są czytelne, ale generalnie nie za wiele da się z tej kartki odczytać. No a jak widzieliśmy przed chwilą w przykładzie SimCity, ta karta kodu była dość długa i zawierała dość dużo symboli, więc na pewno byłyby one nieczytelne. No ale oczywiście te cyfry, te kwadraciki da się przepisać. Jeżeli ktoś jest wyjątkowo cierpliwy, mógł zrobić kopię. Najpierw przepisać ją ręcznie po prostu na nową kartkę, a potem już taką normalną, zwykłą kartkę, białą kartkę, kserować w maszynach Xero. Może dlatego w pewnym momencie nie pisano jakichś rzeczy, które były łatwe do przepisania, tak jak widzieliśmy, tam po prostu kwadrat i w którymś z czterech miejsc albo był on zaciemniony, albo nie, a stosowano pewne piktogramy. No bo piktogramy są już nieco cięższe do przepisania. No bo popatrzcie na ten prawy symbol, który jest tutaj zaznaczony na niebiesko. Jakbyście go opisali jako jakiegoś dinozaura, który atakuje człowieka, no wtedy ta osoba, która otrzymałaby taką piracką kopię gry, to miałaby pewną nieladę za gwostkę, żeby odczytać, o co tak naprawdę nam chodziło. Więc w taki sposób próbowano jakby zniechęcić piratów do kopiowania tych kart kodów. No ale kolejną iteracją tego rozwiązania były kolory. Gracz otrzymywał taką oto czarno-białą grafikę podczas uruchomienia gry, no i na tej grafice był zaznaczony któryś fragment. I należało wybrać z listy po prawej stronie, jakiego jest on koloru. Do gry była dołączona taka właśnie kolorowa kartka, na której był dokładnie ten sam obrazek, który widzimy na komputerze, no ale już z kolorami. Generalnie chodziło o to, że w przeszłości nie bardzo istniały kolorowe maszyny Xero. Gdyby ktoś chciał wykonać kopię takiego obrazka, musiałby go po prostu ręcznie kolorować. A jak widzicie, ten obrazek składa się z bardzo dużej ilości elementów, a każdy jest innego koloru, więc teoretycznie jest to dość ciężkie do skopiowania. No i generalnie w tamtych czasach nie przejmowano się tym, że może ktoś mieć problem z rozpoznawaniem kolorów. Jeżeli ty miałeś problem z rozpoznawaniem kolorów, to generalnie miałeś problem, bo podczas każdego uruchomienia takiej gry, która była zabezpieczona w taki sposób, musiałeś kogoś poprosić o pomoc. Tutaj widzimy kolejną iterację tego rozwiązania. Gra prosi nas o podanie kolorów, które występują w lokalizacji L3. No i tym razem do gry była dołączona taka wielka kartka kodów, więc tutaj w tej tabelce trzeba było znaleźć pole L3, a następnie cztery kolory, które się tam w tej komórce znajdowały, trzeba było wybrać właśnie w grze. No i dopiero wtedy gra była uruchomiona. Jeżeli popatrzysz sobie na tę kartę kodów, to możesz pomyśleć, że nie jest tak dużo kombinacji, możemy to sobie przepisać na kartce, zamiast malować te kolory. Możemy na przykład pisać B, kiedy to jest blue, czy red, no i tak dalej, i tak dalej. Teoretycznie dałoby się to zrobić, tylko że twórcy gier nie byli nieco przewidywalni, ponieważ ta karta kodów wyglądała tak. Czyli to nie była jedna strona, ale to było kilka, kilkanaście stron takiej wielkiej mieszaniny różnokolorowej. Więc jak widzicie, tutaj tych elementów do przekopiowania, do przepisania było naprawdę dużo. Więc ponownie chodziło o to, aby tych piratów po prostu zniechęcić albo po prostu wydłużyć ich czas pracy, zwłaszcza jeśli chodzi o ten pierwszy, początkowy okres, kiedy gra teoretycznie najlepiej się sprzedawała. No i tutaj dochodzimy do problemu dzisiejszych czasów. No bo wyobraź sobie, że chciałbyś za parę lat pokazać swojemu dziecku grę, w którą grasz obecnie. No i może być to problematyczne w czasach obecnych, ponieważ zazwyczaj teraz my gier nie mamy w fizycznych formach, w formach jakichś nośników, no może tylko w wersjach konsolowych. Zazwyczaj to rzeczywiście mam albo płyty CD, albo jakiś kartridż, ale większość gier ściągamy z internetu, z jakiejś chmury, ze Steama. No i może się okazać, że za jakiś czas te gry po prostu znikną i nie będziemy mogli ich pokazać przyszłemu pokoleniu. No i taki problem jest teraz obecnie z grami, które powstały kilkanaście, kilkadziesiąt lat temu. No bo o ile możemy mieć np. ROM tej gry, no to czy zachowało się to zabezpieczenie, czyli np. ta kartka kodów, co jeżeli żadna kartka kodów się nie zachowała? No, możemy skorzystać z inżynierii wstecznej i próbować na podstawie analizy kodu dotrzeć do tego, jak to zabezpieczenie działało. No ale wiadomo, nie o to przecież chodzi, więc jest to też problematyczne z punktu widzenia historii i pokazywania tych gier przyszłym pokoleniom. Jeżeli chcielibyście zobaczyć, jak właśnie działało to zabezpieczenie Jet Set Wheelie, czyli ta długa kartka, no to możecie sobie na GitHub'ie zobaczyć kod. Ktoś po prostu przepisał to zabezpieczenie, kod tego zabezpieczenia na języka Python, no i to jest około 67 linii kodu takie zabezpieczenie po prostu zajmuje. Czyli teraz, jeżeli ktoś nie ma takiej kartki kodów, może sobie uruchomić ten skrypt w Pythonie i ten skrypt po prostu generuje taką kartkę kodów dla nas, dla czasów obecnych. Taka ciekawostka. No ale idąc dalej w utrudnianiu życia osobom, które chciałyby zarobić na naszej twórczości, popatrzmy sobie na grę Alone in the Dark. No i teraz widzicie to mało niebieskie coś. To coś, co wyglądem przypomina cztery małe dyskietki, to mała książeczka. Bardzo mała książeczka, jak widzicie. No i rzeczywiście możecie zobaczyć, że ona jest dość gruba. No i co jest w środku tej książeczki? Mamy różne rysunki. No i ta książeczka to było 260 stron. Jeżeli chcielibyście sobie obecnie zobaczyć, jak ta książeczka wyglądała, strona WebArchive posiada właśnie plik PDF, w którym jest zarchiwizowana cała ta książeczka. No ale ponownie wyobraźcie sobie, że jeszcze kilkadziesiąt lat temu skopiowanie takiej małej książeczki mogło być rzeczywiście problematyczne. No bo jak ją zmieścić do Xera? Poza tym tych stron jest dość dużo. Przypisywanie ich w formie graficznej, opisowej jest dyskomplikowane, no bo tu widzimy jakąś apteczkę, tu widzimy jakąś inną grafikę. A jak to wyglądało po stronie gry? Zostawaliśmy coś takiego. Mieliśmy informację, że proszę zaznaczyć przedmiot ze strony tutaj w tym wypadku 29, a potem mieliśmy listę przedmiotów, które obracały się dookoła, no i trzeba było dopasować przedmiot do tego, który znajduje się w takiej książeczce. Więc po raz kolejny próba utrudnienia pracy osobom, które chciały skorzystać na naszej własności intelektualnej. Generalnie w przeszłości czerwony kolor był bardzo popularny w tych zabezpieczeniach. Popatrzmy teraz na kolejny przykład, nieco bardziej zaawansowany. Tutaj już nie pytano nas o kolor, ale pytano nas o odcisk palca. Jeżeli przeczytacie sobie, o co chodzi u góry w tym tytule, to jesteśmy proszeni o użycie szkła powiększającego na naszej mapie, która została dołączona do naszego boksa. No i o co chodzi? O jakie szkło powiększające? O jaką mapę? Jeżeli popatrzymy sobie na zestaw, to tutaj właśnie widoczne jest to szkło powiększające, to czerwone coś z rączką. No i oprócz tego mieliśmy tą mapę. No i czy widzicie tutaj jakiś odcisk palca? Dam wam chwilę na zastanowienie, czy widzicie jakiś odcisk palca. No zapewne nie widzicie, bo żeby ten odcisk palca się pojawił, to trzeba było najechać tym przedmiotem, czyli tą lupką, na tą mapę. No i wtedy działało to troszkę jak taki filtr, ponieważ ta lupa była czerwona, to ona usuwała niejako ten kolor czerwony, który był nadrukowany na tej kartce. No i pod spodem pojawiał się jakiś odcisk palca. Tutaj myślę, że widać to w dużo lepszy sposób. No i w taki oto sposób trzeba było przelecieć przez całą tą kartkę, trzymając tą lupę i próbować dopasować odcisk palca, który został wyświetlony przez grę, do tego odcisku palca, który znajduje się na mapie. No i jeszcze pod każdym odciskiem palca było opisane, do jakiej osoby ten odcisk palca należy. No i ponownie stworzenie, kopii, przepisanie, przyrysowanie takiego czegoś było dość skomplikowane, bo te odciski do siebie były bardzo podobne. Nic więc dziwnego, że z czasem powstały pewne ściągi, gdzie po prostu ktoś zgrupował te odciski w jednym miejscu, no bo korzystanie z tej lupy nie było na pewno proste i było męczące, a zazwyczaj podczas pierwszego uruchomienia i każdego kolejnego uruchomienia tej gry musieliśmy całą procedurę powtórzyć od nowa, no bo przecież gra nie wiedziała, czy my ją uruchamiamy pierwszy raz, a może dopiero co pożyczyliśmy ją od kolegi, trzeba by było sprawdzić po raz kolejny, czy jesteśmy posiadaczami oryginalnej kopii. Tutaj kolejny przykład bardzo podobnego rozwiązania. Tym razem nazwano tę książkę nie mapą, ale książką Book of Patterns, czyli książką wzorów. Ta książka wzorów wyglądała mniej więcej tak, no i tutaj troszkę inaczej to wyglądało. Był jakiś wzór, który był nadrukowany, on był koloru czerwonego, a pod spodem były nadrukowane jakieś inne symbole, których oczekiwała od nas gra. No i ponownie na tej samej zasadzie należało wziąć ten filtr, w tym wypadku LucasFilm Games, no i dopasować ten filtr do miejsca, które nas interesowało i w taki sposób odczytać informacje, które się tam znajdowały. Tutaj widzimy taką książkę, jak ona mogła wyglądać. Gdybyśmy ją spróbowali skserować w kserze, no to na pewno nic by z tego nie wyszło. Generalnie widzicie, że to jest zdjęcie zrobione cyfrowym aparatem, a i tak nic nie widać. Widać tylko ten napis Maniac Mansion, czyli nazwę gry, z którą mieliśmy do czynienia. Dopiero jeżeli nałożyliśmy ten filtr, czerwony filtr, to to, co było nadrukowane pod spodem, było dużo czytelniejsze. Czyli widzimy, że bardzo ciekawy sposób zabezpieczenia, który był najprawdopodobniej dość ciężki do skopiowania, ale wiadomo, dla chcącego nic trudnego. Co ciekawe, ta sama metoda była też używana w inny sposób. Niektóre gry miały dołączane razem do opakowań takie książki. W tych książkach znajdowały się rozwiązania niektórych trudniejszych zagadek. No bo dawniej nie było internetu, więc jeżeli gdzieś zatrzymałeś się na jakiejś grze, miałeś problem z rozwiązaniem jakiegoś jednego konkretnego zadania, to generalnie mogłeś zapytać o to rozwiązanie kolegów, ale to był trochę wstyd pytać kolegów, że nie potrafisz rozwiązać jakiejś gry. Mogłeś kupować magazyny z grami i tam zazwyczaj były jakieś artykuły o tych grach i o tych zagadkach, które były trudniejsze. A czasami mogłeś też zadzwonić na infolinie danej firmy i tam zapytać o to, jak rozwiązać konkretną zagadkę. W tym wypadku, w przypadku innej gry była po prostu dołączona specjalna książka no i żeby sobie za bardzo nie spoilerować, była ona zabezpieczona w dokładnie taki sam sposób. Czyli żeby odczytać odpowiedź na tą zagadkę należało przyłożyć ten czerwony filtr. Bardzo ciekawe rozwiązanie. No ale przecież gry nie były dystrybuowane tylko na dyskietkach czy na płytach CD. Czasami mieliśmy też do czynienia z kartridżami i to samo w sobie bardzo blokowało piratów, zwłaszcza tych piratów domowych. No bo przecież jeżeli chciałeś skopiować dyskietkę, to mogłeś sobie kupić czystą dyskietkę i próbować przy pomocy jakiegoś oprogramowania przegrać materiał z jednej dyskietki na dyskietkę drugą. No ale jeżeli chciałeś skopiować kartridż, to to nie było takie proste. Po pierwsze musiałeś mieć jakieś urządzenie, które by takie kartridże kopiowało. Więc kartridż sam w sobie był nieco lepszym rozwiązaniem. Ale on dalej nie chronił w 100%, zwłaszcza przed zorganizowanymi grupami przestępczymi, które kopiowały i żyły z kopiowania cudzej twórczości. No i do tego też podeszło w taki dziwny sposób Nintendo, które wiedziało, że generalnie gry będą kopiowane, ale chciało mieć jakiś oręż w ręku, chciało walczyć z tymi dużymi graczami, zwłaszcza walczyć z nimi w sądzie. Jak podeszli więc do tego tematu, to widzimy fragment patentu na jeden z kartridż produkowanych przez Nintendo i widzimy, że na samym dole jest wytłoczona nazwa producenta. No i teraz gdyby ktoś chciał skopiować dokładnie jeden do jeden ten kartridż i potem sprzedawać go oficjalnie w jakichś sklepach pod swoją nazwą, no to nie mógłby tego zrobić, bo tutaj mamy prawo patentowe, więc Nintendo mógłby pójść do sądu i po prostu taką firmę pozwać. Ale samo w sobie to jeszcze niczego nie zmieniało. Po co to tak naprawdę było? No zobaczmy sobie na oficjalny kartridż. Zobaczmy, że to logo jest wytłoczone, to znaczy to są dziurki, czyli to nie jest takie płaskie nadrukowane, to są po prostu dziurki. Po co są te dziurki? No chodzi o to, że twórcy Nintendo byli dość sprytni, ponieważ konsola sama w sobie zawierała takie specjalne wypustki. No i teraz była w stanie sprawdzić, czy kartridż, który jest wsadzany, ma w odpowiednich miejscach te dziurki. Jeżeli te dziurki nie były w tych miejscach, w których konsola tego wymagała, po prostu gra się nie uruchamiała. To było takie fizyczne zabezpieczenie. No i teraz znowu, gdyby ktoś chciał podrobić kartridż Nintendo, musiałby stworzyć taki klon tego kartridża z tymi dziurkami, tak jak to było widoczne w patencie. No niestety nie do końca to poszło po myśli Nintendo, ponieważ sprytni twórcy kopii zauważyli, że nie są sprawdzane wytłoczenia wszystkich literek, czyli nie jest sprawdzany cały napis Nintendo, ale sprawdzane są tylko niektóre pojedyncze wypustki. Więc byli w stanie wyprodukować kopię takiego kartridża, na którym nie było napisane Nintendo, ale wypustki dalej się zgadzały i konsola traktowała taki kartridż jako prawidłowy i uruchamiała z niego po prostu grę. No i zostało to zrobione przy pomocy, można to nazwać, takiej metody clean room design, kiedy bierze się jakiś program czy bierze się jakiś sprzęt, następnie przy pomocy inżynierii wstecznej dowiadujemy się, jak ten sprzęt działa, a potem próbujemy stworzyć kopię, tylko w taki sposób, aby nie naruszyć żadnych patentów, aby było wszystko zgodnie z prawem. No i tu widzimy właśnie przykład takiej kopii tego kartridża. Widzimy, że w tych dwóch miejscach jest ta wypustka, żeby się właśnie te wypustki zgadzały z tymi, które znajdują się w konsoli. No ale w nowszych wersjach Nintendo postawiło na lepsze zabezpieczenie. To był tak zwany chip CITS, czyli Checking Integrated Circuit. No i teraz, jeżeli popatrzymy sobie na płytkę konsoli, to zobaczymy, że jest tu tak zwany ten chip zaznaczony tutaj czerwoną strzałką i dokładnie ten sam chip znajdował się w każdym kartridżu z grą. Czyli każda oficjalna gra licencjonowana przez Nintendo, każdy kartridż zawiera dokładnie ten sam chip, który znajdował się też w każdej konsoli. No i jedynym sensem istnienia tego chipu było to, że służył on zabezpieczeniu antypirackiemu. Te czipy były takie same, więc produkowały dokładnie te same rzeczy. Więc można było łatwo sprawdzić, czy w tym samym momencie zwracane są te same dane. Jeżeli dane nie były zwracane tak samo, gra po prostu się nie uruchamiała. Konsola po prostu taką grę odrzucała. No i okazało się, że to było bardzo dobre zabezpieczenie. Te chipy przez długi okres czasu nikt nie stworzył, nie stworzył kopii, czyli jakby nie udało się podrobić tego chipu. Oczywiście po kilkunastu latach udało się stworzyć kopię, ale na samym początku to zabezpieczenie było bardzo, bardzo dobre. Jak obchodzono problem tego, że każdy kartridż, nawet ten nielicencjonowany, musiał mieć ten chip, żeby po prostu działać? Na zasadzie dawcy-biorcy. Wiemy już, że każdy kartridż musiał mieć ten chip, więc można było wylutować chip z oryginalnego kartridża i wlutować go w ten nielegalny. Albo też tak jak tutaj na tym obrazku, ten dolny kartridż to jest coś nielegalnego, nieoficjalnego, nielicencjonowanego, a u góry mamy oficjalny licencjonowany kartridż. No i teraz ten dolny kartridż korzysta z tego chipu, który znajduje się u góry, czyli taki dawca-biorca, czyli ten górny kartridż jest dawcą chipu CIC do tego dolnego. W taki oto sposób ten kartridż dolny działa, pomimo tego, że sam w sobie nie ma tego chipu CIC. W taki sposób udało się obejść to zabezpieczenie. Potem też zauważono, że wystarczy odlutować w konsoli ten jeden pin z tego chipu. Kiedy odlutowało się ten jeden specyficzny pin, tak jak tutaj na zdjęciu, to wtedy to zabezpieczenie generalnie przestawało działać. No i Nintendo zorientowało się, że tak się dzieje, że ludzie o sobie odlutowują to jedno miejsce i nagle mogą korzystać z innych pirackich wersji kartridży, a więc w swoich nowych produkcjach, swoich nowych oficjalnych grach dodawali specjalny kod, który sprawdzał, czy ten chip istnieje i czy jest on włączony. No bo dawniej takiego kodu nie było, on nie był potrzebny, ponieważ wszystko działo się w konsoli. To konsola po prostu komunikowała się z kartridżem, sprawdzała, czy wszystko jest w porządku. A teraz jeszcze dodatkowo wprowadzono nowe zabezpieczenie, że gra sprawdzała, czy ten chip rzeczywiście działa. Jeżeli ten chip był odlutowany, tak jak w tym wypadku, gry nie chciały się uruchomić. Ale produkowanie tego chipu i dołączanie go do każdego kartridża było kosztowne, więc nie zawsze miało sens. Na przykład w przypadku konsoli Game Boy. To miała być podręczna konsolka, która miała być tania. Miała być przede wszystkim tania, więc nie można tam było zastosować chipów CIC, bo to by znacząco podniosło koszty każdej gry. Nintendo tutaj zastosowało kolejny ciekawy patent. Jeżeli miałeś kiedyś Game Boya, to możesz pamiętać, że jeżeli wkładało się kartridż do konsoli i uruchamiało się go, to wtedy właśnie z góry do dołu zjeżdżało logo Nintendo. I to logo musiało wyglądać dokładnie tak jak tutaj. Jeżeli gdzieś był jakiś inny bit, coś się nie wyświetlało prawidłowo, to konsola zatrzymywała się na tym etapie i nigdy nie uruchamiała gry dalej. Dla zwykłego użytkownika była to interesująca informacja, bo znaczyła mniej więcej tyle, że najprawdopodobniej te styki w Game Boyu są po prostu jakoś zabrodzone, trzeba je przetrzeć i spróbować włożyć ponownie kartridż i wtedy zobaczyć, czy to logo wyświetla się już prawidłowo. Ale oprócz takiej prostej czynności, że rzeczywiście sprawdzamy, czy kartridż został włożony prawidłowo, było tutaj drugie dno. Nintendo też chciało się zabezpieczyć przed tymi dużymi firmami, które chciałyby kopiować ich kartridże, ponieważ sama konsola sprawdzała, czy kartridż, który jest włożony, jest oryginalny i robiła to w taki sposób, że sprawdzała, czy w tym kartridżu jest logo. Logo było zdefiniowane w patencie, no i to logo było 1 do 1, musiało się znajdować takie samo logo w kartridżu, no i jeżeli to logo było identyczne, to dopiero wtedy gra się uruchamiała. Dzięki temu, jeżeli jakiś inny twórca spróbowałby stworzyć nieoficjalną grę na Nintendo, no to mogliby go pozwać, ponieważ znajdował się ten kawałek kodu, który był przez nich prawnie chroniony. No ale niestety okazało się, że Nintendo tutaj troszkę zepsuło sprawę, ponieważ to sprawdzanie poprawności tego loga odbywało się w dwóch turach. Pierwsza tura to było wtedy, kiedy logo było wyświetlane. No i wtedy to logo po prostu nie było sprawdzane, ono było po prostu wyświetlane na ekranie, czyli z góry do dołu te bity, które znajdowały się tam pod jakimś konkretnym adresem, były wyświetlane. A dopiero sprawdzanie poprawności tego loga działało się potem, czyli potem jak już to logo zostało wyświetlone na ekranie użytkownika. No i spytni twórcy podróbek wpadli na sposób, że mieli dwie wersje loga. Pierwsza wersja loga to była ta, która wyświetlała dowolny napis, który oni sobie wybrali, i druga to ta wersja loga, której żądała konsola. No i można zobaczyć, że rzeczywiście da się to zrobić także w czasach obecnych. Jest filmik na YouTubie, gdzie YouTuber Stasz Smaking stworzył właśnie przy pomocy płytki FPGA taką implementację fałszywego kartridża, który wyświetlał napis Hackett, a pomimo tego potem gra się wyświetlała. A jak wiemy z wcześniejszego opisu, o którym wam mówiłem, jeżeli gra nie miała loga Nintendo, to teoretycznie nie powinna się uruchomić, czyli powinna się zatrzymać na tym fałszywym logo, a tutaj jednak działa to całkowicie prawidłowo. I tutaj na stronie możemy zobaczyć loga, które były używane przez inne firmy, które tworzyły podróbki po prostu takich kartridży, czyli widzimy, że różne firmy korzystały z tego rozwiązania. No ale potrzebujemy czegoś lepszego, czegoś bezpieczniejszego, no bo te wszystkie metody, które tutaj pokazywałem, owszem są ciekawe i fajne, ale jednak w większości da się je bardzo prosto obejść, a my potrzebujemy czegoś lepszego, czegoś bezpieczniejszego. I tutaj do gry wchodzi Landslock, zabezpieczenie, które jest przez graczy bardzo nienawidzone. Dlaczego? No bo jeżeli, żeby skorzystać z zabezpieczenia, trzeba dołączyć do niego krótką instrukcję obsługi, no to generalnie coś poszło nie tak. Zabezpieczenia, przynajmniej w teorii, powinny być transparentne dla tych legalnych użytkowników, czyli przynajmniej teoretycznie nie powinny jakoś znacząco utrudniać tym legalnym użytkownikom korzystania z danego programu czy z danej gry. No a tutaj na wstępie osoba, która legalnie kupiła daną grę, dostaje jakąś krótką instrukcję obsługi. No ale zobaczmy, o co chodziło z całym tym kawałkiem plastiku. Do każdej gry był dołączany inny kawałek plastiku. Tutaj widzimy, że mogły one z zewnątrz wyglądać tak samo, ale różniły się tym, co jest w środku. No i zdarzało się, że producenci mylili te kawałki plastiku, czyli do gry A dołączali plastik lenslock z gry B, co sprawiało, że nikt nie mógł w tę grę zagrać, ponieważ zabezpieczenie z gry B nie działało z grą A. No ale jak używało się tego ustrojstwa? Trzeba je było złamać tak w pół i przyłożyć do monitora. Podczas uruchomienia gry, gra wyświetlała takie różne kwadraciki. No i teraz teoretycznie, patrząc przez to okienko, które nam powstało, mogliśmy zobaczyć jakiś napis, który został wygenerowany przez komputer. Generalnie był to zestaw pryzmatu w plastikowej oprawce wielkości kasety magnetofonowej. Tutaj widzimy mniej więcej, jak to przynajmniej teoretycznie powinno działać, więc kiedy patrzymy sobie na ten pryzmat, on odbija światło i to, co jest wyświetlane na komputerze, niejako się odwraca, więc my możemy to odczytać. Brzmi jak magia. No i tak było, bo zabezpieczenie przynajmniej w teorii wydaje się być ciekawe. Ciężko jest to zreplikować, bo nie wydaje mi się, żeby pan Stasio próbował tworzyć swój pryzmat w swojej piwnicy, ale okazało się, że to zabezpieczenie po prostu bardzo utrudniało grę graczom, którzy legalnie nabyli dany tytuł, bo na początku trzeba było to urządzenie skalibrować, czyli każda gra miała taki tryb kalibracji, kiedy wyświetlała OK, czyli dwie literki OK, i musieliśmy tak długo przykładać i przesuwać niektóre piksele w naszym komputerze, aby ten obraz pojawił się i był dla nas czytelny. Jeżeli widzieliśmy napis OK podczas tej kalibracji, to znaczy, że wszystko jest w porządku, że potrafimy korzystać z tego rozwiązania. No i potem byliśmy po prostu testowani, czyli czy posiadamy lenslocka do konkretnej gry. A więc wyświetlały się nam te kwadraciki, trzeba było przyłożyć ten lenslock do naszego monitora i zobaczyć, jakie tam dwie liczby i cyferki się wyświetlają. W tym wypadku jest dość prosto, myślę, że większość osób zgodzi się ze mną, że tutaj widzimy P3. Ale nie zawsze było tak prosto, bo popatrzcie sobie na ten przykład i co tutaj widzicie? T6, 7, 6, P6, no generalnie kilka kombinacji. A my nie możemy sobie tak strzelać ile razy chcemy, ponieważ za każdym błędnym podaniem gra stwierdza, że jesteśmy nielegalnym użytkownikiem i losuje nam tego lenslocka, czyli ten schemat, który się wyświetla, na nowo. Więc my znowu musimy przyłożyć to nasze cudo do ekranu i patrzeć, co się tam wyświetla. A problem był taki, że to generalnie działało z jedną konkretną rozdzielczością ekranów. Kiedy ekran był troszkę za duży, troszkę za mały, te piksele były troszkę za duże, troszkę za małe, to po prostu się to wszystko rozjeżdżało i było nieczytelne dla użytkownika. Jeżeli chcielibyście zobaczyć, jak to wyglądało, istnieje wersja open source, która po prostu działa, czyli taki program, gdzie jeżeli mamy starą grę, możemy sobie go uruchomić, następnie myszką nakierować na ekran, w którym jest uruchomiona ta gra, no i wtedy ten algorytm jest tam zakodowany, czyli zamiast korzystać z tego fizycznego lenslocka, ktoś tutaj za pomocą inżynierii wstecznej dowiedział się, jak on działa i wyświetla nam ten tekst, który tam istnieje. Ale nie zawsze trzeba wydawać miliony dolarów na jakieś nowe, nowoczesne technologie, aby grę w ciekawy sposób zabezpieczyć. No bo wyobraźcie sobie, że jesteście panem Heniem i sprzedajecie gry na bazarze dziesięciolecia. No i macie tam oczywiście płyty czy jakieś dyskietki, no ale najprawdopodobniej nie robicie do nich okładek, bo po co mielibyście robić i drukować do nich okładki, to jest po prostu strata puszu. No i tu nagle okazuje się, że w grze Metal Gear Solid po którejś tam minucie gry, w którymś momencie jesteśmy proszeni o spojrzenie na tył okładki, aby znaleźć tajną częstotliwość radia. No i tutaj okazuje się, że z tym rozwiązaniem też wiele graczy miało problem, bo gracze myśleli, że chodzi o jakiś przedmiot w grze. Bardzo mało osób ogarnęło, że chodzi o fizyczną okładkę, która jest dołączona do naszej płyty. Jeżeli odwróciliśmy okładkę płyty CD, to zauważyliśmy tam, że wśród tych grafik, które się tam znajdują, jest jedna z napisem Meryl i u góry znajduje się jakaś częstotliwość. I właśnie o tę częstotliwość pytała gra. Co ciekawe, ona nie pytała o to zaraz po uruchomieniu, no bo wtedy to zabezpieczenie byłoby bezsensowne, ale pytała już dopiero po jakimś czasie gry. No i teraz to zabezpieczenie może się wydawać bardzo proste, no bo wystarczyłoby wejść do internetu, jedno szybkie wyszukiwanie i już wiemy o co chodzi, ale w przeszłości nie było to takie proste. Musielibyśmy zadzwonić np. do kolegi, który posiada oryginalną okładkę i poprosić go o tę częstotliwość. Jeżeli teraz chcielibyście zagrać w tę grę, jest ona dostępna m.in. na GOG-u i w ogóle GOG w problemach technicznych powiązanych z tą grą, wyświetla tam informacje o tym właśnie co powiedziałem, że jeżeli nie wiecie gdzie znaleźć numer kodek Meryl, to możecie sobie popatrzeć na zrzut ekranu, ponieważ oczywiście kupujecie grę w formie online, a nie w formie fizycznej. No i rzeczywiście, jeżeli wejdziemy sobie na sklep GOG, to zobaczymy, że jeden ze screenshotów to jest dokładnie ten sam screenshot, który znajdował się na okładce i tu już widzimy tę częstotliwość w prosty i czytelny sposób. Kolejną metodą zabezpieczeń były tzw. dongle. Jedną z gier, która korzystała z tego zabezpieczenia był Robocop 3. Generalnie idea tutaj była taka, że ten dongle wpinało się do portu joysticka i gra działała tylko wtedy, kiedy ten dongle rzeczywiście istniał i był włożony do naszego portu. Oczywiście te dongle wyglądały różnie, do różnych gier, do różnych programów i generalnie też znacząco zwiększały koszty takiej gry, ponieważ nie tylko trzeba było nagrać coś na dyskietkę czy na płytę, ale też trzeba było przygotować i wyprodukować dongle. To zawsze są jakieś dodatkowe koszty, więc nie było to zbyt popularne, ale istniało kilka przykładów gier, które korzystały z tego rozwiązania. Tutaj widzimy właśnie taki dongle, który jest wpinany do gniazda joysticka. Jak działała cała schema tego zabezpieczenia? Możemy bardzo prosto i schematycznie to rozpisać. Czy to oryginalna gra? Jeżeli tak, to znaczy, że ma włożony ten dongle do gniazda joysticka, jeżeli nie, to nie ma włożonego albo jest tam po prostu włożony zwykły joystick i gra po prostu się wtedy nie uruchamiała. Jeżeli wszystko działało prawidłowo, to gra działała prawidłowo. No i teraz, jeżeli jesteśmy osobami, które chcą zrobić kopię takiej gry, możemy przecież przeglądnąć jej kod i znaleźć wszystkie te elementy, gdzie jest sprawdzany ten dongle, albo czy jakiekolwiek inne zabezpieczenie jest sprawdzane. No i wtedy możemy zamienić kod, który jest odpowiedzialny za sprawdzanie tego zabezpieczenia tak, aby nawet jeżeli coś się nie powiodło, czyli na przykład jeżeli dongle nie był włożony, to i tak dalej uruchomić grę. No i właśnie w taki sposób powstawały pirackie kopie takich programów czy gier, które zawierały dongle, czyli piraci nie musieli kopiować tego dongle. Oni po prostu sprawdzali cały kod gry, sprawdzali, w których momentach ta gra sprawdza, czy ten dongle istnieje i podmieniali niektóre elementy tego kodu tak, aby nawet jeżeli nie mieliśmy fizycznego urządzenia wpiętego do naszego komputera, to gra i tak działała prawidłowo. Generalnie twórcy gier zauważyli, że to jest bardzo popularny schemat, że jak często i jak zaawansowane zabezpieczenie by oni nie stworzyli, to pojawiały się po jakimś czasie kopie gry, które po prostu w kodzie usuwały wszystkie te zabezpieczenia, więc można było mieć wtedy nieoryginalną kasetę, nieoryginalną płytę, czyli po prostu nie trzeba było posiadać dongle. W pewnym momencie twórcy gier wpadli na ciekawy pomysł. Po co od razu uświadamiać użytkownika, że ma nielegalną kopię? Po to, żeby po prostu utrudnić mu życie, czyli zrobić pewne rzeczy, które będą po prostu strasznie ciężkie dla niego. Tutaj widzimy przykład z gry Spyro, która jeżeli tylko wykryła, że ma do czynienia z piracką kopią, wyświetlała komunikat, w którym informowało, że ta kopia jest nielegalna i mogą się dziać dziwne rzeczy, ale dalej przynajmniej w teorii gra działała, to znaczy gracz mógł sobie biegać, skakać, zbierać wszystkie te rzeczy, ale okazuje się, że po kilku minutach takiej gry na nielegalnej kopii gra wykonywała kilka dziwnych akcji. Między innymi nie można jej było zatrzymywać, gracz był czasami cofany do wcześniejszego momentu gry lub też w ogóle podczas walki z bossem gra usuwała twojego sejwa. Gra losowo też usuwała niektóre przedmioty, które były przez ciebie zebrane. Czyli tutaj widzimy utrudnienie, ponieważ coś nie dzieje się od samego początku, tak jak to miało miejsce w przeszłości, gdzie sprawdzanie poprawności tej karty kodów miało miejsce na początku, albo wiedzieliśmy już od samego początku gry, czy udało się przejść to zabezpieczenie, czy może nie. Tutaj coś działo się w trakcie, no i to było też utrudnienie dla osób, które parały się jakby omijający zabezpieczeń. No bo wyobraźcie sobie, że jesteście taką osobą, która stara się ominąć te zabezpieczenia. Należycie do jakiejś grupy, no i wśród tych grup była dość duża… te grupy ze sobą rywalizowały, więc chcieliście jak najszybciej wydać tą nielegalną kopię gry, żeby zyskać respekt nadzielni. No więc co robicie? Szukacie tych miejsc w kodzie, w których gra sprawdza, czy rzeczywiście macie legalną kopię, usuwacie te miejsca, no i uruchamiacie grę, sprawdzacie, czy wszystko działa, wszystko działa, gra chodzi, można wysyłać taką kopię w świat, no i oczywiście udało się wam złamać zabezpieczenie tej gry. No bo przecież jeżeli ktoś łamał zabezpieczenie gry, to raczej nigdy nie przechodził całej gry, po prostu nie było na to czasu. No a jeżeli takie zabezpieczenie było pochowane w kilkunastu miejscach, nie tylko na samym początku gry, ale też w środku, pod koniec, czy też w międzyczasie, to było to utrudnienie dla takiej osoby, ponieważ ona musiała przejrzeć nie tylko pierwsze fragmenty kodu tej gry, ale też cały kod gry, aby być w stu procentach pewnym, że wszystkie kawałki kodu zostały odpowiednio załatane. A i tak w przeszłości zdarzały się takie sytuacje, że nie wszystkie kawałki kodu były w odpowiedni sposób zapatchowane, no i gra po prostu na nielegalnych kopiach nie działała, tak jak mogłoby się wydawać. Tutaj widzimy przykład z Crazysa, który w nielegalnej wersji strzelał kurczakami. No i też możecie sobie wyobrazić, że nagle ludzie zaczynają pisać na forach internetowych, dlaczego w mojej grzota broń strzela kurczakami. No i wtedy ktoś mógł napisać, no bo po prostu używasz nielegalnej wersji. Tutaj w przypadku Alana Wake'a mamy przez całą grę opaskę piracką na oku. W taki sposób twórcy pokazywali ci, że jesteś piratem, bo po prostu piracisz ich grę. Innym ciekawym przypadkiem był gra No Time to Explain. To już jest nowsza gra, gdzieś jakoś 10 lat temu ona się pojawiła. No i tutaj twórcy wiedzieli, że prędzej czy później ich gra trafi na torenty. No tak po prostu się dzieje, że wszystkie gry trafiają na torenty. Więc stwierdzili, że może zabawią się z graczami i sami udostępnili pewną zmodyfikowaną wersję gry na torentach. No i w tej zmodyfikowanej wersji wszyscy bohaterzy nosili pirackie czapki. To był po prostu taki żart z piratów. I co się okazuje, że czasami po prostu takie akcje marketingowe przynoszą skutek, bo po prostu piraci kiedy widzą takie akcje marketingowe czasami kupują te gry. Tutaj widzimy inny przykład. Gra Game Dev Tycoon to jest gra o tworzeniu gier. No i tutaj podobnie jak w tamtym wypadku również sami twórcy wypuścili piracką grę na torentach. Tylko że tutaj też była pewna modyfikacja w kodzie. Generalnie po kilku godzinach gry dostawaliśmy komunikat, że gra, którą tworzymy w tej grze nie sprzedaje się dobrze, bo są nielegalne pirackie kopie. I od momentu wyświetlenia się tego komunikatu traciliśmy pieniądze, aż w którymś momencie po prostu bankrutowaliśmy i gra się kończyła. Więc możecie sobie wyobrazić, że po prostu w pewnym momencie na forach dyskusyjnych było bardzo dużo tematów jak pozbyć się skrakowanych pirackich kopii grze w mojej grze, bo nie mogę skończyć tej gry. To była po prostu zagrywka autorów tej gry na nosie osobom, które po prostu nie kupiły tej gry, a chciały skorzystać z bezpłatnej wersji z torentów. No i co ciekawe autorzy tej gry opublikowali takie statystyki, to widzimy ile gier sprzedali podczas pierwszego dnia, a ile gier zostało ściągniętych jakby z tego torenta, który został przed nich udostępniony. Widzimy, że 93% to jest piracka gra, czyli generalnie praktycznie mało kto tą grę kupił, a większość osób grała w tą nielegalną kopię. Ale zazwyczaj jest tak, że piractwo generalnie generuje jednak też pozytywne strony, ponieważ sporo z tych graczy, które kupiło tą nielegalną wersję, kupiło potem wersję oficjalną właśnie po to, że gra się im spodobała i chcieli wesprzeć tych twórców, no i poza tym też niektórzy jakby podobał się im ten żart. To było takie też zagranie na nosie graczom. Tutaj widzimy inny przykład, gdzie na koniec gry, jeżeli grało się w nielegalną wersję, wyświetlało się pytanie o pierwiastek kwadratowy z ryby. No i można się zastanawiać, dlaczego ktoś na koniec gry zadaje takie pytanie. Generalnie chodziło o to, aby stworzyć pytanie, które nie istnieje jeszcze w internecie i zachęcić ludzi do pytania o to pytanie. No i tu widzimy, że ktoś właśnie zapytał autora gry na Twitterze, dlaczego został mu wyświetlony ten komunikat, i wtedy twórca gry odpowiedział, że ten komunikat wyświetla się tylko pirackim użytkownikom, więc po prostu nie kupił jego gry. No i oczywiście tamta osoba zaczęła się tłumaczyć, że oczywiście, że ona tylko najpierw chciała przetestować tę grę, a potem dopiero ją kupić. No ale widzicie, w taki oto sposób złapano po prostu nielegalnego użytkownika, jakby można powiedzieć, na gorącym uczynku, bo sam się przyznał do tego, że grę nie kupił. No ale nie zawsze tylko chodzi o to, aby sprawdzać, czy gra jest legalna. Podobne mechanizmy stosowano w grach dla dorosłych. No i tutaj idea była inna. Chodziło o to, że jeżeli przez przypadek dziecko uruchomiłoby taką grę na komputerze rodzica, to żeby ta gra po prostu się nie uruchomiła. No i tutaj mamy przykład z Larego. To jest gra dla dorosłych, która zadawała pytanie. I w teorii te pytania powinny być zrozumiałe tylko i wyłącznie dla dorosłych osób. Pytano o takie rzeczy, które teoretycznie są znane tylko dorosłym, a dzieci nie powinny znać odpowiedzi na te pytania. Tutaj widzimy inny zestaw tych pytań. Jestem ciekaw, na ile z nich wy dzisiaj bylibyście w stanie odpowiedzieć. No i to znowu jest problem właśnie z historycznymi rzeczami, że coś, co 15 lat temu pewno dla większości osób żyjących w Ameryce było oczywiste, teraz dla nas, Polaków, może takie oczywiste nie być. Ale też ciekawa forma zabezpieczenia. Idąc dalej z zabezpieczeniami, tutaj widzimy inny przykład z gry, która wyświetlała nam zapytanie o to, jaka gwiazda znajduje się na mapie. No i oczywiście do naszego zestawu gry była dołączona taka wielka mapa z konstelacjami. Trzeba było znaleźć współrzędne, zobaczyć jaka znajduje się tam po prostu gwiazda i wpisać jej nazwę. No i znowu kopiowanie tego nie jest takie proste, zwłaszcza jeżeli ta mapa jest po prostu duża, bo to był taki po prostu wielki, wielki plakat. Kiedy przygotowałem się do tego materiału, znalazłem też taki wpis na reddicie, gdzie ktoś twierdził, że istniało takie zabezpieczenie jak RapidLock i generalnie można wysnuć tutaj teorię, że to zabezpieczenie, jeżeli tylko natrafiło na nielegalną kopię, to niszczyło nasz napęd dyskietek. Generalnie śmiem wątpić, że tak to rzeczywiście działało. Próbowałem jakoś potwierdzić, że wpis tej osoby jest prawidłowy i rzeczywiście tak było, ale raczej tak nie było, ponieważ potrafię sobie wyobrazić, że ktoś w Ameryce mógłby pozwać twórców takiego oprogramowania, że hej, zniszczyliście mi moją stację dyskietek. No ale przecież jesteś nielegalnym twórcą. No ale zniszczyliście mi tę stację dyskietek. Jeżeli ktoś ma informacje na ten temat, czy rzeczywiście tak było, a może to po prostu jakaś miejska legenda, to podzielcie się ze mną Tutaj przykład zabezpieczenia, które myślę nie było jakimś wielkim zabezpieczeniem, ale bardzo fajnie wprowadzało do fabuły użytkownika. Kiedy graliśmy w tę grę, w którymś momencie wyświetlał się nam taki komunikat, że musicie zanurzyć mój list w wodzie. No i następnie gra pytała nas znowu o jakąś tę częstotliwość. No i możecie sobie pomyśleć, o jaki list chodzi. No pewno o list, który był dołączony do pudełka z grą. No więc patrzymy sobie na ten list, patrzymy sobie na ten list, no i żadnej tutaj częstotliwości nie widzimy. No i o co tutaj chodziło? Chodziło o to, żeby rzeczywiście fizycznie zanurzyć ten list w wodzie. Tutaj widzicie jednego z youtuberów, który bierze ten list i zamacza go w wodzie. No i wtedy po chwili takim jakby atramentem sympatycznym został napisany ten tekst i rzeczywiście jeżeli tylko ta kartka spotka się z wodą, to wyświetla się informacja na temat częstotliwości, która była proszona w grze. Też takie ciekawe zabezpieczenie. Nie wiem, czy to jest zabezpieczenie, w każdym razie taką formę przyjmowało, a myślę, że rozwiązanie jest ciekawe i nietypowe i na pewno warto o nim wspomnieć. Oczywiście można też było straszyć użytkowników FBI czy też jakąś inną policją, ale śmiem wątpić, żeby to było jakkolwiek działające na kogokolwiek. No ale niemniej jednak tych różnych komunikatów z logiem FBI w grach przez te kilkadziesiąt lat pojawiło się co najmniej kilkanaście. No i dochodzimy już do bardziej zaawansowanych metod zabezpieczeń. Tutaj mamy do czynienia z systemem copy log. No i generalnie na jednej stronie dyskietki znajduje się 40 ścieżek i każda ścieżka jest podzielona na mniejsze części, tak zwane sektory. Atari ma 9 tych sektorów, Amiga miała 11. No a w tym systemie ta dyskietka była produkowana w taki sposób, tak była jakby zapisywana, że miała tylko jedną długą ścieżkę, która nie była podzielona na sektory. Dzięki temu ciężko było skopiować tę dyskietkę normalnymi metodami. No i w tej ścieżce był zapisany taki serial, taki klucz, który był następnie używany w tym zabezpieczeniu. No i jak to było chronione, jak cały ten mechanizm działał? Mieliśmy tam coś, co nazywa się trace vector, no i generalnie jest to dość trudne do wytłumaczenia, bo musimy jakby troszkę porozmawiać o tym, jak działa debugger. Czyli wyobraźmy sobie, że mamy grę i chcemy ją teraz jakoś przetestować, czy rzeczywiście wszystko działa prawidłowo. Możemy ją podpiąć pod taki program, który nazywa się debugger, no i wtedy możemy śledzić instrukcję po instrukcji, te dane, które są przesyłane do procesora i patrzeć, czy wszystko wykonuje się prawidłowo. Generalnie debugger zazwyczaj działa w taki sposób, że wstawia sobie w to miejsce taką instrukcję int3 i kiedy tylko procesor się na nią napotka, to wtedy wykonuje kod, który został wcześniej ustawiony, kod z jakiegoś tam adresu. Tutaj było to używane w taki sposób, że przy pomocy tego trace vector można było jakby zaciemnić kolejną instrukcję, która jest wykonywana przez procesor. Więc kiedy odpalaliśmy sobie taką grę w debuggerze, to nie widzieliśmy instrukcji, które potem się miały wykonywać. One wszystkie były bezsensowne, ponieważ instrukcja była dekodowana jedna po drugiej, a te poprzednie, które już się wykonały, były jakby zaciemniane. W ten sposób próbowano utrudnić analizę wsteczną tego rozwiązania, ponieważ w danym momencie było widać tylko jedną instrukcję, która ma być wykonana przez procesor, a standardowo widać cały szereg instrukcji, czyli tą instrukcję, która się ma teraz wykonać, instrukcję, która ma się po niej wykonać itd., a ten trace vector właśnie działał w taki sposób, że te instrukcje były na bieżąco odciemniane, wykonywane przez procesor i potem znowu zaciemniane, więc utrudniono przez to analizę wsteczną. No i tutaj można dla chcących, którzy są bardziej zainteresowani szczegółami technicznymi, doczytać, jak rzeczywiście to rozwiązanie działało. A jeżeli ktoś chciałby zobaczyć kod tego rozwiązania, to jest on również dostępny, tutaj taki program, który usuwał to zabezpieczenie właśnie z tych gier, dla osób, które chciałyby zobaczyć, jak bardzo zaawansowanie technicznie były te zabezpieczenia. No i na samym końcu musimy też wspomnieć o fazy bits. Generalnie wyobraźmy sobie, że dostaliśmy dyskietkę od naszego kolegi i chcielibyśmy wykonać jego kopię. Możemy użyć programu np. xCopy i po prostu skopiować sobie tę dyskietkę jeden do jeden i uruchomić grę na naszym komputerze. No i jeżeli mówimy o kopiowaniu dyskietek, no to możemy z grubsza stwierdzić, że dyskietka zawiera bity. No i cała ta gra to tak naprawdę są bite, czyli gdzieś tam mamy zera, gdzieś tam mamy jedynki. No i kiedy kopiujemy tę dyskietkę z jednej na drugą, no to po prostu kopiujemy te bity z jednej dyskietki na drugą. No i te bity się nie zmieniają, bo jeżeli mamy tam jakiś program, to tam, gdzie są zera, to tam są zera, a tam, gdzie są jedynki, są jedynki. No i nagle wchodzi idea fazy bit. To jest taki bit, który ma nieustalony stan. Czyli gdy odczytujemy dyskietkę, to raz ten bit może być zerem, ale po ponownym odczytaniu ten bit może być jedynką. I potem znowu możemy odczytać i on może być jedynką, a potem znowu może być zerem. Nigdy nie wiemy, jaki on stan ma. Czyli w taki sposób można było stworzyć dyskietkę, że ona miała takie bity, które nie były tak jak zwykłe dane zero albo jeden, one były albo zerem, albo jedynką. I to możemy zobaczyć tutaj na przykładzie jednej dyskietki. Widzimy jutubera, który właśnie podpina taką dyskietkę zabezpieczoną tym systemem. No i popatrzmy sobie tutaj na ten drugi wiersz, ten wiersz, który zaczyna się od 0,20 i potem jest 68. Następnie ten jutuber po raz kolejny odczytuje tę samą dyskietkę. No i na kolejnym screenie widzimy, że to 68 zmieniło się na E8. I teraz jak można było z tego skorzystać w zabezpieczeniu gry? Gra w pewnym momencie po prostu mogła kilka razy odczytywać te same dane z tego samego miejsca. No i jeżeli za każdym razem odczytywała tylko jedynkę, albo za każdym razem odczytywała tylko zero, no to wiemy, że mamy do czynienia z kopią. No bo kopia tam ma zapisane albo zero, albo jeden. A jeżeli mamy do czynienia z tą oryginalną, oficjalną dyskietką, no to w którymś momencie będzie tam jakiś inny bit. On będzie albo zerem, albo jedynką. No i takie właśnie ciekawe zabezpieczenie. Takie cuda dało się tworzyć na dyskietkach. No i to tyle. Tyle, co przygotowałem dla Was na dzisiaj. Mam nadzieję, że Wam się ten materiał podobał. Jeżeli dotarliście do końca, to zachęcam do wypełnienia ankiety szurek.tv//ankieta. Dzięki temu ja po prostu staram się ulepszyć te swoje materiały, sprawiać, żeby one były jak najciekawsze i żeby trafiały do jak najszerszego grona odbiorców. Więc jeżeli dotarłeś do końca, serdecznie proszę Cię o wypełnienie ankiety szurek.tv//ankieta, ale także link został teraz wklejony na czat. No i też zachęcam, jeżeli spodobał Ci się ten materiał, do wysłania go znajomym. Może ich również zainteresuje bezpieczeństwo? Kto wie. No i na samym końcu wspomniałem także o tym, że jeżeli chcesz zacząć naukę bezpieczeństwa, zapisz się na mój darmowy kurs mailowy od 0 do 5 sera szurek.tv//kurs. Co tydzień będziesz otrzymywał dawkę wiedzy, która została posegregowana, posortowana wprost na swoją skrzynkę mailową. I to wszystko za darmo. No i oczywiście zachęcam do dołączenia do grupy Od Zera do Pentestera na Facebooku. A na samym końcu, jeżeli wolisz nowoczesne metody komunikacji, to zachęcam do dołączenia do Discorda Od Zera do Pentestera. Można to zrobić wchodząc na odnośnik Od Zera do Pentestera i porozmawiać ze mną oraz z innymi miłośnikami bezpieczeństwa. No i to tyle, co dzisiaj przygotowałem. Zobaczmy sobie na czat, czy jeszcze pojawiły się jakieś ciekawe pytania od Was. Ktoś tutaj pyta, czy za chwilę dojdziemy do SaveDisk'a, Sakurama czy polskiego SafeLock'a. Tutaj wspominasz o metodach zabezpieczeń płyt CD. No niestety nie opisywałem ich, ponieważ i tak już prezentacja trwała godzinę, więc stwierdziłem, że to by było za dużo. Więc może w przyszłości jeszcze powstanie osobny materiał do zabezpieczeń płyt CD, bo to jest osobny temat. Osobny temat też bardzo, bardzo szeroki. A czy ja grywam w gry? Tak, tak zdarza mi się grywać w gry, kiedy mam wolny czas. Jakiś pirat dał łapkę w dół. No cóż, bywa. No i tutaj też ktoś wspomina, że w Settlersach 3, kiedy mieliśmy piracką wersję, to zamiast żelaza otrzymywane były świnie. No właśnie w taki ciekawy sposób różni twórcy gier próbowali utrudnić życie osobom, które korzystały z nielegalnej kopii. No i oczywiście w Witcher 2 też był podobny schemat, że w którymś momencie Wiedźmin chyba po prostu umierał. Jakiego softu używano wtedy do łamania zabezpieczeń? Czy były jakieś popularne narzędzia? Chodzi o lata 90. Myślę, że można wspomnieć o SoftEyesie, a wcześniej to nie wiem, bo tutaj też dużo było przykładów z Amigi i Zatari, a tam to już nie moje lata, więc nie wiem, więc nie pomogę. Dobrze i to już chyba wszystko. Dziękuję Wam bardzo serdecznie. No i zapraszam do obserwowania kanału, zostawienia łapki w górę i widzimy się w kolejnym materiale. Trzymajcie się, cześć! Napisy stworzone przez społeczność Amara.org