Что такое Криптография?

ОтCripta today

Окт 13, 2022
15 просмотров 7 мин.

Криптография — это процесс сокрытия или кодирования информации таким образом, чтобы прочитать ее мог только тот, кому предназначено сообщение

Что такое Криптография?

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

Современные методы криптографии включают алгоритмы и шифры, позволяющие  шифровать  и расшифровывать информацию, такие как 128-битные и 256-битные ключи шифрования. Современные  шифры , такие как Advanced Encryption Standard (AES), считаются практически невзламываемыми. 

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

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

Важность криптографии

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

Распространенное использование криптографии

Конфиденциальность

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

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

Аутентификация

Честность

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

Гарантии

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

Обмен ключами

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

Типы криптографических алгоритмов

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

Криптография с секретным ключом

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

Потоковые шифры

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

Блочные шифры

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

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

Криптография с открытым ключом

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

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

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

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

RSA

RSA была первой и остается наиболее распространенной реализацией PKC. Алгоритм назван в честь его разработчиков-математиков из Массачусетского технологического института Рональда Ривеста, Ади Шамира и Леонарда Адлемана и используется для шифрования данных, цифровых подписей и обмена ключами. Он использует большое число, которое является результатом факторизации двух выбранных простых чисел. Злоумышленник не может определить основные факторы, что делает RSA особенно безопасным.

Криптография на эллиптических кривых (ECC)

ECC — это алгоритм PKC, основанный на использовании эллиптических кривых в криптографии. Он предназначен для устройств с ограниченной вычислительной мощностью или памятью для шифрования интернет-трафика. Обычно ECC используется во встроенных компьютерах, смартфонах и криптовалютных сетях, таких как биткойн, которые потребляют около 10% дискового пространства и полосы пропускания, которые требуются RSA.

Алгоритм цифровой подписи (DSA)

DSA — это стандарт, позволяющий использовать цифровые подписи при аутентификации сообщений. Он был введен Национальным институтом стандартов и технологий (NIST) в 1991 году для обеспечения лучшего метода создания цифровых подписей.

Шифрование на основе идентификации (IBE)

IBE — это система PKC, которая позволяет вычислять открытый ключ на основе уникальной информации, основанной на личности пользователя, такой как его адрес электронной почты. Затем доверенная третья сторона или генератор закрытых ключей использует криптографический алгоритм для вычисления соответствующего закрытого ключа. Это позволяет пользователям создавать свои собственные закрытые ключи, не беспокоясь о распространении открытых ключей.

Стандарты шифрования с открытым ключом (PKCS)

Все алгоритмы и использование PKC регулируются набором стандартов и руководств, разработанных RSA Data Security. Вот они:

  • PKCS #1 или RFC 8017: Стандарт криптографии RSA
  • PKCS #3: Стандарт соглашения о ключах Диффи-Хеллмана
  • PKCS #5 и PKCS #5 v2.1 или RFC 8018: Стандарт криптографии на основе пароля
  • PKCS # 6: Стандарт синтаксиса расширенного сертификата (заменяется X.509v3)
  • PKCS #7 или RFC 2315: Стандарт синтаксиса криптографических сообщений 
  • PKCS #8 или RFC 5958: Стандарт синтаксиса информации о секретном ключе
  • PKCS #9 или RFC 2985: выбранные типы атрибутов
  • PKCS #10 или RFC 2986: Стандарт синтаксиса запроса на сертификацию
  • PKCS #11: Стандарт интерфейса криптографических токенов
  • PKCS #12 или RFC 7292: Стандарт синтаксиса обмена личной информацией 
  • PKCS # 13: Стандарт криптографии на основе эллиптических кривых
  • PKCS # 14: Стандарт генерации псевдослучайных чисел
  • PKCS # 15: Стандарт формата информации о криптографическом токене

Диффи-Хеллман и алгоритм обмена ключами (KEA)

Алгоритм Диффи-Хеллмана был разработан в 1976 году профессором Стэнфордского университета Мартином Хеллманом и его аспирантом Уитфилдом Диффи, которые считаются ответственными за введение PKC в качестве концепции. Он используется для обмена секретными ключами и требует, чтобы два человека договорились о большом простом числе. 

KEA является разновидностью алгоритма Диффи-Хеллмана и был предложен в качестве метода обмена ключами в проекте Capstone NIST/Агентства национальной безопасности (АНБ), который разработал стандарты криптографии для общественного и государственного использования.

Хэш-функция

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

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

Распространенной хэш-функцией является свертка, которая берет значение и делит его на несколько частей, складывает части и использует последние четыре оставшиеся цифры в качестве ключа или хешированного значения. Другим является перестановка цифр, которая берет определенные цифры в исходном значении, переворачивает их и использует оставшееся число в качестве хеш-значения. Примеры типов хеш-функций включают безопасный алгоритм хеширования 1 (SHA-1), SHA-2 и SHA-3.

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

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

Потенциальные проблемы, связанные с ключами, и типы атак, которые могут возникнуть, включают:

Слабые ключи

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

Неправильное использование ключей

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

Повторное использование ключей

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

Необновляемость ключей

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

Ненадлежащее хранение ключей

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

Неадекватная защита ключей

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

Небезопасное перемещение ключей

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

Внутренние угрозы (аутентификация пользователей, двойной контроль и разделение ролей)

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

Отсутствие устойчивости

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

Отсутствие ведения журнала аудита

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

Ручные процессы управления ключами

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

Как минимизировать риски, связанные с криптографией

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

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

Другим потенциальным решением является квантовая криптография, при которой невозможно скопировать данные, закодированные в квантовом состоянии.

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

Добавить комментарий