Блокчейн и криптовалюты
April 22, 2019

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

Привет всем, на связи Вадим Львов. Это перевод статьи с сайта Binance Academy: https://www.binance.vision/security/what-is-symmetric-key-cryptography

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

Как работает симметричное шифрование?

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

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

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

Две из наиболее распространенных схем симметричного шифрования, используемых сегодня, основаны на блочных и потоковых шифрах. Блочные шифры группируют данные в блоки заданного размера и каждый блок шифруется с помощью соответствующего ключа и алгоритма шифрования (например, 128-битный открытый текст шифруется в 128-битный зашифрованный текст). С другой стороны, потоковые шифры не шифруют текстовые данные блоками, а, скорее, 1-битными приращениями (1 бит открытого текста шифруется в 1 бит зашифрованного текста одновременно).

Симметричное и асимметричное шифрование

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

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

Применение в современных компьютерных системах

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

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

Стоит отметить, что блокчейн биткойна не использует шифрование, как многие склонны полагать. Вместо этого он использует определенный вид алгоритма цифровых подписей (DSA), известный как алгоритм цифровой подписи эллиптической кривой (ECDSA), который генерирует цифровые подписи без использования шифрования.

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

Преимущества и недостатки

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

В то время как симметричное шифрование предлагает широкий спектр преимуществ, есть один существенный недостаток, связанный с ним: неотъемлемая проблема передачи ключей, используемых для шифрования и дешифрования данных. Когда эти ключи используются совместно по незащищенному соединению, они уязвимы для перехвата злоумышленником (третьей стороной). Если неавторизованный пользователь получает доступ к определенному симметричному ключу, безопасность любых данных, зашифрованных с помощью этого ключа, ставится под угрозу. Для решения этой проблемы многие веб-протоколы используют комбинацию симметричного и асимметричного шифрования для установления безопасных соединений. Одним из наиболее ярких примеров такой гибридной системы является криптографический протокол TLS, используемый для защиты больших участков современного интернета.

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

Заключительные мысли

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

Мои контакты

Телеграм: papabotovbotreactorcryptsys