Программирование cuda книга

Вы разработчик программногообеспечения ? А иногда вам нужно использовать криптографию в вашей повседневной работе. Например, хэши. Шифрование или цифровые подписи? И вы думаете. Что криптография сложна и полна математики. И она предназначена только для ботаников? Нет, это не так. Каждый разработчик может научиться использовать криптографические алгоритмы. Эта книга покажет вам. Как: с примерами кода и практическим опытом кодирования. С меньшим количеством математики и большей практикой.

Не требуется быть сильным математиком или даже не сильным математиком. Чтобы понять криптографические концепции с точки зрения разработчика

. Эта книга научит вас основам прикладной криптографии почти без математического стиля. Следуя пошаговому подходу с большим количеством примеров кода и практических упражнений (практический опыт), так же. Как когда вы изучаете веб-разработку. Базы данных или мобильные приложения. Да, если вы можете изучить веб-разработку или RESTful services. Вы также можете изучить практический аспект криптографии. Это все равно что изучать новый API или новый фреймворк веб-разработки: вы изучаете комбинацию концепций + API (криптоалгоритмы. Реализованные в криптобиблиотеках) +

инструменты + лучшие практики использования этих API и инструментов.

Из этой книги вы узнаете , как использовать криптографические алгоритмы и криптографические системы , такие как хэши. МАК коды и ключевые функции деривации (KFD). Генераторы случайных. Основных протоколов обмена. Симметричное шифрование. Шифрование схемы. Асимметричными криптосистемами с открытым ключом криптография на основе эллиптических кривых. Цифровых подписей и квантово-безопасная крипто-алгоритмов. Вместе с современных криптографических инструментов и библиотек.

Я счастлив опубликовать эту бесплатную практическую криптографическую книгу для разработчиков

. ****Он содержит только то, что разработчикам необходимо знать, чтобы использовать криптографию в своей повседневной работе. В ней не рассматриваются внутренние механизмы алгоритмов и способы разработки симметричных шифров. Криптосистем с открытым ключом или схем аутентификации. Она охватывает базовое понимание основных криптографических концепций и то. Как их использовать с точки зрения разработчика: библиотеки, инструменты, примеры кода. Это то. Что большинство разработчиков должны знать о криптографии. Это то. Что эта книга дает вам бесплатно.

Эта книга для разработчиков!

Эта книга предназначена для разработчиков, которые пишут код каждый день. Для инженеров-программистов. Которые создают программные системы. Веб-приложения. Мобильные приложения и другое программное обеспечение. Она может быть полезна также для того. DevOps инженеров , которые имеют дело с крипто алгоритмы и написание кода для автоматизации ИТ-инфраструктуры. Для системных администраторов, которые хотят узнать криптографией, лучше, по информационной безопасности, инженеров, которые имеют дело с криптографией каждый день и знать. Какие шифры и Crypto алгоритмам Безопасные и разбиты. Наряду с возможной атаки. Для опытных QA-инженеров которые выполняют тестирование безопасности и обзоры кода о безопасности и криптографии. А также для многих других ИТ-специалистов.

Эта книга посвящена использованию криптоалгоритмов и криптографических пакетов. А не разработке шифров. Сигнатурных схем и криптосистем. Вы узнаете, как работают криптосистемы (без излишней математики) и как использовать их в своей повседневной работе. Эта книга не на 100% свободна от математики. Но уровень сложности уменьшен. Чтобы соответствовать уровню среднего разработчика. А сложные концепции объясняются в упрощенном и понятном стиле. Эта книга создана разработчиками для разработчиков, а не университетскими профессорами или математиками. Речь идет о кодировании умным способом. С пониманием концепций и принципов программирования. правильное использование криптоалгоритмов и криптобиблиотек. Речь идет о современных криптоалгоритмах и криптографических техниках. Используемых сегодня в индустрии программного обеспечения (по состоянию на ноябрь 2018 года).

Мы предполагаем. Что большинство разработчиков используют языки программирования более высокого уровня (такие как JavaScript. Python. C# и PHP). Поэтому большинство примеров кода в книге приведены на языке Python, который легко переводится на другие языки.

Эта книга бесплатна!

Главный автор книги д-р Светлин Наков безвозмездно передает эту книгу . А также все ее содержание и примеры кода разработчикам и ИТ-сообществу в качестве проекта с открытым исходным кодомпо лицензии MIT. Почему? Потому что главный автор книги и люди . Стоящие за этим проектом, считают. Что знания есть у всех и ими нужно делиться бесплатно, потому что разработчики должны научиться правильно использовать криптографию. Потому что наш мир нуждается в более безопасном программном обеспечении. Потому что делиться знаниями и навыками бесплатно-это величайшее чудо современного образования.

По тем же причинам. По которым ездят люди. Чтобы построить Википедии и делиться знаниями бесплатно. Публиковать проекты с открытым исходным кодом на Гитхабе и делиться код бесплатно. Для разработки с открытым исходным кодом. Такие как Linux, так и в Firefox, и распространять ее бесплатно. Я пишу и публикую это с открытым исходным кодом криптография. Книга для разработчиков. Я хочу поделиться знаниями и навыками, помочь разработчикам стать лучшими профессионалами Лично я. Как разработчик. Когда изучаю новую технологию. Ищу бесплатные ресурсы и примеры кода в Интернете и радуюсь. Что кто-то создает и делится ими бесплатно. Теперь пришло время вернуться обратно в общество и в сообщество разработчиков. И это делает меня счастливым.

Об авторе: Д-р Светлин Наков

Доктор Светлин Наков (http://www.nakov.com) — страстный инженер-программист . Вдохновляющий технический тренер и технический предприниматель из Болгарии. Опытный в широком спектре языков. Программных технологий и платформ. Он является соучредителем нескольких успешных технологических стартапов и некоммерческих организаций, а также техническим консультантом в нескольких успешных блокчейн-ICO-проектах. Светлин является менеджером по обучению. Инновациям и вдохновению в SoftUni — крупнейшем поставщике технического образования в Юго-Восточной Европе.

Светлин Наков имеет более чем 20-летний технический опыт работы инженером-программистом. Менеджером программных проектов. Консультантом, тренером и предпринимателем с богатым опытом работы с .NET, Java EE. Информационными системами. Базами данных. Криптографией и безопасностью программного обеспечения. Веб-разработкой. JavaScript, PHP. Python и разработкой программного обеспечения. Он является ведущим автором 15 книг по компьютерному программированию. Программным технологиям. Криптографии. C#, JavaScript. Python и десятков технических и научных публикаций. Он большой поклонник обмена знаниями и гордится тем. Что является автором Википедии. Автором бесплатных книг и сторонником открытого исходного кода.

Светлин выступал на сотнях конференций. Семинаров, встреч. Курсов и других тренингов в США, Сингапуре. Германии, Египте. Болгарии и других странах. Он имеет степень доктора философии в области компьютерных наук (за свои исследования в области компьютерной лингвистики и машинного обучения). Несколько медалей Международных олимпиад по информатике (IOI) и премию президента Болгарии “Джон Атанасов”. Он был по совместительству доцентом / тренером в Софийском университете. Новом Болгарском университете. Техническом университете Софии. Ngee Ann Polytechnic (Сингапур). Кингслендском университете (США) и некоторых других.

В настоящее время Светлин Наков вместе со своими партнерами руководит глобальной экспансией крупнейшего учебного центра для инженеров – программистов в Болгарии и регионе-Software University, где он вдохновляет и обучает сотни тысяч молодых людей информатике. Разработке программного обеспечения. Информационным технологиям и цифровым навыкам. А также дает им профессию и работу.

История этой Книги

Светлин Наков совместно с десятками соавторов создал и опубликовал в качестве open-source проектов (в период 2004-2018 гг.) десятки технических книг по компьютерному программированию и программным технологиям (см. http://www.introprogramming.info и http://www.nakov.com/books), большинство из которых на болгарском языке. В последние несколько лет Светлин переходит на английский язык и предпринимает глобальную инициативу обмена знаниями для лучшего и доступного технического образования, демонстрируя это созданием и распространением бесплатных технических книг. Бесплатных учебных пособий. Бесплатных технических вебинаров и семинаров. Конференций и многих других мероприятий.

Автор книги Светлин Наков занимается прикладной криптографией с 2005 года. Когда он опубликовал книгу Java for Digital Signing Documents of the WebПозже Наков занимается своей практикой в качестве инженера-программиста. Технического тренера и предпринимателя. Занимаясь криптографией, безопасностью программного обеспечения и блокчейн-системами. И его технические знания растут вместе с опытом. В 2018 году он решает написать бесплатную книгу поделиться своими знаниями о криптографии и криптоалгоритмах с точки зрения разработчика и передать эти знания мировому сообществу разработчиков. Книга занимает 3 месяца и выходит в свет в ноябре 2018 года. Вы можете получить бесплатную копию: https://cryptobook.nakov.com

Университет программного обеспечения (SoftUni)

Разработка этой книги осуществляется при поддержке Университета программного обеспечения (SoftUni)-крупнейшего и наиболее уважаемого учебного центра программной инженерии и цифровых навыков в Юго-Восточной Европе. Который дает высококачественное техническое образование. Практические навыки. Профессию и работу десяткам тысяч молодых людей.

SoftUni преподает инженеров-программистов в программе Software University, креатив и дизайн в программе SoftUni Creative, цифровой маркетинг в программе SoftUni Digital, программирование и технические навыки для детей в программе SoftUni Kids, руководит средней школой цифровых навыков SoftUni Svetlina и делится знаниями и навыками через Фонд SoftUni и его бесплатный образовательный портал SoftUni Free tech.

Зачем Еще Одна Книга по криптографии?

Большинство книг о криптографии на рынке написаны либо в слишком академическом стиле с большим количеством теории и математики. Либо устарели и не описывают криптографию. Используемую сегодня. Либо слишком малы, слабы по содержанию и незакончены. Другие лучше, но не являются бесплатными и доступными для всех.

Эта книга «Практическая криптография для разработчиков» пытается компенсировать все вышеперечисленные слабые стороны существующих на рынке книг по криптографии: она бесплатна, удобна для разработчиков, всеобъемлюща, с меньшим количеством математики и большим количеством примеров кода.

Академические книги по криптографии

На рынке существует много высококачественных академических книг по криптографии , и некоторые из них бесплатны, но я не могу рекомендовать такую книгу разработчику. Ему будет скучно. И он начнет ненавидеть криптографию после первой или двух глав. Некоторые примеры:

  • Одна из самых сильных академических книг по криптографическим концепциямАспирантский курс прикладной криптографииЭто отличная бесплатная книга о теоретической криптографии, но не для разработчиков. Он полон теории, концепций. Математики и формул. Он не предоставляет примеров кода или рекомендуемых библиотек для разработчиков. До настоящего времени (опубликовано в 2017 году).
  • Крипто 101бесплатная книга по криптографии, которая более понятна разработчикам. Он дает более простое объяснение основных криптографических концепций. Но без примеров кода и рекомендуемых библиотек и инструментов. До настоящего времени (опубликовано в 2017 году).
  • Руководство по прикладной криптографиислишком академично для разработчиков. Он доступен бесплатно и очень хорошо объясняет теорию и концепции криптографии. С большим количеством математики высокого уровня. Но он определенно не для разработчиков. Он не предоставляет рабочих примеров кода и не ссылается на наиболее используемые крипто-библиотеки в индустрии программного обеспечения. Несколько устарел (издан в 2001 году).
  • Еще одна хорошая учебная книга по криптографииПонимание криптографии: учебник для студентов и практиковОтличная книга по понятиям криптографии, хорошо организованная. С алгоритмами в псевдокоде. Но она не для разработчиков. Он не предоставляет примеры кода и рекомендуемые библиотеки для разработчиков. Почти до настоящего времени (опубликовано в 2010 году). Не бесплатно.
  • Еще одна научная книга по криптографическим концепциям: Практическая криптографияСодержит глубокие концепции и объяснения популярных криптоалгоритмов. А также псевдокод. Слегка устарел (опубликован в 2003 году).

Криптобиблиотеки и их документация

Некоторые криптографические библиотеки пытаются предоставить документацию с криптографическими концепциями и примерами кода, но они , как правило, ограничены, иногда незакончены и не всегда последовательно организованы. С большим количеством недостающих точек и могут помочь вам использовать определенную библиотеку. Но не являются лучшим источником для изучения криптографических концепций.

Тем не менее. Эти документы и руководства являются одним из лучших бесплатных учебных ресурсов для разработчиков . Которые хотят использовать криптоалгоритмы, особенно опытных инженеров с предыдущими знаниями и навыками в области криптографии. Примеры хорошей документации о криптоалгоритмах. Поставляемой вместе с некоторыми криптобиблиотеками:

  • Nettle Documentation — содержит очень хорошее описание наиболее популярных криптографических концепций и популярных алгоритмов (хэши, MAC. Симметричные шифры. Сигнатуры) наряду с надежной и быстрой реализацией языка Си.
  • Документация PyCA / Cryptography — содержит базовое описание многих криптографических примитивов (таких как хэши, MAC-коды. Симметричное шифрование. Аутентифицированное шифрование. Асимметричные алгоритмы. Обмен ключами. KDF и другие) наряду с примерами кода на Python, демонстрирующими. Как использовать API библиотеки pyca/cryptography и ее криптоалгоритмы.
  • Libsodium Documentation — объединяет документацию API с элементами криптографических концепций. Он привязан к языку C. Используемому для проекта Libsodium. Предоставляет примеры кода.
  • The Crypto++ Wiki — кратко объясняет некоторые концепции криптографии наряду с руководящими принципами использования библиотеки Crypto++ и классов C++. Реализующих определенные криптоалгоритмы. Приведены примеры примеров кода.
  • Botan — Developer’s Manual — это современная крипто-библиотека на языке C++. Которая поставляется с реализациями многих современных криптоалгоритмов. А также документацией. Включающей краткое описание лежащих в основе криптографических концепций.
  • Libgcrypt Manual — криптографическая библиотека. Написанная на языке Си в рамках проекта GnuPG. Поставляется с очень легким введением в понятия криптографии и скучной документацией API почти без образца кода.

Практическая криптография — Существующие Книги

Честно говоря. Я провел комплексное исследование книжного рынка (в ноябре 2018 года). Чтобы найти лучшие криптографические книги для разработчиков. Я был глубоко разочарован! Я почти не нашел хорошей практической книги по криптографии для программистов, которую мог бы порекомендовать другу-разработчику (не ученому или студенту университета) с уверенностью. Что эта книга действительно хороша и действительно нужна разработчикам: современная криптография + простые объясненные понятия + примеры кода. Я нашел очень хорошие академические книги и несколько книг для разработчиков (богатый примерами кода) либо с не очень высоким качеством. Либо очень ориентированный на определенную технологию (например. Справочник по API или руководство по библиотеке). Некоторые из них тоже были устаревшими. Но все еще ценными.

Бесплатные книги по криптографии для Разработчиков

Это список бесплатных книг по практической криптографии для разработчиков:

  • Practical Cryptography with Go (by Kyle Isom. Published 2015) — мини-книга о том. Как использовать криптографию с языком Go. Полная примеров кода. Он имеет бесплатное издание (читать онлайн) и платные издания (PDF. EPUB, MOBI). Книга хорошая. Но ее объем ограничен очень кратким описанием некоторых концепций и демонстрацией того. Как их использовать с примерами кода. Она охватывает современные симметричные шифры (такие как AES-GCM и XSalsa20-Poly1305). Деривацию ключей (PBKDF2 и Scrypt). Обмен ключами и ECDH. Цифровые подписи (ECDSA и Ed25519) и некоторые другие концепции.
  • The Laws of Cryptography with Java Code (by Neal Wagner. Published 2003) — учебник в академическом стиле по криптографии с рабочими примерами Java. Реализующими определенные криптоалгоритмы (например. Шифр AES и криптосистема RSA).
  • Cryptography in .NET Succintly (by Dirk Strauss, 2017) — компиляция примеров кода .NET об использовании некоторых криптографических примитивов. Таких как AES. Хэши и RSA-сигнатуры из C#. Это больше похоже на справочник по API. Чем на серьезную книгу. Объясняющую. Когда и как использовать упомянутые криптографические алгоритмы. Концепции лежащих в их основе криптосистем и специфику лежащих в их основе алгоритмов.

Несвободные книги по криптографии для разработчиков

Я мог бы перечислить несколько удобных для разработчиков книг по практической криптографии с примерами кода. Которые имеют только платные / коммерческие версии (без бесплатного издания). Большинство из них слишком глубоко привязаны к определенным технологиям. Таким как C, C++. Java или JavaScript. И не объясняют понятия хорошо. У других же фокус иной. Некоторые устарели. Некоторые совсем новые. Вот список того. Что я нашел в своих исследованиях о криптографических книгах. Удобных для разработчиков:

  • Серьезная криптография: Практическое введение в современное шифрование (автор Жан-Филипп Омассон) — сильная книга по криптографии. Которая сочетает академический подход с более практическим подходом. С некоторыми примерами кода на Python, но не для всех концепций. Недавнее (опубликовано в 2017 году). Объясняет современные криптографические концепции и крипто-костюмы. Такие как AES-GCM. ChaCha20-Poly1305 и квантовобезопасная криптография. Это, пожалуй. Лучшая книга из тех. Что я нашел.
  • Secure Programming Cookbook for C and C++ (by John Viega. Matt Messier) — содержит рекомендации по безопасному кодированию для разработчиков C++. В том числе темы из криптографии (хэши, MAC-коды. Симметричные шифры, RSA и DSA. Случайные числа). С примерами кода (опубликовано в 2009 году. Немного устарело).
  • Cryptography for Developers (by Tom Denis) — обеспечивает прочные основы криптографии и криптоалгоритмов. А также реализации на языке Си и ассемблере с большим количеством примеров кода. Написана в середине между академическим стилем и стилем разработчика. Охватывает хэши, HMAC, AES. Слегка RSA и ECC. Слегка устарел (опубликован в 2007 году).
  • Beginning Cryptography with Java (by David Hook) — справочник по JCA, JCE. JSSE и криптобиблиотеке Bouncy Castle с большим количеством примеров кода на Java (опубликован в 2005 году, устарел).
  • Cryptography for JavaScript Developers: Web Cryptography API. SJCL (by Anish Nath) — справочник . Полный примеров кода на JS, но не объясняющий таких понятий. Как симметричные шифры. Аутентифицированное шифрование и т.д. (опубликован в 2018 году).
  • Практическая криптография с Python (автор Сэмюэл Боун) — хорошая мини-книга (87 страниц, опубликованная в 2018 году) с большим количеством примеров кода на Python, но с очень ограниченным объемом: хэши, AES и RSA. Никаких сигнатур. Никаких эллиптических кривых. Никаких функций MAC и вывода ключей.
  • Криптография на C и C++ (автор Майкл Вельшенбах) — руководство по реализации криптоалгоритмов типа AES и RSA на C / C++. Никаких сигнатур. Никаких эллиптических кривых. Никаких функций MAC и вывода ключей. Опубликовано в 2005 году (устарело).

Отсутствие хорошей бесплатной практической книги о криптографии и криптоалгоритмах для разработчиков с примерами кода мотивирует меня еще больше поделиться своими знаниями и навыками в удобной для разработчиков книге по криптографии. Я счастлив быть одним из первых авторов. Опубликовавших качественную бесплатную книгу по практической криптографии для инженеров-программистов.

Что Охватывает эта Книга?

Эта книга охватывает наиболее важные современные криптографические концепции. Криптоалгоритмы и криптографические конструкции. Используемые в индустрии программного обеспечения. Хорошо иллюстрированные и демонстрируемые на рабочих примерах кода:

  • Криптографические хэш-функции: концепции, SHA-2, SHA-3, BLAKE2, RIPEMD160, примеры кода, коллизии
  • MAC-коды: концепции, HMAC, CMAK, UMAC. Приложения. Генераторы случайных чисел на основе MAC. Примеры кода
  • Ключевые функции деривации (KDF): концепции, от пароля до ключа шифрования, PBKDF2, Scrypt, Bcrypt, Linux crypt(), Argon2, примеры кода
  • Методы шифрования паролей: от открытого текста. Через хэширование. До современных безопасных KDFS. Таких как Argon2
  • Случайные числа и безопасные генераторы случайныхчисел : понятия, энтропия. Безопасные случайные числа, CSPRNG. Примеры кода
  • Методы обмена ключами: установление ключа и соглашение о ключе. Обмен ключами Диффи–Хеллмана (DHKE) и эллиптическая кривая Диффи–Хеллмана (ECDH) с примерами кода
  • Понятия шифрования: симметричные и асимметричные шифры. Секретные ключи. Симметричное шифрование. Схемы шифрования. Криптосистемы с открытым ключом. Частные и открытые ключи. Гибридное шифрование. Цифровые подписи
  • Современные симметричные ключевые шифры: концепции. Блочные шифры и потоковые шифры. Режимы блочных шифров (CBC, CTR, GCM). Шифр AES (Rijndael). Шифры Salsa20 / ChaCha20 с примерами кода
  • Симметричные конструкции шифрования: аутентифицированное шифрование. AES-256-GCM. ChaCha20-Poly1307, AES-256-CTR-HMAC. С примерами кода
  • Асимметричные ключевые шифры и криптосистемы с открытым ключом: криптосистема RSA (пары ключей RSA. Шифрование. Дешифрование). ECC (криптография с эллиптической кривой. Точки EC и умножение. Именованные кривые). ECDH (обмен ключами с эллиптической кривой Диффи–Хеллмана). Примеры кодов
  • Эллиптические кривые: широко используемые именованные кривые, такие как secp256k1, P-256, P-521, Curve25519, Curve448-Goldilocks. С примерами кода
  • Интегрированные схемы шифрования: сочетание криптографии с открытым ключом с симметричными алгоритмами шифрования. Гибридная схема шифрования ECIES с примерами кода
  • Алгоритмы цифровой подписи: концепции. Подписывание сообщений. Проверка подписей. Подписи RSA. ECDSA и EdDSA
  • Квантовобезопасная криптография: какие классические криптосистемы являются квантовобезопасными. А какие-квантовобезопасными. Квантовобезопасные сигнатуры и квантовобезопасные алгоритмы обмена ключами, SPHINCS+. NewHope и другие. С примерами кода
  • Другие криптографические концепции: цифровые сертификаты. TLS (Transport Layer Security). Одноразовые пароли (OTP). Внешняя аутентификация и OAuth
  • Криптобиблиотеки и пакеты для разработчиков: криптография на JavaScript. C#, Python, C и C++
  • Множество примеров кода и упражнений. Следующих за каждым основным разделом

Почему для примеров используется Python?

Python-один из самых простых языков, язык. Который читаем и понятен всем разработчикам (даже разработчикам. У которых нет никакого опыта работы с ним). Идея примеров кода состоит в том. Чтобы проиллюстрировать криптоалгоритмы. Схемы шифрования и другие концепции криптографии в действии. А не продвигать определенную библиотеку, API. Язык или технологию.

Используйте примеры кода только как справочные. Как руководство по тому. Как ваш код может выглядеть. И адаптируйте их к вашему любимому языку и фреймворку. Не копируйте и не вставляйте примеры кода напрямую. Иногда мы используем библиотеку. Которая более удобна для пользователя и проста в установке и использовании. Вместо более быстрой и надежной библиотеки от другого поставщика. Иногда мы используем шестнадцатеричные ключи. Шифротексты. Подписи и другие значения. Чтобы облегчить их отображение на консоли. Но на практике большинство приложений используют двоичные кодировки для повышения производительности и снижения накладных расходов сети.

Вы можете свободно перенять примеры кода на другие языки. В конце книги мы привели примеры использования криптографии в самых популярных языках программирования: JavaScript, C#, Java и Python. Мы пропускаем примеры с языками более низкого уровня. Такими как C и C++, потому что они лучше работают для авторов библиотек (для эффективной реализации определенного алгоритма). А не для разработчиков приложений. C и C++ более сложны в настройке и сборке. Требуют больше усилий для управления зависимостями проекта и более подвержены ошибкам.

Большинство разработчиков приложений (например. Web-разработчики. Back-end разработчики. Мобильные разработчики и front-end разработчики) используют языки более высокого уровня (например. JS, Python. C#, PHP и Go). Но все они поймут код Python из примеров. Если бы код был дан на языке Си. Он был бы длиннее. Сложнее и менее читабелен.

Python широко поддерживается везде (в Linux. Windows, Mac. На мобильных устройствах и микроконтроллерах). Все примеры также могут выполняться онлайн на виртуальной машине в сетевых средах Python, таких как: Repl.it и Пифон-везде.

Как читать Эту Книгу?

Рекомендуемый способ чтения-тема за темой (от начала до конца). Вы можете пропустить главы и разделы. Которые вам не нравятся. Ноожалуйста. Пройдите через них. Потому что содержание имеет внутренние зависимости.

Играйте с примерами кода: запускайте их. Модифицируйте, ломайте. Исследуйте и экспериментируйте с кодом и учитесь, играя.

Попробуйте решить практические упражнения в главе. Разработчики учатся лучше всего. Написав код, и это то. Что я рекомендую. Вам даны хорошо описанные задачи упражнений. С четким вводом и выводом. Хорошо охватывающие содержание после каждого основного раздела.

Теперь начните свое путешествие разработчика в современную практическую криптографию. Наслаждайтесь книгой!