Prywatność danych w oprogramowaniu do gry w pokera

Prywatność danych w oprogramowaniu do gry

Cała komunikacja między oprogramowaniem klienckim działającym na komputerze klienta i naszymi serwerami jest szyfrowana. Należy zauważyć, że, ściśle mówiąc, samo szyfrowanie nie gwarantuje prywatności. Na przykład witryna, w której karty wszystkich graczy są przesyłane do każdego, nie jest bezpieczna bez względu na szyfrowanie. Właśnie dlatego poświęciliśmy wiele wysiłku na projektowanie naszego systemu i zasad zabezpieczeń.

NAJWAŻNIEJSZE INFORMACJE O ZABEZPIECZENIACH:

Pobieranie oprogramowania:

Pierwszym punktem, w którym zabezpieczenia są ważnym czynnikiem, jest pobieranie oprogramowania klienckiego z witryny PokerStars. Musimy zapewnić, aby oprogramowanie klienckie zostało pobrane bez modyfikacji. Aby spełnić to wymaganie, w instalator oprogramowania wbudowane zostały następujące funkcje:

  • Plik wykonywalny instalatora został podpisany przy użyciu 2048-bitowego certyfikatu podpisywania kodu RSA, który został wydany dla Rational Services Ltd i może zostać zweryfikowany przez VeriSign, publiczny organ certyfikujący, który można sprawdzić w przeglądarce.
  • Stanowi to zapewnienie, że instaler oprogramowania pochodzi od jego wydawcy – PokerStars.
  • Chroni instalator oprogramowania przed modyfikacją pomiędzy punktem publikacji a późniejszą instalacją na Twoim urządzeniu.

Zabezpieczenia w czasie gry:

Mamy wiele wbudowanych funkcji zapewniających bezpieczeństwo samej gry.

  • Nasze oprogramowanie korzysta z certyfikatów wystawionych przez własny organ certyfikujący (CA, Certificate Authority) w celu uwierzytelnienia naszych serwerów.
  • Nasze oprogramowanie korzysta z będącego standardem branżowym protokołu TLS. Używamy obecnie 2048-bitowego klucza RSA, który według RSA będzie wystarczający do 2030. Ponieważ sprawdzamy i aktualizujemy prywatne klucze serwera co trzy miesiące, zapewniamy duży margines bezpieczeństwa. Obsługujemy następujące szyfry: AES128-SHA (128 bitów) i DES-CBC3-SHA (168 bitów).
  • Żadne prywatne dane, takie jak zakryte karty gracza, nie są wysyłane do innych graczy (chyba że jest to zgodne z zasadami gry).
  • Każde wejście w oprogrmowaniu jest sprawdzane po stronie serwera.

ZMOWA

Zmowa to forma oszustwa w grze, w której dwoje lub więcej graczy sygnalizuje swój stan posiadania lub w inny sposób tworzy spółkę oszustów na szkodę innych graczy przy tym samym stole.

Chociaż z jednej strony łatwiej jest przekazywać informacje między będącymi w zmowie graczami podczas gry online niż w sali w budynku, znacznie trudniej jest uniknąć wykrycia, ponieważ po rozgrywce można zbadać karty wszystkich graczy.

Bez względu na stopień zaawansowania zmowy musi ona obejmować rozegranie rozdania, które zostałoby rozegrane inaczej, gdyby nie było zmowy. Nasze metody wykrywania wychwycą odmienne wzorce gry i ostrzegą personel działu zabezpieczeń, który następnie przeprowadzi dokładne sprawdzenie ręczne. Sprawdzamy również wszystkie zgłoszenia graczy o podejrzeniu zmowy.

Jeśli którykolwiek gracz zostanie uznany za uczestnika jakiejkolwiek formy zmowy, jego konto może zostać trwale zamknięte.

TASOWANIE

„Każdy, kto rozważa arytmetyczne metody generowania przypadkowych cyfr jest, oczywiście, w stanie grzechu”. — John von Neumann, 1951

Rozumiemy, że zastosowanie uczciwego i nieprzewidywalnego algorytmu tasowania ma krytyczne znaczenie dla naszego oprogramowania. W celu spełnienia tego wymagania i uniknięcia poważnych problemów opisanych w [1] używamy dwóch niezależnych źródeł rzeczywiście losowych danych:

  • danych wejściowych użytkownika, łącznie z podsumowaniem ruchów myszy i mierzeniem czasu zdarzeń, zebranych z oprogramowania klienta;
  • Quantis [2] - sprzętu generującego losowo liczby, opracowanego przez szwajcarską firmę ID Quantique, zapewniającego kwantową losowość jako źródło entropii.

Każde z tych źródeł samodzielnie generuje entropię wystarczającą do zapewnienia uczciwego i nieprzewidywalnego tasowania.

Najważniejsze informacje dotyczące tasowania:

  • Talię 52 kart można potasować na 52! sposobów. 52! to około 2^225 (dokładniej 80 658 175 170 943 878 571 660 636 856 404 000 000 000 000 000 000 000 000 000 000 000 000 sposobów). Używamy 249 losowych bitów z obu źródeł entropii (danych użytkownika i kwantowej losowości) w celu osiągnięcia równomiernego i nieprzewidywalnego rozkładu statystycznego.
  • Ponadto stosujemy konserwatywne zasady w celu wymuszenia wymaganego stopnia losowości; na przykład, jeśli dane użytkownika nie generują wystarczającej ilości entropii, nie rozpoczniemy następnego rozdania do chwili uzyskania wymaganej ilości entropii z RNG firmy Quantis.
  • Stosujemy kryptograficzny algorytm mieszania SHA-1 w celu zmieszania entropii uzyskanej z obu źródeł i zapewnienia dodatkowego poziomu bezpieczeństwa.
  • Utrzymujemy również generator pseudolosowy oparty na algorytmie SHA-1 w celu zapewnienia jeszcze większego bezpieczeństwa i ochrony przed atakami na dane użytkownika.
  • Aby przekształcić strumień bitów w liczby losowe z wymaganego zakresu bez przesunięcia, używamy prostego i niezawodnego algorytmu. Jeśli na przykład potrzebna jest liczba losowa z zakresu 0–25:
    • bierzemy 5 losowych bitów i przekształcamy je w liczbę losową z zakresu 0–31;
    • jeśli ta liczba jest większa niż 25, po prostu odrzucamy wszystkie 5 bitów i powtarzamy proces.
  • Na tę metodę nie wpływają przesunięcia związane z operacją modułu w celu wygenerowania liczb losowych niemających postaci 2n, gdzie n = 1,2...
  • Aby wykonać bieżące tasowanie, używamy innego prostego i niezawodnego algorytmu:
    • najpierw pobieramy losową kartę z oryginalnej talii (1 z 52) i umieszczamy ją w nowej talii — teraz oryginalna talia zawiera 51 kart, a nowa — 1 kartę;
    • następnie pobieramy inną losową kartę z oryginalnej talii (1 z 51) i umieszczamy ją na wierzchu nowej talii — teraz oryginalna talia zawiera 50 kart, a nowa — 2 karty.
    • powtarzamy ten proces do chwili, gdy wszystkie karty zostaną przeniesionych z oryginalnej talii do nowej.
  • Ten algorytm nie podlega „złej dystrybucji tasowania” opisanej w [1].

Tasowanie w witrynie PokerStars zostało zweryfikowane przez firmy Cigital

PokerStars przesłało obszerne informacje o generatorze liczb losowych (RNG) do niezależnej organizacji. Poprosiliśmy tę zaufaną firmę o przeprowadzenie dokładnej analizy losowości danych wyjściowych generatora RNG oraz jego wdrożenia do tasowania kart w witrynie PokerStars

Firma uzyskała pełny dostęp do kodu źródłowego i potwierdziła losowość oraz bezpieczeństwo tasowania. Więcej informacji można znaleźć na stronie poświęconej generatorowi liczb losowych online.

[1] "How We Learned to Cheat at Online Poker: A Study in Software Security "http://www.cigital.com/papers/download/developer_gambling.phphttp://www.idquantique.com/products/quantis.htm[2] http://www.idquantique.com/products/quantis.htm

JESTEŚ NOWYM GRACZEM? POBIERZ
DARMOWE OPROGRAMOWANIE DO GRY

By zacząć grać, wystarczy pobrać darmowy program PokerStars. Ściągnięcie go jest proste.

Play Poker

Dowiedz się, jak pobrać program do gry.