Ключевые слова: криптография, алгоритм, пиктограммa.
Криптография — это метод защиты информации и коммуникаций посредством использования кодов, благодаря которому только те, для кого информация предназначена, могут ее прочитать и обработать.
История криптографии: Слово «криптография» происходит от греческого kryptos, что означает «скрытый». Префикс «крипт-» означает «скрытый» или «хранилище», а суффикс «-графия» означает «письмо».
Происхождение криптографии обычно датируется примерно 2000 годом до нашей эры, когда в Египте существовала иероглифическая практика. Они состояли из сложных пиктограмм, полный смысл которых был известен лишь избранным.
Первое известное использование современного шифра было сделано Юлием Цезарем (100–44 гг. До н. э.), который не доверял своим посланникам при общении со своими губернаторами и офицерами. По этой причине он создал систему, в которой каждый символ в его сообщениях заменялся символом, находящимся на три позиции впереди него в латинском алфавите.
В информатике криптография относится к методам защиты информации и связи, основанным на математических концепциях и наборе вычислений на основе правил, называемых алгоритмами, для преобразования сообщений способами, которые трудно расшифровать. Эти детерминированные алгоритмы используются для генерации криптографических ключей, цифровой подписи, проверки для защиты конфиденциальности данных, просмотра веб-страниц в Интернете и конфиденциальных коммуникаций, таких как транзакции по кредитным картам и электронная почта.
Криптографические методы. Криптография тесно связана с дисциплинами крипто логии и крипто анализа. Он включает в себя такие методы, как микроточки, слияние слов с изображениями и другие способы сокрытия информации при хранении или передаче. Однако в современном компьютерно-ориентированном мире криптография чаще всего связана с шифрованием открытого текста (обычного текста, иногда называемого открытым текстом) в зашифрованный текст (процесс, называемый шифрованием), а затем обратно (известный как дешифрование). Люди, которые практикуют эту область, известны как криптографии.
Криптосистемы используют набор процедур, известных как криптографические алгоритмы или шифры, для шифрования и дешифрования сообщений для обеспечения безопасности связи между компьютерными системами, устройствами и приложениями.
Набор шифров использует один алгоритм для шифрования, другой алгоритм для аутентификации сообщений и третий для обмена ключами. Этот процесс, встроенный в протоколы и написанный в программном обеспечении, работающем в операционных системах (ОС) и сетевых компьютерных системах, включает в себя:
– генерацию открытых и закрытых ключей для шифрования/дешифрования данных
– цифровую подпись и проверку для аутентификации сообщения
– обмен ключами.
Проблемы криптографии
Злоумышленники могут обойти криптографию, взломать компьютеры, отвечающие за шифрование и дешифрование данных, а также использовать слабые реализации, такие как использование ключей по умолчанию. Однако криптография усложняет злоумышленникам доступ к сообщениям и данным, защищенным алгоритмами шифрования.
Растущая обеспокоенность по поводу вычислительной мощности квантовых вычислений, способной нарушить существующие стандарты шифрования криптографии, побудила NIST в 2016 году объявить математическому и научному сообществу конкурс на подготовку статей о новых стандартах криптографии с открытым ключом.
В отличие от современных компьютерных систем, квантовые вычисления используют квантовые биты, которые могут представлять, как 0, так и 1, и, следовательно, выполнять два вычисления одновременно. По данным NIST, хотя крупномасштабный квантовый компьютер, возможно, не будет создан в ближайшее десятилетие, существующая инфраструктура требует стандартизации общеизвестных и понятных алгоритмов, которые предлагают безопасный подход. Крайний срок подачи заявок был назначен на ноябрь 2017 года. Ожидается, что анализ предложений займет от трех до пяти лет.
Важно понимать, что, когда потенциальный злоумышленник получает фрагмент зашифрованного текста, в его распоряжении может быть больше информации, чем просто сам зашифрованный текст. Например, он может знать, что открытый текст был написан на английском языке, а это означает, что буква е встречается в открытом тексте чаще, чем любая другая буква; Также можно предсказать частоту употребления многих других букв и распространенных буквенных комбинаций. Эта информация может значительно упростить задачу поиска ключа. Точно так же он может знать что-то о вероятном содержании сообщения; например, слово «вход», скорее всего, встретится в начале сеанса удаленного входа в систему. Это может сделать возможным атаку по известному открытому тексту, которая имеет гораздо более высокие шансы на успех, чем атака только по зашифрованному тексту. Еще лучше — атака с использованием выбранного открытого текста, которую можно осуществить, предоставив отправителю некоторую информацию, которую, как вы знаете, отправитель может передать — такие вещи случались, например, в военное время.
Таким образом, лучшие криптографические алгоритмы могут помешать злоумышленнику получить ключ, даже если человек знает, как открытый текст, так и зашифрованный текст. Это не оставляет злоумышленнику иного выбора, кроме как попробовать все возможные ключи — исчерпывающий поиск методом «грубой силы». Если ключи имеют n бит, то существует 2n возможных значений ключа (каждый из n бит может быть либо нулем, либо единицей). Злоумышленнику может повезти сразу же попробовать правильное значение, или не повезти, чтобы попробовать каждое неправильное значение, прежде чем, наконец, попробовать правильное значение ключа, перепробовав все 2n возможных значений; среднее количество попыток найти правильное значение находится посередине между этими крайностями, 2n/2. Это можно сделать непрактичным с вычислительной точки зрения, если выбрать достаточно большое пространство ключей и сделать операцию проверки ключа достаточно дорогостоящей. Что усложняет задачу, так это то, что скорость вычислений продолжает расти, что делает ранее невозможные вычисления возможными. Более того, хотя мы концентрируемся на безопасности данных при их перемещении по сети (то есть данные иногда уязвимы только в течение короткого периода времени), в целом специалисты по безопасности должны учитывать уязвимость данных, которые необходимо защитить. хранятся в архивах десятки лет. Это говорит в пользу очень большого размера ключа. С другой стороны, большие ключи замедляют шифрование и дешифрование.
Литература:
- https://book.systemsapproach.org/
- https://eprint.iacr.org/