МЕНЮ

Основы криптографии для начинающих. Алгоритмы и методы шифрования данныхZip File, мамкины хаЦкеры. В прошлом видео, мы с вами закрыли вопрос, касающийся моделирования угроз. Если вдруг пропустили урок – кликайте на подсказку в углу и смотрите. Ну а сегодня, речь пойдёт о криптографии. Науке о защите информации с помощью методов, направленных на обратимые преобразования данных, после которых эти данные бесполезными для незаконных пользователей. Иными словами, криптография занимается поиском методов, позволяющих безопасно передавать информацию от одного человека к другому не опасаясь, что эту информацию скомпрометируют третьи лица.

Собственно эта тема является обязательной, для каждого безопасника. Ибо криптография – это, по сути, единственный способ защитить информацию (а именно её конфиденциальность и целостность) при передаче
по открытым каналам.

А во времена практически повсеместной удалёнки среди айтишников – это сами понимаете, очень насущный вопрос. Поэтому давайте поскорее в нём разберёмся. Погнали.

Хранение информации

Начнём с базовых вводных для тех из вас, кто прогуливал информатику. Любая информация у нас хранится в битах и состоит их нулей и единиц. На физическом уровне это два состояния: есть напряжение и нет напряжения.

После битов идут байты. Один байт содержит в себе 8 бит. И так уж вышло, что над этими нулями и единицами можно производить не только математические преобразования (аля сложение, умножение), но и логические.

Согласно таблице истинности, результатом операции XOR в случае, если X и Y равно нулю, будет ноль. Если же одна из перечисленных переменных будет положительной, то и результат тоже будет являться таким.

Это всё более-менее логично. Но тут важно запомнить, что если и X и Y будут положительными, то результат операции XOR будет ноль. Окей. Давайте покажу, зачем это нужно на практике.

Самый простейший пример — это Шифр Вернама. Сразу оговорюсь, что это лишь теоретический шифр. Его не используют на практике ввиду, его низкой криптоустойчивости.

Но для понимания общего принципа он более чем подходит. Смотрите. У нас есть сообщение ВАНЯ. И каждая буква соответствует числу из десятеричной системы.

Если не втыкаете о чём речь, погуглите что такое АСКИ-таблица. Эту тему обычно проходят на информатике в 6 классе, поэтому углубляться в неё в рамках уроках для спецов по ИБ ну как-то не комильфо.

Так вот. Соответственно, как каждой букве соответствует число в десятичном исчислении, так и каждому числу из десятичной системы, соответствует число в двоичной. Тоже опять же, проходится в школе.

Ключ к нашему сообщению будет ТОК. И гамма, в случае со словом ВАНЯ равна 4 символам. Т добавляется в конец, как начальная буква ключа. Соответственно гамму мы тоже прогоняем через АСКИ-таблицу.

Ну а дальше мы каждый двоичный символ в соответствии с таблицей истинности преобразуем операцией XOR. Единичка соответствует единичке, значит результат ноль и т.д. до конца бинарного кода.

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

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

Как-то так. При этом, понятное дело, что в современных системах двоичный код не используется в качестве основного. Ввиду больших объёмов обрабатываемой информации гораздо удобнее использовать шестнадцатеричный способ для записи.

Основы криптографии

Криптография обеспечивает 3 свойства передаваемой информации. Конфиденциальность, целостность и, внимание, новое понятие, подлинность. Под подлинностью понимают соответствие информации ее описанию.

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

И второе понятие, необходимое для понимания принципов, это ключ. Ключ – это параметр шифра, обеспечивающий выбор одного преобразования из
множества возможных в рамках данного шифра.

Схематически криптографическая система работает следующим образом. Есть некое открытое сообщение. С помощью ключа мы производим его шифрование. Затем это сообщение передаётся по открытому незащищённому каналу.

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

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

Так, например, всем известный брутфорс, он же грубый подбор, является классическим способом криптоанализа. Он, правда, не шибко интеллектуальный, как и, собственно, и те, кто его использует, но всё таки способ.

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

История криптографии

Поговорим немножко об истории криптографии. Сам таймлайн можно поделить на такие этапы, как «Древний мир», «Средние века», «Мировые войны» и «Современная криптография».

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

Т.е. кожаный ремешок – это шифр, а палка-шестригранник ключ. Устойчивость ко взлому правда довольно низкая, но учитывая, что даже в наше время, мало кто способен выточить такой шестригранник из палки – этого было достаточно.

В случае с дощечками с дырочками всё чуть более заморочено. Тут каждому отверстию соответствует какая-то буква из сообщения. А шнурок отвечает за то, в каком порядке это самое сообщение нужно читать.

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

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

На следующей итерации у нас уже появляются различные шифры сдвига. Такие как шифр Цезаря, АТБАШ. В случае с Цезарем, алфавит сдвигается на несколько символов и таким образом для дешифровки вам нужно лишь понять на какое количество произошёл сдвиг.

АТБАЖ это еврейский шифр, придуманный в древнем Израиле. Суть его в том, что алфавит зеркально переворачивался. А становилась Я, Б – Ю, и т.д. Поистине гениально. Ни один гой до этого сто пудов не додумался.

Однако гои придумали, кое-что лучше. А именно, частотный криптоанализ. Суть его заключается в том, что согласно статистике одни буквы встречаются гораздо чаще других. Т.е. «О», «Е», «А», встречаются значительно чаще чем твёрдый знак.

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

С криптоанализом боролись путём изменения места символа в каждом последующем сообщении. В примере буква «А» в первом сообщении соответствует позиции «311», во втором «357», в шестнадцатом – «495».

Также в средние века появляются так называемые «Черные кабинеты». Они же дешифровальные органы в разных странах Европы, а затем и в США. В этих кабинетах вскрывали и расшифровывали почтовую корреспонденцию.

В 19-м веке Керкгофсс сформировал ряд принципов по передаче зашифрованных сообщений. Большинство из них в наше время конечно утратили свою актуальность, но главный остаётся неизменным.

Система не должна требовать секретности на случай, если она попадёт в руки врага. Т.е. шифр может быть перехвачен. И даже метод шифрования может быть определён на вражеской стороне. Самое главное, чтобы ключ не был скомпрометирован.

В 20-м веке, в эпоху Мировых войн криптография, благодаря поддержке со стороны государств развивается ещё больше. Появляется абсолютно стойкий шифр Вернама. Стойкий по причине равенства длины ключа и длины сообщения.

Помимо этого, были разработаны «Симпатические чернила». Напишите в комментарии, как на ваш взгляд, они применялись и по аналогии с каким способом их можно использовать?

Если раньше никогда не слышали про это явление, то погуглите. Ничего зазорного в развитии таким образом нет. Лучше не знать и спросить, чем услышать, осознать, что не понимаешь и забить.

Во второй мировой применялась машина Enigma. Рекомендую посмотреть фильм «Игра в имитацию», если хотите более подробно погрузиться в тему криптографии тех времён.

С середины XX века активно развивается современная математическая криптография и появляются все те шифры, которые лежат в основе в том числе современных алгоритмов.

Например, по Шеннону, требования к криптостойкости предъявляются следующие:

● Ключ генерируется для каждого сообщения только один раз;

● Ключ статистически надёжен;

● Длина ключа должна быть равна или больше длины сообщения;

● И исходный текст обязательно должен обладать некоторой избыточностью.

Классификация и термины

История — это конечно хорошо, но давайте вернёмся к нашим реалиям и рассмотрим ещё несколько терминов, с которыми ежедневно сталкиваются все специалисты по безопасности.

Как уже понятно, криптографические алгоритмы могут содержать один или несколько ключей, а также быть попросту без ключа.

В последнем случае будет применяться хэширование, т.е. необратимое преобразование. В ситуации с одним ключом применяют симметричное шифрование, которое делится на блочное и поточное.

А в случае с несколькими – ассиметричное и ЭЦП. Основная идея ассиметричного шифрования в том, что из закрытого ключа получить открытый ключ можно, а из открытого закрытый уже нельзя.

К преимуществам асимметричного шифрования относят то, что в нём:

● решена проблема распределения ключей;

● и ключей в принципе не так много, как при симметричном шифровании

Из недостатков можно выделить то, что:

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

● оно существенное медленнее чем симметричное шифрование;

● его сложнее реализовать аппаратно;

● и нужно всегда защищать открытые ключи от подмены.

При поточном шифровании шифруется каждый отдельный бит или символ по очереди. Данный подход использовался еще до появления электроники. Шифры сдвига а ля Цезаря типичный тому пример.

Блочное шифрование – это когда информация разбивается на блоки (несколько символов) и каждый блок шифруется по отдельности. Фишка в том, что для каждого блока можно придумать свою таблицу замены, что в разы усложняет задачу по дешифровки для злоумышленника.

Ну и ЭЦП. Она же электронная подпись, представляет собой реквизит
электронного документа, который используется для подтверждения авторства и целостности документа.

В такой подписи используют 2 ключа. Один секретный ключ используется для “подписи” документа, а открытый – для проверки этой самой подписи на валидность.

И ещё один важный термин – хеширование. Это преобразование информации неограниченной длины в значение фиксированной
длины или проще говоря хеш.

Примеры вы видите на экране. Многие из вас впервые столкнулись с хешем, когда качали пиратские игры с торрентов. Так что тут мои комментарии, пожалуй, излишни.

Разве что попрошу написать вас в комментах, для защиты какого качества защищенной информации может применяться хеширование? Уверен вы догадались.

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

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

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

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

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

Если понравился ролик – то обязательно подставьте лайк сразу после просмотра и не забудьте жмякнуть на колокольчик, если по каким-то религиозным причинам ещё не сделали этого ранее.

Кстати, в описании к видео есть ссылка на домашнее задание к сегодняшнему уроку в котором вам предстоит произвести дешифровку пароля зная лишь его хеш с помощью утилиты HashCat. Не поленитесь и потренируйтесь вечерочком. Практика – наше всё.

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

Так что обязательно подпишитесь, чтобы не пропустить. Ну а на сим, у меня нынче всё. С вами, как обычно, был Денчик. До новых встреч, мои кайфные друже. Всем пока.

 

Не можешь понять, куда делись видео по взломам и хакингу? Они переехали в наш уютный паблик в телеге

telegram chanel

Хочешь больше контента? Подписывайся на YouTube-канал!

Курс «Диплом за неделю»

Пособие «Библия вардрайвинга»

Курс Cisco «CCNA: Introduction to Networks»

© 2024. IT-спец. Денис Курец.