Archiwa tagu: cryptopals

Cryptopals zestaw 5 ćwiczenie 38

przez | 1 listopada 2021

W tym ćwiczeniu naszym celem jest atak na uproszczoną implementację SRP. Będziemy występowali w roli „man in the middle”, ale dla uproszczenia nie będę w tym wypadku implementował rozwiązania z udziałem trzech stron (klient <-> atakujący <-> serwer) i ograniczę się do komunikacji klient <-> atakujący. Miałem spory problem z tym zadaniem ponieważ na początku… Dowiedz się więcej »

Cryptopals zestaw 5 ćwiczenie 37

przez | 22 września 2021

Zgodnie z tradycją, w poprzednim zadaniu zapoznaliśmy się z jakąś super technologią a teraz będziemy poznawali sposób w w jaki można spróbować obejść jej zabezpieczenia. Ostatnio przyglądaliśmy się protokołowi SRP i to on będzie naszym dzisiejszym celem, wykorzystana technika będzie podobna do tych które poznaliśmy przy okazji ćwiczeń związanych z protokołem Diffiego-Hellmana, ale to chyba… Dowiedz się więcej »

Cryptopals zestaw 5 ćwiczenie 36

przez | 17 sierpnia 2021

W tym zadaniu zapoznajemy się z protokołem Secure Remote Password. Protokół dział wykorzystując ideę podobną do tej zgodnie z którą działa protokół Diffielgo-Hellmana i pozwala w bezpieczny sposób uwierzytelniać się np. na serwerze. W związku z tym, że samo zadanie polega na implementacji poszczególnych kroków podanych przez autorów, wklejam od razu swoją implementację poniżej: Powyższa… Dowiedz się więcej »

Cryptopals zestaw 5 ćwiczenie 33

przez | 17 maja 2021

Zaczynamy nowy, piąty już, zestaw ćwiczeń i na pierwszy ognień dostajemy zadanie rozgrzewkowe. Właściwie nie potrzebujemy w ogóle myśleć tylko postępować zgodnie z krokami podanymi przez autorów, ale jeżeli zatrzymamy się na chwilę i zastanowimy to dotrze do nas co się właściwie stało. A stanie się coś bardzo ciekawego co bardzo łatwo można przeoczyć. Na… Dowiedz się więcej »

Cryptopals zestaw 4 ćwiczenie 31 i 32

przez | 5 maja 2021

Tym razem opiszę od razu rozwiązanie dwóch ćwiczeń w jednym wpisie, ponieważ to tak na prawdę jedno ćwiczenie, które różni się jedynie poziomem trudności. W związku z tym stwierdziłem, że od razu rozwiążę trudniejszą wersję, ponieważ metoda jest taka sama, po prostu wymaga kilku dodatkowych kroków, aby wyeliminować „szum” spowodowany losowymi opóźnieniami odpowiedzi serwera. Naszym… Dowiedz się więcej »

Cryptopals zestaw 4 ćwiczenie 29

przez | 13 kwietnia 2021

Po tym jak w poprzednim zadaniu, stworzona została implementacja SHA-1 czas na użycie jej do zaprezentowania podatności tego algorytmu. Zadanie polegać będzie na dodaniu nowej zawartości do danych zabezpieczonych wartością MAC wygenerowaną przy pomocy SHA-1 i obliczeniu nowej poprawnej wartości MAC. Przed przystąpieniem do tego zadania trzeba będzie zmodyfikować implementację algorytmu SHA-1. Można zauważyć, że… Dowiedz się więcej »

Cryptopals zestaw 4 ćwiczenie 28

przez | 24 marca 2021

Tym razem pozornie mało kreatywne ćwiczenie, żeby nie powiedzieć odtwórcze, ale warto jest się do niego przyłożyć i postarać się jak najlepiej zrozumieć co dokładnie robi algorytm który mamy zaimplementować. W tym zadaniu naszym celem jest implementacja algorytmu SHA-1 i nie wystarczy użyć gotowej implementacji oferowanej przez język programowania, którego używamy do rozwiązywania tych ćwiczeń.… Dowiedz się więcej »

Cryptopals zestaw 4 ćwiczenie 27

przez | 18 marca 2021

Tym razem nasze ćwiczenie ma za zadanie nauczyć nas dlaczego używanie klucza szyfrującego jako wektora inicjującego to bardzo zły pomysł. Do tego będziemy potrzebowali wyroczni używającej AES w trybie CBC. W zawiązku z powyższym zaczynami od stworzenia odpowiedniej wyroczni. Założenia są następujące: Wyrocznia generuje losowy klucz szyfrujący od długości 16 bajtów czyli tyle samo co… Dowiedz się więcej »

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… Dowiedz się więcej »

Cryptopals zestaw 3 ćwiczenie 20

przez | 19 września 2020

To ćwiczenie częściowo zostało już opisane w poprzednim wpisie. Wspomniałem już, że poprzednie zadanie początkowo rozwiązałem wykorzystując skrypt napisany na potrzeby zadania numer 6. Można to zrobić bo jak wiemy AES w trybie CTR generuje kolejne bloki, które są XORowane z wiadomością do zaszyfrowania. Oczywiście poprawnie zastosowany AES w trybie CTR nie pozawala w tak… Dowiedz się więcej »