Archiwa tagu: MT19937

Cryptopals zestaw 3 ćwiczenie 24

przez | 22 października 2020

No i kończymy tym ćwiczeniem kolejny, trzeci już zestaw ćwiczeń. Nadal pozostajemy przy MT19937. Tym razem na podstawie otrzymanej zaszyfrowanej wiadomości będziemy musieli odgadnąć jaka wartość była użyta do zainicjalizowania naszego generatora liczb pseudolosowych. Najpierw musimy stworzyć sobie kolejną wyrocznię, tym razem która do „szyfrowania” używa kolejnych wartości z generatora liczb pseudolosowych i XORuje właściwą… Czytaj dalej »

Cryptopals zestaw 3 ćwiczenie 23

przez | 9 października 2020

W tym ćwiczeniu naszym zadaniem jest sklonowanie generatora liczb losowych. Sklonowany generator umożliwi nam przewidywanie kolejnych wartości zwracanych przez oryginalny generator. Zadanie na pierwszy rzut oka wydaje się niemożliwe, ale przyjżyjmy się jak wygląda funkcja generująca kolejne liczby pseudolosowe: Stan generatora zapisany jest w tablicy 624 liczb 32-bitowych, sklonowanie go będzie polegało na odtworzeniu tych… Czytaj dalej »

Cryptopals zestaw 3 ćwiczenie 22

przez | 28 września 2020

W poprzednim ćwiczeniu zaimplementowaliśmy algorytm do generowania liczb pseudolosowych. Teraz skupimy się na słabych punktach stosowania takiego rozwiązania. Na początek spróbujemy na podstawie wygenerowanej liczby odzyskać „ziarno” (albo inaczej po angielsku „seed”), czyli wartość, która została użyta do ustawienia stanu początkowego naszego generatora. Scenariusz w tym ćwiczeniu jest następujący:1. Czekamy losową ilość sekund.2. Jako ziarna… Czytaj dalej »

Cryptopals zestaw 3 ćwiczenie 21

przez | 24 września 2020

Kolejny krótki wpis bo i samo zadanie bardzo proste i nie wymagające od nas szczególnej wiedzy czy dłuższej chwili namysłu. Odstawiamy na razie na bok te wszystkie ‚AESy’ i zajmiemy się generowaniem liczb pseudolosowych. Kiedy piszemy aplikacje zdarza się, że potrzebujemy wygenerować jakąś losową wartość. Chyba większość osób uczących się programowania po raz pierwszy spotkała… Czytaj dalej »