Что такое криптография простыми словами для чайников
Что такое криптография и как она работает?
Сегодня интернет стал важной частью жизни любого человека. Весь мир — как один щелчок. Мы полагаемся на интернет для различных целей, таких как оставаться на связи с друзьями, оплачивать счета в интернете, получать электронные письма для работы. Более того, использование интернета сделало нашу жизнь проще, чем когда-либо. Безусловно, интернет открыл двери для многих возможностей, однако, открытые двери сделали наши устройства уязвимыми для кибератак и других угроз. В этой статье мы поговорим о криптографии. Что это такое и чем она полезна мы расскажем ниже.
Что такое небезопасная среда?
При отправке ваших данных интернет разбивает их на пакеты для доставки до места назначения. Чтобы обеспечить безопасность этих данных, они не отправляются непосредственно в пункт назначения. Пакеты используют многочисленные пути для защиты данных от злоумышленников и трекеров. Кибер-злоумышленники пытаются прочитать эти данные и проникнуть в них, поскольку они доступны в читаемом и удобном формате.
Таким образом, этот простой и читабельный формат является тем, что дает преимущество хакерам, и они могут получить доступ к вашим конфиденциальным данным с легкостью.
Как обезопасить свои данные?
Чтобы обеспечить надежную защиту и передачу данных другой стороне, важно предотвратить вторжение злоумышленников и их действия. Поскольку злоумышленники нам неизвестны и значит их невозможно остановить от доступа к информации, тогда необходимо убедиться, что формат данных не читаем и зашифрован. Процесс, делающий данные нечитаемыми, называется криптографией.
Что такое криптография?
Криптография — это греческое слово, которое означает «тайное письмо». Это искусство и наука преобразования сообщения в защищенную форму, которая невосприимчива к кибератакам. По сути, это метод обеспечения конфиденциальности сообщения путем внедрения процесса шифрования и расшифровки.
Другими словами, криптография позволяет вам сохранять конфиденциальные данные и передавать их через интернет (незащищенные сети), поэтому они становятся нечитаемыми для всех, кроме предполагаемой стороны.
На видео: Что такое криптография?
Как это работает?
Что такое обычная криптография?
Обычная криптография работает с симметричным шифрованием и секретным ключом, где один из ключей используется для шифрования, а другой-для расшифровки. DES является отличным примером обычной криптосистемы, которая активно используется федеральным правительством.
Что такое сильная криптография?
Существует два типа криптографии: слабая и сильная. Слабая криптография — это когда вы не даете своим друзьям доступ к вашим сообщениям. При этом, когда вы защищаете свои данные от правительства, то это сильная криптография. Это скрытая и зашифрованная связь, которая полностью защищена от криптографического анализа и расшифровки. Целью сильной криптографии является обеспечение того, чтобы данные считывались только для предполагаемого получателя.
Сильная криптография в основном используется правительствами для защиты своей информации и сообщений. Однако во многих странах обычные люди также могут воспользоваться преимуществами сильной криптографии.
Каковы основные функции криптографии?
Существует пять основных и первичных функций криптографии.
На видео: Принципы шифрования и криптографии. Расшифруйте послание!
Основы криптографии: от математики до физики
Авторизуйтесь
Основы криптографии: от математики до физики
Основы криптографии включают шифры, специальную терминологию и отдельные компоненты криптосистемы. Сегодня эта наука тесно связана с информационной безопасностью.
Примечание Вы читаете улучшенную версию некогда выпущенной нами статьи.
Задачи, которые решает криптография:
Популярные шифры
Чтобы понять основы шифрования, необходимо обратиться к популярным примерам.
Квадрат Полибия
Квадрат Полибия — шифр простой замены. В данном примере будет использоваться двумерная матрица 6х6, содержащая заглавные буквы алфавита и цифры от 0 до 9:
С матрицей 6х6 (36 буквенно-цифровых знаков) мы можем начать замену. Например, буква «А» имеет адрес 1х1 или x=1, y=1. Эту запись можно упростить до 11. Другой пример: адрес буквы «N» будет 2х3 или x=2, y=3 или 23.
Шифр может сделать достаточно длинным и сложным, используя прописные буквы и специальные символы. Также повторение символов и написание алфавита вразброс может дать непредсказуемый результат, устойчивый для метода полного перебора.
Шифр Цезаря
Шифр Цезаря считается самым первым. Цезарь использовал его для кодирования сообщений своим генералам, чтобы враги из Римской Империи не смогли прочитать приказы при перехвате. Шифр Цезаря имеет элементарную форму шифрования, и сегодня его легко взломать: алфавит просто сдвигается вправо или влево. Разные значения сдвига приводят к разным результатам шифровки. Число сдвига — это число букв, на которое происходит смещение в одну из сторон, для создания шифротекста.
Пример использования шифра со сдвигом влево на 3:
Шифротекст выше может быть легко взломан методом полного перебора, который заключается в сдвиге в одну из сторон на одну позицию, пока не получится какое-то смысловое сообщение.
Прим. пер. Существует более простой способ взлома шифра Цезаря — частотный анализ. Он заключается в подсчёте частоты встреч каждого символа в любом обычном тексте и в шифротексте. Потом символы с похожими частотами заменяются. Например, если в шифротексте чаще всего встречается буква «T», то она заменяется на букву «Е» для английского алфавита. Этот способ действует только для текстов свыше 300 символов.
Квадрат Виженера
Это усовершенствованный шифр Цезаря с разными значениями сдвига. Например, к первой букве сообщения применяется преобразование ROT5, ко второй — ROT16, etc.
Также у нас есть статья, из которой вы узнаете о самых популярных кодах и шифрах.
Полиморфизм
Основы шифрования и криптографии включают в себя полиморфизм. Это более продвинутая практика в криптографии и часто используется в техниках компьютерного шифрования. Такая техника, которая самостоятельно модифицирует криптоалгоритм после каждого выполнения, и на каждой итерации получаются разные результаты. Если понадобится зашифровать одну и ту же информацию два раза, то алгоритм выдаст разные шифротексты.
Распространённые алгоритмы
Сегодня шифры используют алгоритмы либо с секретным, либо с публичным ключом. В шифрах с закрытым ключом используется единственный ключ, которым обмениваются стороны. Такой ключ или шифр также называют симметричным.
В 1949 году Клод Шеннон из Bell Laboratories опубликовал фундаментальную теорию, положившую начало симметричному шифрованию, а десятилетия эволюции принесли примеры высокого качества. Однако только в 1975 году мощный алгоритм с закрытым ключом DES стал доступен для общего пользования.
Шифрование с помощью открытого ключа или асимметричное шифрование также возникло в середине 1970-х. Асимметричные шифры используют пару ключей — открытый, им делятся с другими людьми, и соответствующий ему закрытый, пользователь должен хранить его в секрете от других.
Стойкость шифровального алгоритма зависит от трёх важных факторов:
Виды алгоритмов
DES выдержал испытание временем и вошёл в основы криптографии. После четверти века исследований учёным удалось найти несколько спекулятивных атак, которые в конечном итоге не были столь эффективными, как метод полного перебора. Единственная реальная слабость DES-шифра — маленькая длина ключа в 56 бит.
Triple DES (3DES) — модификация DES, позволяющая увеличить длину ключа до 112 или 168 бит.
AES (Advanced Encryption Standard или Rijndael) поддерживает три длины ключа: 128, 192 и 256 бит. Использует 128-битный размер блоков. Считается стойким и используется по всему миру.
Алгоритм шифрования Rijndael (AES)
Так как DES был специально разработан для аппаратного обеспечения, то не было предусмотрено, чтобы он эффективно работал в ПО. NIST протестировал работу алгоритма AES в программной среде и разработал требования к хранению криптоматериала, чтобы гарантировать, что AES будет эффективно работать на C и Java, которые используются на рабочих станциях, а также в более ограниченных средах встроенных процессоров ARM и смарт-карт.
Архитектура AES основана на принципе, известном как замена и перестановка, и быстро работает как в программном, так и на аппаратном уровнях. В отличие от своего предшественника — DES, AES не использует сеть Фейстеля.
Длина ключа, используемого для шифрования AES, указывает на количество повторений раундов преобразования, которые преобразуют входной сигнал, называемый исходным текстом, а конечный вывод — шифротекстом. Число циклов повторения выглядит следующим образом:
Каждый раунд состоит из нескольких этапов обработки. Набор обратных повторений применяется для преобразования шифротекста в исходный текст с использованием того же самого ключа шифрования.
Квантовая криптография
Это уже не совсем основы криптографии, а более продвинутый уровень.
На приведённой диаграмме квантовое распределение ключей (протокол BB84), являющееся безопасным способом связи, который реализует криптографический протокол с участием компонентов квантовой механики. Он позволяет двум сторонам создавать общий закрытый ключ, известный только им.
Новое поколение криптографии будет основываться не на математике, а на физике. Учёные в области физики атомов и частиц уже вошли в мир основ криптографии и хотят использовать законы квантовой механики для отправки сообщений, которые невозможно взломать. Они основоположники новой науки — квантовой криптографии.
Что такое криптография и как применяется в криптовалюте
Изучая криптовалюты, однажды вы неизбежно наткнётесь на термин «криптография». В интересующей нас сфере криптография имеет множество функций. В их числе — защита данных, использование в составлении паролей, оптимизация банковской системы и т.д. В этой статье мы познакомим вас с основами криптографии и обсудим её значение для криптовалют.
История криптографии
Криптография — это метод безопасного сокрытия информации. Чтобы раскрыть информацию, читателю необходимо знать, каким образом информация была изменена или зашифрована. Если сообщение было качественно зашифровано, прочитать его смогут только отправитель и получатель.
Криптография отнюдь не нова, она существует уже тысячи лет. Исторически криптография использовалась для отправки важных сообщений, чтобы скрыть их от лишних глаз. Первые криптографические сообщения были найдены у древних египтян, однако подтверждённое использование шифров в стратегических целях относится к эпохе Древнего Рима.
По словам историков, Юлий Цезарь использовал криптографию и даже создал так называемый шифр Цезаря, чтобы отправлять секретные сообщения высокопоставленным генералам. Этот метод защиты конфиденциальной информации от нежелательных глаз использовался вплоть до новейшей истории.
Во время Второй мировой войны немцы использовали машину шифрования «Энигма», чтобы передавать важную информацию. Алан Тьюринг, математический человек и гений, в чью честь впоследствии был назван тест Тьюринга, нашёл способ её взломать. Сейчас взлом «Энигмы» считают одним из основных переломных моментов во Второй мировой.
Основы криптографии
Вышеупомянутый шифр Цезаря — один из простейших способов шифрования сообщений, полезный для понимания криптографии. Его также называют шифром сдвига, поскольку он заменяет исходные буквы сообщения другими буквами, находящимися в определённой позиции по отношению к первичной букве в алфавите.
read everything on invest in blockchain
uhdghyhubwklqjrqlqyhvwlqeorfnfkdlq
Это самый простой пример использования криптографии, однако на похожей логике строится и любой другой метод. Существует сообщение, которое секретно для всех, кроме заинтересованных сторон, и процесс, направленный на то, чтобы сделать это сообщение нечитаемым для всех, кроме отправителя и получателя. Этот процесс называется шифрованием и состоит из двух элементов:
Шифр — это набор правил, которые вы используете для кодирования информации. Например, сдвиг на X букв в алфавите в примере с шифром Цезаря. Шифр не обязательно должен быть засекречен, потому что сообщение можно будет прочитать только при наличии ключа.
Таким образом, многие люди могут иметь доступ к одному и тому же шифру, но без ключа они всё равно не смогут его взломать.
Процесс передачи секретного сообщения идёт следующим образом:
Эволюция криптографии
Сообщения шифруются для защиты их содержимого. Это подразумевает, что всегда будут стороны, заинтересованные в получении данной информации. Поскольку люди так или иначе достигают успехов в расшифровке различных кодов, криптография вынуждена адаптироваться. Современная криптография далеко ушла от обычного смещения букв в алфавите, предлагая сложнейшие головоломки, которые решать с каждым годом всё труднее. Вместо банального смещения буквы теперь могут заменяться на числа, другие буквы и различные символы, проходя через сотни и тысячи промежуточных шагов.
Цифровая эпоха привела к экспоненциальному увеличению сложности шифрования. Это связано с тем, что компьютеры принесли с собой резкое увеличение вычислительной мощности. Человеческий мозг по-прежнему остаётся самой сложной информационной системой, но, когда дело доходит до выполнения вычислений, компьютеры намного быстрее и могут обрабатывать гораздо больше информации.
Криптография цифровой эры связана с электротехникой, информатикой и математикой. В настоящее время сообщения обычно шифруются и дешифруются с использованием сложных алгоритмов, созданных с использованием комбинаций этих технологий. Однако, независимо от того, насколько сильным будет шифрование, всегда будут люди, работающие над его взломом.
Взлом кода
Вы можете заметить, что даже без ключа шифр Цезаря не так сложно взломать. Каждая буква может принимать только 25 разных значений, а для большинства значений сообщение не имеет смысла. С помощью проб и ошибок вы сможете расшифровать сообщение без особых усилий.
Взлом шифрования с использованием всех возможных вариаций называют брутфорсом (bruteforce, англ. — грубая сила). Такой взлом предполагает подбор всех возможных элементов до тех пор, пока решение не будет найдено. С увеличением вычислительных мощностей брутфорс становится всё более реалистичной угрозой, единственный способ защиты от которой — увеличение сложности шифрования. Чем больше возможных ключей, тем сложнее получить доступ к вашим данным «грубой силой».
Современные шифры позволяют использовать триллионы возможных ключей, делая брутфорс менее опасным. Тем не менее утверждается, что суперкомпьютеры и в особенности квантовые компьютеры вскоре смогут взломать большинство шифров посредством брутфорса из-за своих непревзойдённых вычислительных мощностей.
Как уже говорилось, расшифровка сообщений со временем становится всё труднее. Но нет ничего невозможного. Любой шифр неотъемлемо связан с набором правил, а правила в свою очередь могут быть проанализированы. Анализом правил занимается более тонкий метод дешифровки сообщений — частотный анализ.
С колоссальным усложнением шифров в наши дни эффективный частотный анализ можно осуществить только с использованием компьютеров, но это всё ещё возможно. Этот метод анализирует повторяющиеся события и пытается найти ключ, используя эту информацию.
uhdghyhubwklqjrqlqyhvwlqeorfnfkdlq
Криптография и криптовалюты
Большинство криптовалют служат совершенно другим целям, нежели отправка секретных сообщений, но, несмотря на это, криптография играет здесь ключевую роль. Оказалось, что традиционные принципы криптографии и используемые для неё инструменты имеют больше функций, чем мы привыкли считать.
Наиболее важные новые функции криптографии — это хеширование и цифровые подписи.
Хеширование
Хеширование — это криптографический метод преобразования больших объёмов данных в короткие значения, которые трудно подделать. Это ключевой компонент технологии блокчейн, касающийся защиты и целостности данных, протекающих через систему.
Этот метод в основном используется для четырёх процессов:
Цифровые подписи
Цифровая подпись в некотором смысле представляет собой аналог вашей реальной подписи и служит для подтверждения вашей личности в сети. Когда речь заходит о криптовалютах, цифровые подписи представляют математические функции, которые сопоставляются с определённым кошельком.
Таким образом, цифровые подписи — это своего рода способ цифровой идентификации кошелька. Прилагая цифровую подпись к транзакции, владелец кошелька доказывает всем участникам сети, что сделка исходила именно от него, а не от кого-либо другого.
Цифровые подписи используют криптографию для идентификации кошелька и тайно связаны с общедоступным и приватным ключами кошелька. Ваш общедоступный ключ — это аналог вашего банковского счёта, в то время как приватный ключ — ваш пин-код. Не имеет значения, кто знает номер вашего банковского счета, потому что единственное, что с ним смогут сделать, — это внести деньги на ваш счёт. Однако, если они знают ваш пин-код, у вас могут возникнуть реальные проблемы.
В блокчейне приватные ключи используются для шифрования транзакции, а открытый ключ — для дешифровки. Это становится возможным, потому что отправляющая сторона отвечает за транзакцию. Передающая сторона шифрует транзакцию своим приватным ключом, но её можно дешифровать с помощью открытого ключа получателя, потому что единственное назначение этого процесса заключается в верификации отправителя. Если открытый ключ не срабатывает при дешифровке транзакции, она не выполняется.
В такой системе открытый ключ распространяется свободно и тайно соотносится с приватным ключом. Проблемы нет, если открытый ключ известен, но приватный ключ всегда должен находиться в тайне. Несмотря на соотношение двух ключей, вычисление приватного ключа требует невероятных вычислительных мощностей, что делает взлом финансово и технически невозможным.
Необходимость защиты ключа — основной недостаток этой системы. Если кому-то станет известен ваш приватный ключ, он сможет получить доступ к вашему кошельку и совершать с ним любые транзакции, что уже происходило с Bloomberg, когда один из ключей сотрудников был показан по телевизору.
Заключение
Криптография в блокчейне имеет множество разных уровней. В этой статье рассматриваются только основы и общие принципы использования криптографии, однако этот вопрос куда глубже, чем может показаться на первый взгляд.
Важно понимать взаимосвязь между криптографией и технологией блокчейн. Криптография позволяет создать систему, в которой сторонам не нужно доверять друг другу, так как они могут положиться на используемые криптографические методы.
С момента своего появления в 2009 году криптографическая защита блокчейна биткоина выдержала все попытки подделки данных, а их было бесчисленное множество. Новые криптовалюты реализуют ещё более безопасные методы криптографии, некоторые из которых даже защищены от брутфорса квантовых процессоров, то есть предупреждают угрозы будущего.
Без криптографии не могло быть биткоина и криптовалют в целом. Удивительно, но этот научный метод, изобретённый тысячи лет назад, сегодня держит наши цифровые активы в целости и сохранности.
Криптография для абсолютных новичков
Мы живем в пост-сноуденовском мире. И для многих следствием из этого является то, что ни один из ваших цифровых активов не защищен от слежки. Однако есть способы пользоваться интернетом с применением безумных математических методов таким образом, чтобы никто больше не мог видеть, что вы отправляете кому бы то ни было. Я постараюсь подробно объяснить, как это все работает.
Не стесняйтесь пролистать теоретическую часть, если захотите просто поиграться с PGP-шифрованием в конце статьи.
Криптография – это древняя математическая наука. Изначально она использовалась в военных коммуникациях и предназначалась для сокрытия содержания сообщения на случай, если оно попадет в руки врага. Последние достижения в области криптографии добавили новые возможности ее использования, включая механизмы аутентификации пользователей в сети, обеспечения целостности передаваемой информации и предотвращения отказа пользователей от авторства переданных ими сообщений.
Сегодня шифрование является неотъемлемой частью многих инструментов и протоколов, используемых нами для защиты безопасности повседневных транзакций и онлайн-коммуникаций. Шифрование может использоваться на физическом уровне интернета для скремблирования (обратимого искажения) данных, передаваемых по кабелю или беспроводной связи. Оно добавляет поддержку безопасных коммуникаций для простых текстовых протоколов – таких как Hypertext Transfer Protocol (HTTP), позволяющий просматривать веб-страницы – и может защитить целостность данных, передаваемых через такие приложения, как электронная почта и мобильные мессенджеры. Можно также шифровать данные на мобильных устройствах или компьютерах, защищая от несанкционированного доступа локальные копии электронных писем, текстовых сообщений, документов и фотографий.
То, как и на каком уровне зашифрованы ваши данные, имеет огромное значение. Само по себе то, что продукт или услуга использует шифрование, вовсе не обязательно означает, что все, что хранится на этой платформе или передается посредством ее, является полностью конфиденциальным. Например, Google теперь по умолчанию использует для всего трафика Gmail протокол HTTPS (HTTP по зашифрованному соединению), что предотвращает несанкционированный доступ к электронным письмам во время их передачи между почтовыми серверами Google и компьютерами конечных пользователей, однако это не мешает самому Google получать доступ к текстовым копиям этих писем. Если вы не хотите, чтобы ваш провайдер электронной почты мог читать ваши сообщения, вам придется предпринять дополнительные шаги для реализации сквозного шифрования, то есть системы, в которой «сообщения шифруются таким образом, что расшифровать их может только получатель». При сквозном шифровании содержимое сообщения шифруется на локальном компьютере или устройстве. Затем эти данные в виде зашифрованного текста передаются поставщиком электронной почты предполагаемому получателю, который является единственной стороной, которая может расшифровать их и прочитать исходное сообщение.
Действительно ли все правоохранительные органы и американское правительство против шифрования?
Необязательно. Сотрудники правоохранительных органов и разведки часто говорят, что они ценят преимущества шифрования, когда речь идет о защите данных от таких угроз, как хакеры или иностранные правительства. Однако они хотят иметь возможность доступа к зашифрованным данным – особенно к коммуникациям между людьми – в интересах проводимых ими расследований.
Как шифрование защищает мои данные?
Алгоритмы шифрования используют математику для « скремблирования » данных, чтобы они не могли быть прочитаны посторонним лицом — например, хакером или правительственными службами.
Данные могут быть зашифрованы в двух местах: во-первых, они могут шифроваться при передаче – например, когда вы отправляете информацию из своего браузера на веб-сайт. Во-вторых, данные могут шифроваться, когда они находятся «в состоянии покоя» – например, когда они хранятся на компьютере или на сервере.
Данные, которые могут быть прочитаны и поняты без каких-либо специальных мер, называют «открытым (или простым) текстом». Методы маскирования открытого текста таким образом, чтобы скрыть его содержание, называются шифрованием. Результатом шифрования открытого текста является нечитаемая тарабарщина, называемая шифротекстом. Шифрование используется, чтобы гарантировать сокрытие информации от всех, для кого она не предназначена, включая даже тех, кто может видеть зашифрованные данные. Процесс возвращения шифротекста к первоначальному состоянию открытого текста называется расшифровкой.
Шифротекст
Если бы эта статья была зашифрована, любой перехвативший ее зашифрованную версию увидел бы очень длинную строку из несвязных цифр и букв, как, например: «SNaqi82xleab92lkafdtuijgjf0dgfdojtkr8vcp2dso».
Шифрование с симметричным ключом
Чтобы расшифровать скремблированные данные, вам понадобится «ключ» шифрования (что-то вроде пароля). Ключ – это очень большое число, которое алгоритм шифрования использует для изменения данных обратно в читаемую форму. Без ключа никто, кроме владельца зашифрованных данных, не может получить доступ к читаемой версии. Процесс возврата скремблированных данных к читаемому состоянию называется «расшифровкой». Это и называется шифрованием с симметричным ключом.
У такого шифрования есть свои преимущества. Оно очень быстрое. Оно очень удобно для данных, которые никуда не отправляются. Однако в качестве способа передачи защищенных данных одноключевое шифрование может быть довольно дорогостоящим из-за сложности безопасного распределения ключей.
Вспомните персонажа из какого-нибудь шпионского фильма: человека с запертым портфелем, прикованным наручниками к запястью. Что там у него в портфеле? Вероятно, не сам код запуска ракеты, формула биотоксина или план вторжения. Скорее там лежит ключ для расшифровки секретных данных.
Криптография с открытым ключом (асимметричное шифрование)
Проблемы распределения ключей решаются криптографией с открытым ключом. Криптография с открытым ключом – это асимметричная схема, в которой для шифрования используется пара ключей: открытый, который шифрует данные, и соответствующий ему секретный ключ для расшифровки. Открытый ключ вы публикуете в открытом доступе, а секретный сохраняете в тайне. С помощью вашего открытого ключа кто угодно – даже совершенно незнакомые вам люди – может зашифровать информацию, прочесть которую после этого сможете только вы.
Определить секретный ключ по открытому вычислительно невозможно. Обладая открытым ключом, кто угодно может зашифровать данные, но не может их расшифровать. Расшифровать их может только обладатель соответствующего секретного ключа.
Основное преимущество криптографии с открытым ключом заключается в том, что она позволяет людям, не имеющим готового механизма обеспечения безопасности, тем не менее безопасно обмениваться сообщениями. Здесь для отправителя и получателя отпадает необходимость обмениваться секретными ключами по некоему защищенному каналу; все коммуникации включают только открытые ключи, тогда как секретный ключ никогда не передается и не используется совместно. Некоторые примеры криптоэкосистем с открытым ключом – это Elgamal (названная по имени своего изобретателя, Тахера Эль-Гамаля), RSA (названная по первым буквам фамилий своих изобретателей, Рональда Ривеста, Ади Шамира и Леонарда Адлемана), протокол Диффи – Хеллмана (названный, как вы догадались, по именам создателей) и DSA (Digital Signature Algorithm, алгоритм цифровой подписи), изобретенный Дэвидом Кравицем.
Поскольку одноключевая криптография когда-то была единственным доступным средством передачи секретной информации, расходы на защищенные каналы и безопасное распределение ключей ограничивали ее использование кругом тех, кто мог себе это позволить, то есть до правительств и крупных банков (ну или детей с секретными кольцами-декодерами). Шифрование с открытым ключом – это технологическая революция, обеспечивающая доступ к надежной криптографии для самого широкого круга взрослых людей. Помните курьера с запертым портфелем, прикованным наручниками к запястью? Так вот шифрование с открытым ключом лишает его работы (возможно, к его же облегчению).
PGP (от англ. Pretty Good Privacy) сочетает в себе некоторые из лучших свойств как одноключевой криптографии, так и криптографии с открытым ключом. Это гибридная криптосистема. Когда пользователь шифрует открытый текст с помощью PGP, система сначала производит его сжатие. Сжатие данных сокращает время их передачи, экономит место на диске и, что еще более важно, повышает надежность криптографической защиты. Большинство методов криптоанализа используют для взлома шифра паттерны, найденные в открытом тексте. Сжатие данных сокращает количество паттернов в открытом тексте, тем самым значительно повышая устойчивость к криптоанализу. (Слишком короткие для сжатия или плохо сжимающиеся файлы не сжимаются.)
Затем PGP создает сеансовый ключ, являющийся одноразовым секретным ключом. Этот ключ представляет собой случайное число, сгенерированное на основе произведенных вами движений мыши и нажатий клавиатуры. Сеансовый ключ работает с очень безопасным и быстрым алгоритмом одноключевого шифрования для шифрования открытого текста. Результатом является шифротекст. После того как данные зашифрованы, сеансовый ключ шифруется в открытый ключ получателя. Этот зашифрованный в открытом ключе сеансовый ключ передается вместе с зашифрованным текстом получателю.
Расшифровка происходит в обратном порядке. Копия PGP на стороне получателя использует его секретный ключ для восстановления временного сессионного ключа, который PGP использует для расшифровки шифротекста, созданного посредством одноключевого шифрования.
Комбинация этих двух методов шифрования сочетает в себе удобство шифрования с открытым ключом и скорость симметричного шифрования, которое примерно в 1000 раз быстрее шифрования с открытым ключом. Шифрование с открытым ключом, в свою очередь, решает проблемы распределения ключей и передачи данных. При их совместном использовании производительность и распределение ключей улучшаются без какого-либо ущерба безопасности.
Ключи
Ключ – это значение, работающее с криптографическим алгоритмом для получения определенного шифротекста. Ключи в основном представляют собой очень, очень, очень большие числа. Размер ключа измеряется в битах; число, представляющее собой 1024-битный ключ, чертовски велико. В криптографии с открытым ключом, чем больше ключ, тем надежнее шифрование.
Хотя открытый и секретный ключи математически связаны, очень трудно получить секретный ключ только на основе открытого ключа; однако это всегда возможно при наличии достаточного времени и вычислительных мощностей. Поэтому очень важно выбирать ключи правильного размера – достаточно большие, чтобы быть безопасными, но достаточно маленькие, чтобы обеспечивать приемлемую скорость шифрования. Кроме того, необходимо учитывать, кто может попытаться прочесть ваши файлы, насколько они могут быть целеустремлены, каким количеством времени и какими ресурсами они располагают.
Большие ключи будут обеспечивать криптографическую защиту более длительное время. Если информация, которую вам нужно зашифровать, должна быть скрыта в течение многих лет, вы можете использовать очень большой ключ. При этом, конечно, нельзя сказать наверняка, сколько времени понадобится для определения вашего ключа при использовании более быстрых и эффективных компьютеров завтрашнего дня. Было время, когда 56-битный симметричный ключ считался чрезвычайно безопасным.
Цифровые подписи
Одним из важнейших преимуществ криптографии с открытым ключом является то, что она предоставляет способ для применения цифровых подписей. Цифровые подписи позволяют получателю информации проверить подлинность ее происхождения, а также убедиться в том, что она не была изменена. Таким образом, цифровые подписи с открытым ключом обеспечивают аутентификацию и целостность данных. Цифровая подпись обеспечивает также невозможность отказа от авторства, то есть она не оставляет отправителю возможности утверждать, что он в действительности не отправлял подписанную такой подписью информацию. Эти особенности важны для криптографии в той же мере, что и конфиденциальность, если не больше.
Цифровая подпись служит той же цели, что и подпись рукописная. Однако рукописную подпись несложно подделать. Цифровая подпись превосходит рукописную в том, что ее практически невозможно подделать, плюс она свидетельствует о подлинности и целостности информации, а также о личности подписавшего.
Некоторые люди используют цифровые подписи чаще, чем шифрование. Например, вас может не беспокоить, узнает ли кто-то о том, что вы только что внесли на свой счет 1000 долларов, однако вы хотите быть совершенно уверены, что передали их именно кассиру банка, а не кому-то, кто им притворился.
Вместо того чтобы шифровать информацию с помощью чужого открытого ключа, вы шифруете ее своим секретным ключом. Если информация может быть расшифрована с помощью вашего открытого ключа, значит, она исходит от вас.
Командная строка GPG (PGP) — руководство для начинающих
PGP расшифровывается как «pretty good privacy» ([довольно] хорошая конфиденциальность), и это способ шифрования сообщений. Шифрование, в своей самой базовой форме, – это способ зашифровать сообщение таким образом, что, если кто-то увидит данные в процессе передачи, он не сможет узнать, что говорится в сообщении. OpenPGP – самый популярный стандарт цифрового шифрования.
Эдвард Сноуден первоначально связался с журналисткой Лорой Пойтрас, чтобы сообщить ей о своей сокровищнице документов, именно с помощью PGP.
Итак, давайте посмотрим, что собой представляет PGP и насколько он прост в использовании.
Краткий обзор (если вы пропустили теорию):
Шифрование, по сути, представляет собой способ запутывания цифровых данных таким образом, чтобы при пересылке никто не мог прочесть их содержание. В этом руководстве мы сосредоточимся на том, что называется «шифрованием с открытым ключом». В нем применяется множество криптографических методов для шифрования каждого сообщения с использованием двух факторов, постоянных для всех, кто использует PGP: открытого и секретного ключей.
Открытый ключ – это информация, необходимая для шифрования сообщения. Те, кто желает получать зашифрованные сообщения, источникам свой открытый ключ, так как это единственный способ для источников начать процесс отправки защищенных сообщений.
Примечание: существуют приложения с графическим интерфейсом, которые делают этот процесс проще и понятнее, но здесь мы для достижения того же результата используем командную строку. (Мы будем использовать командную строку Linux. Пользователи Windows могут обратиться к руководству по GUI-приложению GnuPG, которое делает все то же самое, только с управлением через графический интерфейс.)
Во-первых, вы захотите сгенерировать ключ для себя:
Вам будет предложено ввести несколько деталей. Не забудьте данные, которые вы вводили.
Чтобы вывести список ваших открытых ключей:
Предположим, что вас зовут Джон Доу и вы хотите отправить сообщение Джейн Доу. Вот как вы это можете это сделать. (Внимание: все используемые здесь для примера имена и названия необходимо заменять на те, что вы видите при выводе списка ключей.)
Сначала экспортируйте свой открытый ключ:
gpg —export —armor youremail@example.com > publickey.asc
gpg —export —armor yourname > publickey.asc
Отправьте полученный файл с ключом Джейн Доу. Пусть она сделает то же самое.
Чтобы импортировать открытый ключ другого пользователя:
gpg —import publickey.asc
Теперь, когда вы импортировали ключ Джейн Доу, давайте отправим ей зашифрованное сообщение.
Зашифровать файл для отправки Джейн Доу:
gpg —encrypt —recipient receiversname filename.txt (Где receiversname – имя получателя; filename.txt – отправляемый файл)
gpg —encrypt —recipient Jane Doe secretmessage.txt
Либо, если предыдущая команда не работает:
Это создаст файл с названием secretmessage.txt.pgp. Отправьте его Джейн Доу.
Теперь Джейн получила ваш файл. Вот как она его расшифрует:
Для расшифровки в командную строку (это означает, что вы увидите сообщение только в командной строке и оно не будет в расшифрованном виде сохранено на вашем компьютере) используйте команду:
gpg —decrypt filename.txt.gpg
Для расшифровки на диск:
Подписывайтесь на BitNovosti в Telegram!
Делитесь вашим мнением об этой статье в комментариях ниже.