Złam ten kod z Pythonem. Jak tworzyć, testować i łamać szyfry Al Sweigart
- Niedostępna
- Promocja Przejdź
- Autor:
- Al Sweigart
- Wydawnictwo:
- Helion
- Wydawnictwo:
- Helion
- Ocena:
- 6.0/6 Opinie: 1
- Stron:
- 472
- Druk:
- oprawa miękka
- Dostępne formaty:
-
PDFePubMobi
Opis
książki
:
Złam ten kod z Pythonem. Jak tworzyć, testować i łamać szyfry
Szyfrowanie do niedawna było wiązane z bezpieczeństwem publicznym. Najbezpieczniejsze implementacje podlegały takim samym rządowym regulacjom jak przemysł zbrojeniowy. Do dzisiaj rządy i różnego rodzaju służby dążą do uzyskania możliwości odczytywania zaszyfrowanych danych. Tymczasem silna kryptografia jest podstawą globalnej ekonomii, zapewnia codzienną ochronę milionom użytkowników i większości organizacji. A to nie wszystko. Algorytmy szyfrujące, ich implementacja czy programowe łamanie szyfrów to równocześnie fascynująca dziedzina wiedzy i pole do zabawy, ćwiczeń oraz eksperymentowania z programowaniem.
Ta książka jest przeznaczona dla osób, które nie umieją programować, ale chciałyby zapoznać się z kryptografią. Omówiono tu podstawowe koncepcje programowania w Pythonie, który dziś jest uważany za najlepszy język dla początkujących koderów. Pokazano, jak tworzyć, testować i łamać programy implementujące szyfry klasyczne, takie jak przestawieniowy i Vigenere'a, by stopniowo przejść do znacznie bardziej zaawansowanych zagadnień, w tym kryptografii klucza publicznego. Każdy program przedstawiono w postaci pełnego kodu źródłowego, wyjaśniono także wiersz po wierszu jego działanie. Dzięki tej książce można się zarówno nauczyć zasad kryptografii, jak i zdobyć umiejętności pisania kodu szyfrującego i deszyfrującego w Pythonie.
Znajdziesz tutaj między innymi:
- wprowadzenie do programowania w Pythonie: pętle, zmienne, kontrola przepływu działania programu
- omówienie technik szyfrowania stosowanych przed wynalezieniem komputerów
- różne algorytmy szyfrowania z wykorzystaniem Pythona
- testowanie programów szyfrujących i deszyfrujących
- szyfrowanie i deszyfrowanie plików
- łamanie szyfrów techniką brute force czy analiza częstotliwości
A teraz stwórz algorytm szyfru idealnego!
Wybrane bestsellery
-
Bestseller Nowość Promocja
Pomyśl o hakowaniu jako o metodzie wykorzystania luk w regułach systemu. Zauważ, jak bezlitośnie hakowane są praktycznie wszystkie systemy, na których opiera się funkcjonowanie społeczeństwa. Spójrz na prawo jak na skomplikowany system zawierający podatności, dzięki którym można unikać na przykład opodatkowania. W wyszukiwaniu luk specjalizują się hakerzy, w tym wypadku księgowi, doradcy podatkowi i prawnicy. Jeśli pójdziesz tym tropem, przekonasz się, że we wszystkich ważnych systemach pozostawia się luki, które służą wtajemniczonym do naginania reguł i czerpania korzyści kosztem innych.- Druk
- PDF + ePub + Mobi pkt
(32,94 zł najniższa cena z 30 dni)
32.94 zł
54.90 zł (-40%) -
Promocja
Once you've mastered the basics of Python, how do you skill up to the top 1%? How do you focus your learning time on topics that yield the most benefit for production engineering and data teams—without getting distracted by info of little real-world use? This book answers these questions and more.Based on author Aaron Maxwell's software engineering-
- ePub + Mobi pkt
(203,15 zł najniższa cena z 30 dni)
203.15 zł
239.00 zł (-15%) -
-
Bestseller Promocja
Ta pozycja, podobnie jak inne z serii Rusz głową!, została przygotowana zgodnie z jedyną w swoim rodzaju metodyką nauczania, wykorzystującą zasady funkcjonowania ludzkiego mózgu. Dzięki zagadkom, tajemniczym historiom, angażującym ćwiczeniom i przystępnie podanej wiedzy bez trudu przyswoisz nawet dość złożone koncepcje, takie jak programowanie zorientowane obiektowo, aplikacje sieciowe czy uczenie maszynowe. Znajdziesz tu zabawne i niekonwencjonalne ilustracje, świetne analogie, a w toku nauki krok po kroku zbudujesz własną aplikację. Przekonasz się, że to absolutnie wyjątkowy i niezwykle skuteczny podręcznik!- Druk
(64,50 zł najniższa cena z 30 dni)
77.40 zł
129.00 zł (-40%) -
Promocja
Oprogramowanie jest dziś praktycznie wszędzie, a programiści od dawna należą do najbardziej poszukiwanych specjalistów. Na podstawie napisanego przez nich kodu funkcjonują już nie tylko komputery i smartfony. Oprogramowanie steruje sprzętami domowymi, telewizorem czy lodówką. W ramach tak zwanego internetu rzeczy wiele urządzeń technicznych komunikuje się między sobą bez udziału człowieka. Gwałtownie rozwija się sztuczna inteligencja, wymagająca specjalistycznego oprogramowania. Nie dziwi więc, że jego rozwój ciągle przyspiesza. W obliczu tych faktów odpowiedź na pytanie, jakiego języka programowania warto się nauczyć, jest trudna. Nawet dla osoby, która wie, w jaki sposób zamierza w przyszłości korzystać ze swoich informatycznych umiejętności.- Druk
- PDF + ePub + Mobi pkt
(26,94 zł najniższa cena z 30 dni)
26.94 zł
44.90 zł (-40%) -
Bestseller Promocja
Sztuczna inteligencja stale się rozwija. Właściwie codziennie słyszymy o jej rosnących możliwościach, nowych osiągnięciach i przyszłości, jaką nam przyniesie. Jednak w tej książce skupiamy się nie na przyszłości, a na teraźniejszości i praktycznym obliczu AI - na usługach, które świadczy już dziś. Większość najciekawszych zastosowań sztucznej inteligencji bazuje na ML (uczenie maszynowe, ang. machine learning), NLP (przetwarzanie języka naturalnego, ang. natural language processing) i architekturze RAG (ang. retrieval augmented generation) zwiększającej możliwości tzw. dużych modeli językowych (LLM, ang. large language model). Stanowią one podwaliny budowy systemów AI, bez których te systemy często wcale nie mogłyby powstać.- Druk
- PDF + ePub + Mobi pkt
(47,40 zł najniższa cena z 30 dni)
47.40 zł
79.00 zł (-40%) -
Promocja
Przetwarzanie obrazów to dynamicznie rozwijająca się dziedzina, która znajduje zastosowanie w licznych branżach, takich jak medycyna, motoryzacja, przemysł rozrywkowy, bezpieczeństwo, rolnictwo czy marketing. Umożliwia automatyczne rozpoznawanie obiektów, analizę obrazów medycznych i tworzenie interaktywnych aplikacji korzystających ze sztucznej inteligencji. Warto się zagłębić w techniki przetwarzania obrazów, które stały się dostępniejsze i skuteczniejsze niż kiedykolwiek wcześniej dzięki lepszemu wykorzystaniu mocy obliczeniowej niezbędnej do procesowania sieci konwolucyjnych (CNN) i algorytmów YOLO. Ponadto modele generatywne, jak DALL-E czy Midjourney, oferują możliwości generowania obrazów na potrzeby trenowania modeli AI, co pozwala zwiększać różnorodność i wielkość puli danych (ang. data augmentation). Powszechnym narzędziem w segmencie computer vision jest biblioteka OpenCV. Jest używana do analizy obrazów, rozpoznawania obiektów, detekcji twarzy, wykrywania ruchu czy segmentacji obrazów. OpenCV oferuje dostęp do szerokiego zakresu narzędzi i algorytmów, a dobre opanowanie biblioteki otwiera drzwi do ciekawych projektów związanych z widzeniem komputerowym. Umiejętność przetwarzania obrazów jest niezwykle ceniona na rynku pracy – specjaliści mogą liczyć na atrakcyjne stanowiska i różnorodne wyzwania technologiczne.- Videokurs pkt
(59,40 zł najniższa cena z 30 dni)
54.45 zł
99.00 zł (-45%) -
Bestseller Promocja
Język programowania ogólnego przeznaczenia Python należy obecnie do najpopularniejszych na świecie. Skąd się bierze jego fenomen? Niewątpliwie kluczowe znaczenie ma tu bardzo czytelna składnia, mocno zbliżona do składni języka naturalnego. Czyni to Pythona dość łatwym do opanowania, także dla początkujących. Osoby bardziej doświadczone doceniają go za wszechstronność. Pythona można używać w różnych dziedzinach, takich jak analiza danych, sztuczna inteligencja, tworzenie stron internetowych, automatyka i automatyzacja, pisanie aplikacji mobilnych i wiele innych. Dodajmy do tego rozbudowany pakiet bibliotek standardowych i oto mamy (niemal) idealny język programowania.- Druk
- PDF + ePub + Mobi pkt
(35,40 zł najniższa cena z 30 dni)
35.40 zł
59.00 zł (-40%) -
Bestseller Promocja
Tę książkę docenią średnio zaawansowani użytkownicy Pythona, którzy tworzą aplikacje korzystające z osiągnięć nauki o danych. Znajdziesz w niej omówienie możliwości języka, wbudowanych struktur danych Pythona, jak również takich bibliotek jak NumPy, pandas, scikit-learn i matplotlib. Nauczysz się wczytywania danych w różnych formatach, porządkowania, grupowania i agregowana zbiorów danych, a także tworzenia wykresów i map. Poszczególne zagadnienia zostały zilustrowane praktycznymi przykładami tworzenia rzeczywistych aplikacji, takich jak system obsługi taksówek z wykorzystaniem danych lokalizacyjnych, analiza reguł asocjacyjnych dla danych transakcji czy też uczenie maszynowe modelu przewidującego zmiany kursów akcji. Każdy rozdział zawiera interesujące ćwiczenia, które pozwolą Ci nabrać biegłości w stosowaniu opisanych tu technik.- Druk
- PDF + ePub + Mobi pkt
(41,40 zł najniższa cena z 30 dni)
41.40 zł
69.00 zł (-40%) -
Promocja
To kolejne, uzupełnione i zaktualizowane wydanie praktycznego podręcznika dla każdego, kto chce korzystać z tej technologii w praktyce. Opisuje techniczne podstawy łańcuchów bloków, kryptografii i protokołów osiągania konsensusu, przedstawia też bardziej zaawansowane zagadnienia, jak tworzenie zdecentralizowanych aplikacji (DApp) przy użyciu inteligentnych kontraktów czy też łączenie internetu rzeczy z łańcuchami bloków, korporacyjne łańcuchy bloków i tokenizacja. Dodatkowo w książce znalazły się nowe rozdziały na temat zdecentralizowanych finansów, zdecentralizowanej tożsamości, prywatności, skalowalności i bezpieczeństwa w łańcuchach bloków, a także rozważania na temat przyszłości tej fascynującej technologii.- Druk
- PDF + ePub + Mobi pkt
(101,40 zł najniższa cena z 30 dni)
101.40 zł
169.00 zł (-40%) -
Promocja
Internet rozwija się w niesamowitym tempie. Dawniej sieć WWW była prostsza ― projektanci łączyli kod PHP, HTML i zapytania do MySQL w jednym pliku. Z czasem urosła do miliardów stron, co radykalnie zmieniło jej kształt. Zmieniły się też narzędzia i sposób pracy. Dziś idealnym wyborem dewelopera aplikacji WWW jest FastAPI, nowoczesne narzędzie, które wykorzystuje nowe cechy Pythona i z powodzeniem rywalizuje z podobnymi frameworkami języka Golang.- Druk
- PDF + ePub + Mobi pkt
(41,40 zł najniższa cena z 30 dni)
41.40 zł
69.00 zł (-40%)
O autorze książki
Albert Sweigart — programista, projektant oprogramowania i nauczyciel kodowania. Autor licznych książek o Pythonie dla początkujących. Sweigart urodził się w Houston, w stanie Teksas, a obecnie mieszka w San Francisco. Prowadzi blog dostępny pod adresem: https://coffeeghost.net.
Al Sweigart - pozostałe książki
-
Promocja
Dzięki tej książce przyswoisz najlepsze zasady konfigurowania środowiska programistycznego i praktyki programistyczne poprawiające czytelność kodu. Znajdziesz tu mnóstwo przydatnych wskazówek dotyczących posługiwania się wierszem polecenia i takimi narzędziami jak formatery kodu, kontrolery typów, lintery, a nawet systemy kontroli wersji. Od strony praktycznej poznasz techniki organizacji kodu i tworzenia jego dokumentacji. Nie brak też zaawansowanych zagadnień, jak pomiary wydajności kodu czy analiza algorytmów Big O. Sporo miejsca poświęcono również pythonicznemu paradygmatowi programowania zorientowanego obiektowo. Dowiesz się więc, jak prawidłowo pisać klasy, korzystać z mechanizmów dziedziczenia i czym są metody dunder. To znakomity przewodnik na drodze, którą musi pokonać początkujący, aby stać się profesjonalnym programistą Pythona.- Druk
- PDF + ePub + Mobi pkt
(53,40 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł (-40%) -
Promocja
Ta książka jest drugim wydaniem nietypowego podręcznika programowania w Pythonie. Dzięki niej nie zostaniesz mistrzem świata w kodowaniu, za to nauczysz się tworzyć programy, które oszczędzą Ci mnóstwo czasu i wysiłku. Nawet jeśli nigdy nie programowałeś, błyskawicznie opanujesz podstawy i zapoznasz się z obszerną biblioteką Pythona przeznaczoną do automatyzacji takich zadań jak pobieranie danych z witryn internetowych, odczytywanie dokumentów oraz operacje wymagające klikania myszą i wpisywania tekstu. To wydanie zawiera nowy rozdział poświęcony weryfikacji danych wejściowych, a także samouczki dotyczące automatyzacji pracy z arkuszami Google i pocztą Gmail oraz podpowiedzi związane z automatycznym uaktualnianiem plików CVS.- Druk
- PDF + ePub + Mobi pkt
(65,40 zł najniższa cena z 30 dni)
65.40 zł
109.00 zł (-40%) -
Promocja
Dzięki tej książce zrozumiesz, że w rekurencji nie kryje się żadna magia. Dowiesz się, na czym polega jej działanie i kiedy warto zastosować algorytm rekursywny, a kiedy lepiej tego nie robić. Poznasz szereg klasycznych i mniej znanych algorytmów rekurencyjnych. Pracę z zawartym tu materiałem ułatwią Ci liczne przykłady programów napisanych w Pythonie i JavaScripcie, pokazujące, jak rozwiązywać przeróżne problemy związane z przechodzeniem przez drzewa, kombinatoryką i innymi trudnymi zagadnieniami. Nauczysz się także skutecznie poprawiać wydajność kodu i algorytmów rekurencyjnych.- Druk
- PDF + ePub + Mobi pkt
(47,40 zł najniższa cena z 30 dni)
47.40 zł
79.00 zł (-40%) -
Promocja
Tę książkę docenią ci, którzy opanowali już podstawową składnię Pythona i palą się do pisania własnych programów. Zawiera 81 projektów, które możesz napisać w tym języku. Programy składają się z maksymalnie 256 linii kodu i pozwolą Ci stopniowo nabierać umiejętności programisty - a zupełnie przy okazji dostarczą mnóstwo zabawy! Twoja nauka będzie polegała nie tylko na analizowaniu działania kodu i jego wpisywaniu w edytorze, ale także na samodzielnym eksperymentowaniu i modyfikowaniu kodu, aby dopasować program do własnych potrzeb i pomysłów. W efekcie - niepostrzeżenie, ćwicząc praktyczne kodowanie - nabierzesz biegłości i sporego doświadczenia w posługiwaniu się Pythonem!- Druk
- PDF + ePub + Mobi pkt
(47,40 zł najniższa cena z 30 dni)
47.40 zł
79.00 zł (-40%) -
Promocja
Z książki Twórz własne gry komputerowe w Pythonie dowiesz się, jak tworzyć gry komputerowe w tym popularnym języku programowania. Nawet jeżeli jest to twoje pierwsze spotkanie z programowaniem. Zaczniesz od klasycznych gier, takich jak Szubienica, Zgadywanka Liczbowa oraz Kółko i Krzyżyk, aby następnie zająć się pisaniem bardziej zaawansowanych pro- ePub + Mobi pkt
(59,20 zł najniższa cena z 30 dni)
59.20 zł
84.00 zł (-30%) -
Promocja
Jeśli nie masz pojęcia o programowaniu, ale chcesz wykorzystać komputer do automatyzacji prostych, powtarzalnych operacji, trzymasz w ręku właściwą książkę. Podstawy programowania przedstawiono tu w sposób klarowny i zrozumiały, poszczególne działania wyjaśniono krok po kroku, a propozycje praktycznych projektów pozwalają na gruntowne przyswojenie materiału i poszerzenie wiedzy. Do nauki wykorzystano język Python, ponieważ jest on stosunkowo prosty, popularny, a przy tym wciąż rozwijany. Szybko przekonasz się, ile czasu i wysiłku można zaoszczędzić dzięki automatyzacji zadań za pomocą krótkich i łatwych programów!- Druk
- PDF + ePub + Mobi pkt
Niedostępna
-
Promocja
Scratch to najpopularniejszy język programowania dla dzieci. Korzystają z niego miliony osób na całym świecie. Jest łatwy w obsłudze, wystarczy przeciągać i upuszczać poszczególne bloki, dzięki czemu nawet najmłodsi adepci sztuki programowania szybko się w nim odnajdą. Książka Bawimy się, programując w Scratchu 3 uczy programowania poprzez zabawę t- ePub + Mobi pkt
(55,20 zł najniższa cena z 30 dni)
55.20 zł
74.00 zł (-25%) -
Promocja
Minecraft to bardzo popularna gra komputerowa, która na całym świecie sprzedała się w milionach egzemplarzy. Teraz możesz wykorzystać ją także do nauki programowania. W książce Kodowanie z Minecraftem znajdziesz instrukcje, dzięki którym napiszesz programy komputerowe, które pozwolą Ci zautomatyzować swoją grę szybciej wydobywać minerały, wytwarzać(54,94 zł najniższa cena z 30 dni)
55.20 zł
74.00 zł (-25%)
Zobacz pozostałe książki z serii
-
Bestseller Promocja
Koncepcje te zostały przystępnie wyjaśnione właśnie w tej książce. W szczególności zapoznasz się z praktycznymi aspektami probabilistyki, statystyki, algebry liniowej i rachunku różniczkowego. Prezentacji tych zagadnień towarzyszą fragmenty kodu w Pythonie i praktyczne przykłady zastosowań w uczeniu głębokim. Rozpoczniesz od zapoznania się z podstawami, takimi jak twierdzenie Bayesa, a następnie przejdziesz do bardziej zaawansowanych zagadnień, w tym uczenia sieci neuronowych przy użyciu wektorów, macierzy i pochodnych. Dwa ostatnie rozdziały dadzą Ci szansę użycia nowej wiedzy do zaimplementowania propagacji wstecznej i metody gradientu prostego — dwóch podstawowych algorytmów napędzających rozwój sztucznej inteligencji.- Druk
(53,40 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł (-40%) -
Bestseller Promocja
Książka jest przystępnym przewodnikiem po zastosowaniu języka SQL w procesie uzyskiwania informacji zawartych w danych. Zaczniesz od przyswojenia podstawowej wiedzy o bazach danych i SQL, a następnie przystąpisz do analizy prawdziwych zbiorów danych, takich jak demografia spisu ludności w Stanach Zjednoczonych, przejazdy taksówek w Nowym Jorku i szczegóły z krajowego katalogu targów rolniczych. Dzięki ćwiczeniom i przykładom zamieszczonym w każdym rozdziale szybko zaznajomisz się ze wszystkimi, również najnowszymi, narzędziami niezbędnymi do budowania zaawansowanych baz danych PostgreSQL. Zrozumiesz również, jak w szybki i efektywny sposób dane pozwalają zdobyć potrzebne informacje.- Druk
- PDF + ePub + Mobi pkt
(59,40 zł najniższa cena z 30 dni)
59.40 zł
99.00 zł (-40%) -
Promocja
Dzięki tej książce ta trudna sztuka musi Ci się udać! Znajdziesz tu gruntowne, a przy tym zabawne wprowadzenie do tworzenia i używania struktur danych. Naukę oprzesz na przejrzystych schematach i dowcipnych porównaniach, aby już wkrótce móc tworzyć wydajniejszy i elastyczny kod. Nieistotne, jakim językiem programowania się posługujesz — podczas lektury zaimplementujesz za pomocą pseudokodu kilkanaście głównych struktur danych, w tym stosy, filtry Blooma, drzewa czwórkowe i grafy. Fantazyjne przykłady ułatwią Ci intuicyjne posługiwanie się tymi strukturami danych. Dowiesz się, jak indeksować przedmioty kolekcjonerskie, optymalizować wyszukiwanie za pomocą latającej wiewiórki, a nawet jak znaleźć najbliższy kubek kawy!- Druk
- PDF + ePub + Mobi pkt
(41,40 zł najniższa cena z 30 dni)
41.40 zł
69.00 zł (-40%) -
Promocja
Dzięki tej książce dowiesz się, jak testować zabezpieczenia API GraphQL technikami ofensywnymi, takimi jak testy penetracyjne. Zdobędziesz i ugruntujesz wiedzę o GraphQL, niezbędną dla analityka bezpieczeństwa czy inżyniera oprogramowania. Nauczysz się skutecznie atakować API GraphQL, co pozwoli Ci wzmocnić procedury, stosować zautomatyzowane testy bezpieczeństwa w potoku ciągłej integracji i wdrażania, a ponadto efektywnie weryfikować mechanizmy zabezpieczeń. Zapoznasz się również z raportami o znalezionych lukach w zabezpieczeniach i przejrzysz kod exploitów, a także przekonasz się, jak wielki wpływ wywierają na działalność przedsiębiorstw.- Druk
- PDF + ePub + Mobi pkt
(47,40 zł najniższa cena z 30 dni)
47.40 zł
79.00 zł (-40%) -
Promocja
W tej książce omówiono wewnętrzny sposób działania frameworka Kubernetes i pokazano, jak za jego pomocą budować wydajne, niezawodne i odporne na awarie aplikacje natywnej chmury. Dowiesz się, jak kontenery używają przestrzeni nazw w celu izolowania procesów, a także jak korzystają z funkcjonalności ograniczania zasobów, aby zagwarantować, że proces będzie się opierał jedynie na tych, które zostały mu przydzielone. Nauczysz się instalować klaster Kubernetes, wdrażać kontenery i zrozumiesz, na czym polega przepływ pakietów między kontenerami w sieci hosta. Ponadto poznasz strategie tworzenia i uruchamiania kontenerów, które zapewnią oprogramowaniu optymalną wydajność, jak również sposoby identyfikowania i usuwania potencjalnych problemów.- Druk
- PDF + ePub + Mobi pkt
(53,40 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł (-40%) -
Promocja
Rozwiązanie problemu znajdziesz w tej książce. Została ona napisana specjalnie z myślą o osobach, które administrują małymi sieciami, dysponują niewielkim budżetem i ograniczonym wsparciem profesjonalistów. Dzięki niej zrozumiesz podstawy zabezpieczania łączności sieciowej i poznasz sposoby zabezpieczania sieci przy niewielkim nakładzie pieniędzy i czasu. Opanujesz uznane techniki hartowania systemów, takie jak mapowanie sieci, śledzenie stanu urządzeń i rozpoznawanie nietypowej aktywności, która może sygnalizować atak. Zagłębisz się w sposoby eliminowania luk w zabezpieczeniach i zapobiegania dostępowi do urządzeń mobilnych i stacjonarnych, a nawet punktów końcowych IoT. Dowiesz się też, jak wdrażać własne strategie backupu, a także wykrywać i blokować złośliwe oprogramowanie i ransomware.- Druk
- PDF + ePub + Mobi pkt
(40,20 zł najniższa cena z 30 dni)
40.20 zł
67.00 zł (-40%) -
Bestseller Promocja
To trzecie, zaktualizowane i uzupełnione wydanie bestsellerowego podręcznika programowania w Pythonie. Naukę rozpoczniesz od podstawowych koncepcji programowania. Poznasz takie pojęcia jak zmienne, listy, klasy i pętle, a następnie utrwalisz je dzięki praktycznym ćwiczeniom. Dowiesz się, jak zapewnić interaktywność programom, i nauczysz się poprawnego testowania kodu przed dodaniem go do projektu. W kolejnych rozdziałach przystąpisz do praktycznej realizacji trzech projektów: gry zręcznościowej inspirowanej klasyczną Space Invaders, wizualizacji danych za pomocą dostępnych dla Pythona niezwykle użytecznych bibliotek i prostej aplikacji internetowej, gotowej do wdrożenia na serwerze WWW i opublikowania w internecie.- Druk
- PDF + ePub + Mobi pkt
(71,40 zł najniższa cena z 30 dni)
71.40 zł
119.00 zł (-40%) -
Promocja
Ta książka stanowi przyspieszony kurs testowania bezpieczeństwa interfejsów API aplikacji internetowych. Dzięki niej przygotujesz się do testowania interfejsów, wyszukiwania błędów i zwiększania bezpieczeństwa własnoręcznie napisanych interfejsów. Dowiesz się, jak interfejsy REST API działają w środowisku produkcyjnym i jakie problemy wiążą się z ich bezpieczeństwem. Zbudujesz nowoczesne środowisko testowe złożone z programów: Burp Suite, Postman, Kiterunner i OWASP Amass, przydatnych do rekonesansu, analizy punktów końcowych i zakłócania interfejsów. Następnie nauczysz się przeprowadzać ataki na procesy uwierzytelniania, luki w procedurach biznesowych czy typowe słabe punkty interfejsów. Dowiesz się też, jak tworzyć skrypty międzyinterfejsowe, a także jak prowadzić masowe przypisania i wstrzykiwanie danych.- Druk
- PDF + ePub + Mobi pkt
(53,40 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł (-40%) -
Promocja
Hakowanie nie zawsze musi być złe. Terminem tym określa się również sprytne sposoby używania sprzętu czy oprogramowania do czegoś nowego. Z kolei etyczne hakowanie polega na zastosowaniu technik ataków do testowania systemu komputerowego, aby znaleźć jego słabe punkty, usunąć je i w ten sposób wzmocnić jego bezpieczeństwo. Opanowanie metod, jakimi posługują się cyberprzestępcy, pozwala zatem zrozumieć naturę zagrożeń w cyfrowym świecie i skutecznie się przed nimi bronić.- Druk
- PDF + ePub + Mobi pkt
(29,94 zł najniższa cena z 30 dni)
29.94 zł
49.90 zł (-40%) -
Promocja
W tej książce znajdziesz fascynującą historię Androida, opowiedzianą przez jej bohaterów. Dowiesz się, skąd się wziął pomysł na system operacyjny dla urządzeń mobilnych, kim byli ludzie, którzy zaczęli nad nim pracę, jak powstawał zespół i jakie trudności trzeba było pokonać, aby móc rzucić wyzwanie branży pełnej dużych graczy o mocnej pozycji. Przekonasz się, że warto ocalić od zapomnienia dzieje sprzed premiery wersji 1.0 Androida i poznasz jego późniejsze ― równie fascynujące ― losy. Przeczytasz tu wypowiedzi najważniejszych dla tego projektu ludzi, dzięki którym możliwe było osiągnięcie oszałamiającego sukcesu Androida. To bardzo ciekawa opowieść, napisana z poczuciem humoru, przystępnym językiem (niezbędne słownictwo specjalistyczne zostało wyjaśnione). W efekcie powstała zajmująca i przyjemna w lekturze książka, którą docenią zarówno osoby interesujące się technologią, jak i pasjonaci niezwykłych historii.- Druk
- PDF + ePub + Mobi pkt
(35,94 zł najniższa cena z 30 dni)
35.94 zł
59.90 zł (-40%)
Ebooka "Złam ten kod z Pythonem. Jak tworzyć, testować i łamać szyfry" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Booxs i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Złam ten kod z Pythonem. Jak tworzyć, testować i łamać szyfry" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Złam ten kod z Pythonem. Jak tworzyć, testować i łamać szyfry" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły książki
- Dane producenta
- » Dane producenta:
- Tytuł oryginału:
- Cracking Codes with Python: An Introduction to Building and Breaking Ciphers
- Tłumaczenie:
- Agnieszka Górczyńska
- ISBN Książki drukowanej:
- 978-83-283-7495-9, 9788328374959
- Data wydania książki drukowanej :
- 2021-06-08
- ISBN Ebooka:
- 978-83-283-7496-6, 9788328374966
- Data wydania ebooka :
-
2021-06-08
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@helion.pl.
- Format:
- 170x230
- Numer z katalogu:
- 146034
- Rozmiar pliku Pdf:
- 4.8MB
- Rozmiar pliku ePub:
- 4.8MB
- Rozmiar pliku Mobi:
- 12MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Helion SA
ul. Kościuszki 1C
41-100 Gliwice
e-mail: gpsr@helion.pl
- Zgłoś erratę
- Kategorie:
Hacking » Kryptografia
Programowanie » Python - Programowanie
Hacking » Inne
Spis treści książki
- Kto powinien przeczytać tę książkę? 20
- Co znajdziesz w tej książce? 21
- Jak używać tej książki? 23
- Wpisywanie kodu źródłowego 23
- Sprawdzanie pod kątem błędów 23
- Konwencje zastosowane w książce 24
- Zasoby w internecie 24
- Pobieranie i instalowanie Pythona 24
- Instalacja Pythona w systemie Windows 24
- Instalacja Pythona w systemie macOS 25
- Instalacja Pythona w systemie Ubuntu 25
- Pobieranie pliku pyperclip.py 25
- Uruchamianie środowiska IDLE 26
- Podsumowanie 27
- Co to jest kryptografia? 30
- Kod a szyfr 30
- Szyfr Cezara 32
- Krążek szyfrowania 32
- Szyfrowanie wiadomości za pomocą krążka szyfrowania 33
- Deszyfrowanie za pomocą krążka szyfrowania 34
- Szyfrowanie i deszyfrowanie z użyciem arytmetyki 35
- Dlaczego podwójne szyfrowanie nie działa? 36
- Podsumowanie 36
- Kilka prostych wyrażeń matematycznych 40
- Wartości całkowite i wartości zmiennoprzecinkowe 41
- Wyrażenia 41
- Kolejność wykonywania działań 42
- Obliczanie wartości wyrażeń 42
- Przechowywanie wartości w zmiennych 43
- Nadpisywanie zmiennej 45
- Nazwy zmiennych 46
- Podsumowanie 47
- Praca z tekstem przy użyciu wartości w postaci ciągu tekstowego 50
- Konkatenacja ciągu tekstowego za pomocą operatora + 51
- Replikacja ciągu tekstowego przy użyciu operatora * 52
- Pobieranie znaków z ciągu tekstowego przy użyciu indeksów 53
- Wyświetlanie wartości za pomocą funkcji print() 56
- Wyświetlanie znaków sterujących 57
- Apostrof i cudzysłów 58
- Tworzenie programów w edytorze pliku IDLE 59
- Kod źródłowy programu typu Witaj, świecie! 59
- Sprawdzanie kodu źródłowego za pomocą narzędzia Online Diff Tool 61
- Użycie środowiska IDLE w celu późniejszego uzyskania dostępu do programu 62
- Zapisywanie programu 62
- Uruchamianie programu 63
- Otwieranie wcześniej zapisanych programów 64
- W jaki sposób działa program Witaj, świecie!? 64
- Komentarze 64
- Wyświetlanie wskazówek dla użytkownika 65
- Pobieranie danych wejściowych od użytkownika 65
- Zakończenie programu 66
- Podsumowanie 66
- Kod źródłowy programu wykorzystującego szyfr odwrotny 70
- Przykładowe uruchomienie programu 70
- Definiowanie komentarzy i zmiennych 71
- Określanie długości ciągu tekstowego 72
- Wprowadzenie do pętli while 73
- Boolowski typ danych 73
- Operatory porównania 74
- Blok kodu 76
- Konstrukcja pętli while 77
- "Rośnięcie" ciągu tekstowego 78
- Usprawnianie programu za pomocą funkcji input() 81
- Podsumowanie 82
- Kod źródłowy programu wykorzystującego szyfr Cezara 86
- Przykładowe uruchomienie programu 87
- Importowanie modułu i przypisywanie zmiennych 88
- Stałe i zmienne 89
- Pętla for 90
- Przykład pętli for 90
- Pętla while będąca odpowiednikiem pętli for 91
- Konstrukcja if 92
- Przykład użycia polecenia if 92
- Polecenie else 92
- Polecenie elif 93
- Operatory in i not in 94
- Metoda find() 95
- Szyfrowanie i deszyfrowanie symboli 96
- Obsługa zawinięcia 97
- Obsługa symboli spoza zbioru symboli 98
- Wyświetlanie i kopiowanie skonwertowanego ciągu tekstowego 98
- Szyfrowanie innych symboli 99
- Podsumowanie 100
- Kod źródłowy programu wykorzystującego szyfr odwrotny 104
- Przykładowe uruchomienie programu 105
- Definiowanie zmiennych 106
- Iteracja z użyciem funkcji range() 106
- Deszyfrowanie wiadomości 108
- Stosowanie formatowania ciągu tekstowego do wyświetlenia klucza i deszyfrowanej wiadomości 109
- Podsumowanie 110
- Sposób działania szyfru przestawieniowego 113
- Ręczne szyfrowanie wiadomości 114
- Tworzenie programu szyfrującego 116
- Kod źródłowy programu wykorzystującego szyfr kolumnowy 117
- Przykładowe uruchomienie programu 118
- Samodzielne definiowanie funkcji za pomocą polecenia def 118
- Definiowanie funkcji pobierającej argumenty 119
- Zmiana parametru istniejącego tylko wewnątrz funkcji 120
- Definiowanie funkcji main() 121
- Przekazywanie klucza i wiadomości jako argumentów 122
- Typ danych listy 123
- Ponowne przypisywanie elementów na liście 124
- Lista list 125
- Stosowanie funkcji len() i operatora in z listą 126
- Konkatenacja listy i replikacja za pomocą operatorów + i * 127
- Algorytm szyfrowania przestawieniowego 127
- Rozszerzone operatory przypisania 128
- Iteracja currentIndex przez wiadomość 129
- Metoda join() 131
- Wartość zwrotna i polecenie return 132
- Przykład polecenia return 132
- Zwrot szyfrogramu 133
- Zmienna __name__ 133
- Podsumowanie 134
- Łamanie szyfru przestawieniowego za pomocą kartki i ołówka 138
- Kod źródłowy programu deszyfrującego wiadomość chronioną szyfrem przestawieniowym 139
- Przykładowe uruchomienie programu 141
- Importowanie modułów i definiowanie funkcji main() 141
- Deszyfrowanie wiadomości za pomocą klucza 142
- Funkcje round(), math.ceil() i math.floor() 142
- Funkcja decryptMessage() 143
- Operatory boolowskie 145
- Dostosowywanie wartości zmiennych column i row 148
- Wywoływanie funkcji main() 150
- Podsumowanie 150
- Kod źródłowy programu do testowania innych programów 154
- Przykładowe uruchomienie programu 155
- Importowanie modułów 156
- Generowanie liczb pseudolosowych 156
- Tworzenie losowo wybranego ciągu tekstowego 158
- Powielanie ciągu tekstowego losowo wybraną liczbę razy 158
- Zmienna listy używa odwołania 159
- Przekazywanie odwołania 162
- Stosowanie funkcji copy.deepcopy() do powielenia listy 162
- Funkcja random.shuffle() 163
- Losowe mieszanie ciągu tekstowego 163
- Testowanie poszczególnych wiadomości 164
- Sprawdzanie poprawności szyfrowania i zakończenie programu 165
- Wywoływanie funkcji main() 166
- Testowanie programu 166
- Podsumowanie 167
- Pliki zwykłego tekstu 170
- Kod źródłowy programu wykorzystującego szyfr przestawieniowy do szyfrowania pliku 170
- Przykładowe uruchomienie programu 171
- Praca z plikami 172
- Otwieranie pliku 172
- Zapisywanie i zamykanie pliku 173
- Odczyt danych z pliku 174
- Funkcja main() programu 175
- Sprawdzanie istnienia pliku 175
- Funkcja os.path.exists() 176
- Sprawdzanie za pomocą funkcji os.path.exists() istnienia pliku danych wejściowych 176
- Stosowanie metod ciągu tekstowego do zapewnienia większej elastyczności danych wejściowych 177
- Metody ciągu tekstowego upper(), lower() i title() 177
- Metody ciągu tekstowego startswith() i endswith() 177
- Stosowanie metod ciągu tekstowego w programie 178
- Odczyt pliku danych wejściowych 179
- Pomiar czasu operacji szyfrowania i deszyfrowania 179
- Moduł time i funkcja time.time() 179
- Stosowanie funkcji time.time() w programie 180
- Zapis danych wyjściowych do pliku 181
- Wywoływanie funkcji main() 181
- Podsumowanie 182
- Jak komputer może zrozumieć język angielski? 184
- Kod źródłowy modułu do wykrywania języka angielskiego 186
- Przykładowe uruchomienie programu 187
- Polecenia i definiowanie stałych 187
- Typ danych w postaci słownika 188
- Różnice między słownikiem i listą 189
- Dodawanie lub modyfikowanie elementów słownika 190
- Stosowanie funkcji len() ze słownikiem 191
- Stosowanie operatora in ze słownikiem 191
- Wyszukiwanie elementów w słowniku odbywa się szybciej niż na liście 192
- Stosowanie pętli for w słowniku 192
- Implementacja pliku słownika 193
- Metoda split() 193
- Podział słownika na poszczególne słowa 194
- Zwrot danych słownika 194
- Zliczanie liczby słów angielskich w wiadomości 195
- Błąd dzielenia przez zero 196
- Zliczanie dopasowań słów w języku angielskim 196
- Funkcje float(), int() i str() oraz dzielenie całkowite 197
- Określanie proporcji angielskich słów w wiadomości 198
- Usuwanie znaków innych niż litery 198
- Metoda append() typu listy 199
- Tworzenie ciągu tekstowego liter 200
- Wykrywanie słów angielskich 200
- Stosowanie argumentów domyślnych 200
- Obliczanie wartości procentowych 201
- Podsumowanie 203
- Kod źródłowy programu umożliwiającego złamanie szyfru przestawieniowego 206
- Przykładowe uruchomienie programu 207
- Importowanie modułów 208
- Wielowierszowy ciąg tekstowy ujęty w potrójny cudzysłów 208
- Wyświetlanie wyniku deszyfrowania wiadomości 209
- Pobranie deszyfrowanej wiadomości 210
- Metoda strip() ciągu tekstowego 212
- Stosowanie metody strip() ciągu tekstowego 213
- Nieudana próba deszyfrowania wiadomości 213
- Wywoływanie funkcji main() 214
- Podsumowanie 214
- Arytmetyka modularna 216
- Operator reszty z dzielenia 217
- Wyszukiwanie dzielników do obliczenia największego wspólnego dzielnika 218
- Przypisanie wielokrotne 220
- Algorytm Euklidesa do wyszukiwania największego wspólnego dzielnika 221
- Sposób działania szyfrów multiplikatywnego i afinicznego 222
- Wybór poprawnego klucza multiplikatywnego 223
- Szyfrowanie z użyciem szyfru afinicznego 224
- Deszyfrowanie szyfru afinicznego 225
- Określanie odwrotności modularnej 226
- Operator dzielenia całkowitego 226
- Kod źródłowy modułu cryptomath 227
- Podsumowanie 228
- Kod źródłowy programu wykorzystującego szyfr afiniczny 232
- Przykładowe uruchomienie programu 233
- Importowanie modułów i stałych oraz definiowanie funkcji main() 234
- Generowanie i weryfikowanie kluczy 236
- Typ danych w postaci krotki 236
- Sprawdzanie pod kątem słabych kluczy 237
- Ile kluczy może mieć szyfr afiniczny? 238
- Tworzenie funkcji szyfrującej 240
- Tworzenie funkcji deszyfrującej 241
- Generowanie losowych kluczy 242
- Wywoływanie funkcji main() 243
- Podsumowanie 244
- Kod źródłowy programu umożliwiającego złamanie szyfru afinicznego 245
- Przykładowe uruchomienie programu 247
- Importowanie modułów i stałych oraz definiowanie funkcji main() 248
- Funkcja odpowiedzialna za złamanie szyfru afinicznego 249
- Operator wykładniczy 249
- Obliczanie całkowitej liczby kluczy, których można użyć 250
- Polecenie continue 251
- Stosowanie polecenia continue do pominięcia kodu 252
- Wywoływanie funkcji main() 253
- Podsumowanie 254
- Jak działa prosty szyfr podstawieniowy? 256
- Kod źródłowy programu wykorzystującego szyfr podstawieniowy 257
- Przykładowe uruchomienie programu 259
- Importowanie modułów i stałych oraz definiowanie funkcji main() 259
- Metoda sort() listy 261
- Funkcje opakowujące 262
- Funkcja translateMessage() 263
- Metody isupper() i islower() ciągu tekstowego 265
- Zachowywanie wielkości liter dzięki metodzie isupper() 266
- Generowanie losowego klucza 267
- Wywoływanie funkcji main() 268
- Podsumowanie 268
- Stosowanie wzorca słowa do deszyfrowania 272
- Znajdowanie wzorca słowa 272
- Wyszukiwanie potencjalnych liter odszyfrowujących 273
- Omówienie procesu łamania szyfru 275
- Moduł wzorca słowa 275
- Kod źródłowy programu wykorzystującego szyfr podstawieniowy 276
- Przykładowe uruchomienie programu 280
- Importowanie modułów i stałych 280
- Wyszukiwanie znaków za pomocą wyrażeń regularnych 281
- Konfigurowanie funkcji main() 281
- Wyświetlanie użytkownikowi wyniku operacji łamania szyfru 282
- Tworzenie mapowania szyfrogramu 283
- Tworzenie pustego mapowania 283
- Dodawanie liter do mapowania 283
- Łączenie dwóch mapowań 285
- W jaki sposób działają funkcje pomocnicze mapowania liter? 286
- Wyszukiwanie zdeszyfrowanych liter w mapowaniu 290
- Testowanie funkcji removeSolvedLettersFromMapping() 292
- Funkcja hackSimpleSub() 292
- Metoda replace() ciągu tekstowego 294
- Deszyfrowanie wiadomości 295
- Deszyfrowanie w powłoce interaktywnej 296
- Wywoływanie funkcji main() 297
- Podsumowanie 298
- Stosowanie wielu liter kluczy w szyfrze Vigenere'a 300
- Dłuższe klucze szyfru Vigenere'a są znacznie bezpieczniejsze 302
- Wybór klucza uniemożliwiającego atak słownikowy 303
- Kod źródłowy programu wykorzystującego szyfr Vigenere'a 303
- Przykładowe uruchomienie programu 305
- Importowanie modułów i stałych oraz definiowanie funkcji main() 305
- Tworzenie ciągu tekstowego za pomocą procesu dołączania do listy 306
- Szyfrowanie i deszyfrowanie wiadomości 307
- Wywoływanie funkcji main() 310
- Podsumowanie 310
- Analiza częstotliwości występowania liter w tekście 314
- Dopasowywanie częstotliwości występowania liter 316
- Obliczanie wyniku dopasowania częstotliwości dla prostego szyfru podstawieniowego 316
- Obliczanie wyniku dopasowania częstotliwości dla prostego szyfru przestawieniowego 317
- Stosowanie analizy częstotliwości do złamania szyfru Vigenere'a 318
- Kod źródłowy programu obliczającego wynik dopasowania częstotliwości 319
- Przechowywanie liter w kolejności ETAOIN 321
- Zliczanie liter w wiadomości 321
- Pobieranie pierwszego elementu składowego krotki 323
- Układanie liter według częstotliwości ich występowania w wiadomości 323
- Zliczanie liter za pomocą funkcji getLetterCount() 324
- Tworzenie słownika częstotliwości wystąpień i listy liter 324
- Sortowanie liter w odwrotnej kolejności ETAOIN 325
- Sortowanie list słownika według częstotliwości występowania 330
- Tworzenie listy sortowanych liter 332
- Obliczanie wyniku dopasowania częstotliwości dla wiadomości 332
- Podsumowanie 334
- Atak słownikowy w celu złamania szyfru Vigenere'a metodą brute force 336
- Kod źródłowy programu umożliwiającego złamanie szyfru Vigenere'a za pomocą ataku słownikowego 336
- Przykładowe uruchomienie programu 337
- Informacje o programie do łamania szyfru Vigenere'a za pomocą ataku słownikowego 337
- Stosowanie metody Kasiskiego do ustalenia długości klucza 338
- Odszukanie powtarzających się sekwencji 338
- Pobieranie dzielników liczb określających odstępy 339
- Pobieranie każdej n-tej litery ciągu tekstowego 341
- Stosowanie analizy częstotliwości do złamania poszczególnych podkluczy 342
- Przeprowadzanie ataku brute force na możliwe klucze 344
- Kod źródłowy programu umożliwiającego złamanie szyfru Vigenere'a 344
- Przykładowe uruchomienie programu 349
- Importowanie modułów i definiowanie funkcji main() 350
- Wyszukiwanie powtarzających się sekwencji 351
- Obliczanie dzielników odstępów 354
- Usuwanie duplikatów za pomocą funkcji set() 355
- Usuwanie powtarzających się dzielników i sortowanie listy 355
- Wyszukiwanie najczęściej występujących dzielników 356
- Określanie prawdopodobnej długości klucza 358
- Metoda listy extend() 358
- Rozszerzanie słownika repeatedSeqSpacings 359
- Pobieranie dzielników z factorsByCount 360
- Pobieranie liter szyfrowanych za pomocą tego samego podklucza 360
- Próba deszyfrowania z użyciem potencjalnych długości klucza 362
- Argument w postaci słowa kluczowego key funkcji print() 364
- Uruchamianie programu w trybie cichym lub wyświetlania informacji użytkownikowi 365
- Wyszukiwanie możliwych kombinacji podkluczy 365
- Wyświetlanie deszyfrowanego tekstu z użyciem właściwej wielkości liter 369
- Zwrot deszyfrowanej wiadomości 370
- Opuszczanie pętli po znalezieniu potencjalnego klucza 371
- Atak brute force na wszystkie długości klucza 371
- Wywoływanie funkcji main() 372
- Modyfikowanie stałych programu 373
- Podsumowanie 373
- Niemożliwy do złamania szyfr z kluczem jednorazowym 376
- Tworzenie klucza o długości odpowiadającej długości wiadomości 376
- Zapewnianie prawdziwej losowości klucza 378
- Dlaczego klucza jednorazowego można użyć tylko raz? 379
- Dlaczego dwukrotnie użyty klucz jednorazowy to szyfr Vigenere'a? 379
- Podsumowanie 380
- Co to jest liczba pierwsza? 382
- Kod źródłowy modułu liczb pierwszych 384
- Przykładowe uruchomienie modułu 386
- Sposób działania algorytmu próbnego dzielenia 386
- Implementacja algorytmu próbnego dzielenia 388
- Sito Eratostenesa 389
- Generowanie liczb pierwszych za pomocą sita Eratostenesa 391
- Algorytm pierwszości Rabina-Millera 392
- Wyszukiwanie ogromnych liczb pierwszych 393
- Generowanie ogromnych liczb pierwszych 395
- Podsumowanie 395
- Kryptografia klucza publicznego 398
- Problem z uwierzytelnieniem 400
- Podpis cyfrowy 400
- Uważaj na atak MITM 401
- Etapy generowania kluczy publicznego i prywatnego 402
- Kod źródłowy programu generującego klucze kryptografii klucza publicznego 403
- Przykładowe uruchomienie programu 404
- Tworzenie funkcji main() 406
- Generowanie kluczy za pomocą funkcji generateKey() 406
- Obliczanie wartości e 407
- Obliczanie wartości d 407
- Zwracanie kluczy 408
- Tworzenie plików kluczy za pomocą funkcji makeKeyFiles() 408
- Wywoływanie funkcji main() 410
- Hybrydowe systemy kryptograficzne 411
- Podsumowanie 411
- Jak działa kryptografia klucza publicznego? 414
- Tworzenie bloku 414
- Konwersja ciągu tekstowego na blok 415
- Matematyka szyfrowania i deszyfrowania za pomocą kryptografii klucza publicznego 416
- Konwersja bloku na ciąg tekstowy 418
- Dlaczego nie można złamać szyfru wykorzystującego kryptografię klucza publicznego? 420
- Kod źródłowy programu wykorzystującego kryptografię klucza publicznego 421
- Przykładowe uruchomienie programu 425
- Konfiguracja programu 426
- Wybór trybu pracy programu 426
- Konwersja ciągu tekstowego na bloki za pomocą funkcji getBlocksFromText() 428
- Funkcje min() i max() 428
- Przechowywanie bloków w blockInt 429
- Stosowanie funkcji getTextFromBlocks() do deszyfrowania wiadomości 431
- Stosowanie metody insert() listy 432
- Łączenie listy message i tworzenie na jej podstawie jednego ciągu tekstowego 432
- Tworzenie funkcji encryptMessage() 433
- Tworzenie funkcji decryptMessage() 433
- Odczytywanie kluczy publicznego i prywatnego z ich plików 434
- Zapisywanie szyfrogramu do pliku 435
- Deszyfrowanie danych z pliku 437
- Wywoływanie funkcji main() 439
- Podsumowanie 439
- Na czym polega działanie debugera? 441
- Usuwanie błędów z programu wykorzystującego szyfr odwrotny 443
- Definiowanie punktu przerwania 445
- Podsumowanie 447
- Rozdział 1. 449
- Rozdział 2. 450
- Rozdział 3. 451
- Rozdział 4. 452
- Rozdział 5. 453
- Rozdział 6. 454
- Rozdział 7. 455
- Rozdział 8. 457
- Rozdział 9. 459
- Rozdział 10. 459
- Rozdział 11. 460
- Rozdział 12. 461
- Rozdział 13. 462
- Rozdział 14. 462
- Rozdział 15. 463
- Rozdział 16. 463
- Rozdział 17. 464
- Rozdział 18. 464
- Rozdział 19. 465
- Rozdział 20. 465
- Rozdział 21. 466
- Rozdział 22. 466
- Rozdział 23. 466
O autorze 4
O korektorach merytorycznych 4
Podziękowania 17
Wprowadzenie 19
1. Papier jako narzędzie kryptograficzne 29
2. Programowanie w powłoce interaktywnej 39
3. Ciągi tekstowe i tworzenie programów 49
4. Szyfr odwrotny 69
5. Szyfr Cezara 85
6. Łamanie szyfru Cezara za pomocą ataku brute force 103
7. Szyfrowanie za pomocą szyfru przestawieniowego 113
8. Deszyfrowanie wiadomości chronionej szyfrem przestawieniowym 137
9. Tworzenie programu do testowania innych programów 153
10. Szyfrowanie i deszyfrowanie plików 169
11. Programowe wykrywanie języka angielskiego 183
12. Łamanie szyfru przestawieniowego 205
13. Moduł arytmetyki modularnej dla szyfru afinicznego 215
14. Programowanie szyfru afinicznego 231
15. Łamanie szyfru afinicznego 245
16. Programowanie prostego szyfru podstawieniowego 255
17. Łamanie prostego szyfru podstawieniowego 271
18. Programowanie szyfru Vigenere'a 299
19. Analiza częstotliwości 313
20. Łamanie szyfru Vigenere'a 335
21. Szyfr z kluczem jednorazowym 375
22. Wyszukiwanie i generowanie liczb pierwszych 381
23. Generowanie kluczy dla szyfru klucza publicznego 397
24. Programowanie szyfru klucza publicznego 413
A. Debugowanie kodu Pythona 441
B. Odpowiedzi do ćwiczeń 449
Helion - inne książki
-
Bestseller Nowość Promocja
Na podstawie tej praktycznej książki nauczysz się pisać skuteczne prompty dla dużych modeli językowych. Dowiesz się, w jaki sposób mogą posłużyć do generowania opisów produktów, spersonalizowanych wiadomości e-mail, postów w mediach społecznościowych, a nawet tekstów beletrystycznych i poetyckich. Poznasz także zaawansowane techniki użycia, takie jak integracja dużych modeli językowych z innymi narzędziami i tworzenie chatbotów. Wszystkie opisane tu techniki przetestujesz, eksperymentując i optymalizując swoje rozwiązania. W efekcie zdobędziesz umiejętności, które pozwolą Ci wykonywać codzienne zadania szybciej i lepiej!- Druk
- PDF + ePub + Mobi pkt
(44,94 zł najniższa cena z 30 dni)
44.94 zł
74.90 zł (-40%) -
Nowość Promocja
Dzięki tej przystępnej, świetnie napisanej książce dowiesz się, czym jest dług techniczny, co prowadzi do jego powstawania i w jaki sposób można go bezpiecznie zrefaktoryzować przy użyciu nowoczesnych narzędzi dostępnych w środowisku Visual Studio, a także najnowszych składników języka C# 12 i platformy .NET 8. Nauczysz się też korzystać z zaawansowanych testów jednostkowych tworzonych przy użyciu xUnit i takich bibliotek jak Moq, Snapper czy Scientist.NET. Dowiesz się, jak stosować zasady SOLID, aby tworzyć łatwy w utrzymaniu kod, poznasz również techniki programowania defensywnego, które można stosować w nowszych wersjach C#. Ponadto nauczysz się przeprowadzać analizy kodu i pisać własne analizatory Roslyn do wykrywania i rozwiązywania problemów typowych dla Twojego projektu.- Druk
- PDF + ePub + Mobi pkt
(59,40 zł najniższa cena z 30 dni)
59.40 zł
99.00 zł (-40%) -
Nowość Promocja
Język DAX (ang. Data Analysis Expressions) został stworzony przez firmę Microsoft, by umożliwić wykonywanie efektywnych obliczeń na danych przechowywanych w wielu tabelach i przetwarzanych w Power BI, Excel Power Pivot czy SQL Server Analysis Services. Możliwości DAX-a są naprawdę ogromne, osoba, która go opanuje, zyska potężnego sprzymierzeńca w pracy z wielkimi zbiorami danych ukrytymi pod wyświetlanymi w raportach wykresami czy tabelami.- Druk
- PDF + ePub + Mobi pkt
(23,94 zł najniższa cena z 30 dni)
23.94 zł
39.90 zł (-40%) -
Nowość Promocja
Dzięki tej książce dowiesz się, jak korzystać z możliwości platformy GitHub w trakcie transformacji przepływu pracy DevOps. Rozpoczniesz od podstaw technologii Git i od zrozumienia podejścia DevOps, zapoznasz się również z kwestią wrażeń odbieranych przez programistę. W kolejnych rozdziałach znajdziesz informacje o udostępnionych na platformie GitHub funkcjach automatyzacji i współpracy. Nauczysz się też używać funkcjonalności GitHub Copilot do zwiększenia produktywności. Ponadto dowiesz się, jak wyeliminować lukę DevOps, zachować jakość kodu i zaimplementować niezawodne środki bezpieczeństwa. Liczne ćwiczenia pomogą Ci w praktycznym poprawianiu wrażeń programisty, optymalizacji pracy zespołowej i wspieraniu innowacyjności. Szybko się przekonasz, jaki potencjał drzemie w podejściu DevOps!- Druk
- PDF + ePub + Mobi pkt
(41,40 zł najniższa cena z 30 dni)
41.40 zł
69.00 zł (-40%) -
Nowość Promocja
Jako menedżer działu inżynierii oprogramowania wiesz już wszystko. Uznajesz, że czas pomyśleć o wyższym stanowisku. Tak, chcesz spróbować swoich sił jako dyrektor! Zacznij jednak od chwili namysłu. Jeśli uważnie przyjrzysz się karierom świeżo upieczonych dyrektorów, zauważysz, że wielu z nich rozpoczyna pracę na tym stanowisku z entuzjazmem tylko po to, by w ciągu 18 miesięcy odejść sfrustrowanym. Jak nie podzielić ich losu?- Druk
- PDF + ePub + Mobi pkt
(41,40 zł najniższa cena z 30 dni)
41.40 zł
69.00 zł (-40%) -
Bestseller Nowość Promocja
Nawet jeśli nie darzysz królowej nauk płomiennym uczuciem, dzięki temu kompleksowemu opracowaniu z łatwością poradzisz sobie z jej lepszym poznaniem. Nie znajdziesz tu skomplikowanych teorii naukowych, tylko przystępnie podane koncepcje matematyczne niezbędne do rozwoju w dziedzinie sztucznej inteligencji, w szczególności do praktycznego stosowania najnowocześniejszych modeli. Poznasz takie zagadnienia jak regresja, sieci neuronowe, sieci konwolucyjne, optymalizacja, prawdopodobieństwo, procesy Markowa, równania różniczkowe i wiele innych w ekskluzywnym kontekście sztucznej inteligencji. Książkę docenią pasjonaci nowych technologii, twórcy aplikacji, inżynierowie i analitycy danych, a także matematycy i naukowcy.- Druk
- PDF + ePub + Mobi pkt
(83,85 zł najniższa cena z 30 dni)
77.40 zł
129.00 zł (-40%) -
Bestseller Nowość Promocja
Mimo zainteresowania danymi i ich analizą zbyt wiele projektów z obszaru data science kończy się fiaskiem. Firmy zatrudniają analityków danych, kupują drogie narzędzia, traktują analizę danych jak magię. Niestety, bez dogłębnego zrozumienia sposobu i celu przetwarzania danych nie masz co liczyć na sukces. Jeśli chcesz podjąć się tego wyzwania, Twoim najlepszym sojusznikiem okaże się… Excel, który świetnie się nadaje do wyjaśniania najważniejszych zagadnień nauki o danych.- Druk
- PDF + ePub + Mobi pkt
(59,40 zł najniższa cena z 30 dni)
59.40 zł
99.00 zł (-40%) -
Nowość Promocja
Książka powstała z myślą o studentach informatyki i o każdym, kto przygotowuje się do pracy w zawodzie związanym z programowaniem i administrowaniem sieciami. A także z innymi obszarami, w których wiedza i umiejętności z zakresu informatyki są kluczowe, ale w których niebagatelne znaczenie ma również znajomość podstaw elektroniki. Ponieważ problemy elektryki, a także elektroniki analogowej i cyfrowej nie zawsze są proste do zrozumienia, nawet na bazowym poziomie, autor postanowił zaprezentować je w możliwie najprzystępniejszy sposób.- Druk
- PDF + ePub + Mobi pkt
(53,40 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł (-40%) -
Bestseller Nowość Promocja
Wirtualizacja umożliwia równoczesne uruchomienie różnych systemów operacyjnych na jednym sprzęcie. Dzięki temu można lepiej wykorzystać dostępną moc obliczeniową i zasoby. Oczywiście, by móc czerpać z dobrodziejstw wirtualizacji, potrzeba odpowiednich narzędzi. Jednym z najpopularniejszych programów wspierających wirtualizację jest VirtualBox. Aby łatwiej zarządzać wirtualnymi maszynami, skuteczniej monitorować ich wydajność, sprawnie je konserwować, warto nauczyć się używać właśnie tego narzędzia. Najszybciej zrobisz to z naszym poradnikiem.- Druk
- PDF + ePub + Mobi pkt
(32,94 zł najniższa cena z 30 dni)
32.94 zł
54.90 zł (-40%) -
Bestseller Nowość Promocja
Ta książka jest kolejnym, starannie zaktualizowanym wydaniem cenionego i lubianego poradnika, dzięki któremu Twoja praca w języku C# stanie się przyjemna i wydajna. Znajdziesz tu liczne przykłady prezentujące nowe elementy .NET 8: aliasy typów i konstruktory podstawowe, zapewniające spójny i czytelny kod. Nauczysz się stosować klauzule ochronne i uproszczoną implementację pamięci podręcznej w ASP.NET Core 8. Poznasz też nową metodę kompilacji AOT, dzięki której publikowane serwisy zajmują mniej pamięci i szybciej się uruchamiają. Na zakończenie zaznajomisz się również z technologią Blazor Full Stack, będącą nowym, zunifikowanym modelem elastycznego projektowania aplikacji sieciowych.- Druk
- PDF + ePub + Mobi pkt
(107,40 zł najniższa cena z 30 dni)
107.40 zł
179.00 zł (-40%)
Dzięki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep@helion.pl
Książka drukowana


Oceny i opinie klientów: Złam ten kod z Pythonem. Jak tworzyć, testować i łamać szyfry Al Sweigart (1)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię.
(1)
(0)
(0)
(0)
(0)
(0)