Polimorficzne algorytmy szyfrowania

Programista 6/2013 (13)

Ukazało się kolejne wydanie magazynu Programista 6/2013, w którym znajdziecie mój artykuł o polimorficznych algorytmach szyfrowania, czyli algorytmach, których kod jest za każdym razem inny i dynamicznie generowany w kodzie assemblera na potrzeby szyfrowania danych lub kodu.

W artykule znajdzie opis stworzenia prostego silnika polimorficznego w C++, a całość oparta jest na znakomitej bibliotece AsmJit. Jeśli interesują Cię zaawansowane systemy zabezpieczeń lub techniki stosowane przez malware, na pewno Cię to zainteresuje.

Magazyn Programista 6/2013

Nowe wydanie to 140 stron interesujących artykułów m.in.:

  • Tajniki używania systemów kontroli wersji na przykładzie Git’a
  • Niskopoziomowe zakamarki systemów komputerowych opartych o x86
  • O bezpieczeństwie aplikacji internetowych w PHP
  • Lochy albo „dungeony” czyli prototyp gry w Unity 3D

Polecam!

PS.
Póki co dostępna jest wersja elektroniczna, wersja drukowana w Empikach będzie od soboty 29.06

Forum programistyczne dla początkujących

Miałem już dość forów programistycznych, gdzie na każde proste pytanie leciała odpowiedź „idź na google”, dlatego stworzyłem proste i przejrzyste forum dyskusyjne dla początkujących programistów, gdzie żadne pytanie nie jest zbyt proste, mam nadzieję, że się wam spodoba, zapraszam i zachęcam do dyskusji 🙂

DevStart

DevStart – http://devstart.pl

Wymuszanie określonego CRC w pliku

Calculate

Suma kontrolna

Algorytmy takie jak CRC32 można łatwo „oszukać” (lub innymi słowami znaleźć kolizję) generując dodatkowe dane np. w zmodyfikowanym pliku, aby wymusić oryginalną wartość sumy kontrolnej.

Można do tego podejść metodami brute-force albo tak jak to jest opisane w poniższym artykule:

http://nayuki.eigenstate.org/page/forcing-a-files-crc-to-any-value

Do artykułu dołączone są kody źródłowe w Javie i Pythonie.