Заключение - Шифрование данных
Хорошие криптографические системы создаются таким образом, чтобы сделать их вскрытие как можно более трудным делом. Можно построить системы, которые на практике невозможно вскрыть (хотя доказать сей факт обычно нельзя). При этом не требуется очень больших усилий для реализации. Единственное, что требуется - это аккуратность и базовые знания. Нет прощения разработчику, если он оставил возможность для вскрытия системы. Все механизмы, которые могут использоваться для взлома системы надо задокументировать и довести до сведения конечных пользователей.
Теоретически, любой шифровальный алгоритм с использованием ключа может быть вскрыт методом перебора всех значений ключа. Если ключ подбирается методом грубой силы (brute force), требуемая мощность компьютера растет экспоненциально с увеличением длины ключа. Ключ длиной в 32 бита требует 2^32 (около 10^9) шагов. Такая задача под силу любому дилетанту и решается на домашнем компьютере. Системы с 40-битным ключом (например, экспортный американский вариант алгоритма RC4) требуют 2^40 шагов - такие компьютерные мощности имеются в большинстве университетов и даже в небольших компаниях. Системы с 56-битными ключами (DES) требуют для вскрытия заметных усилий, однако могут быть легко вскрыты с помощью специальной аппаратуры. Стоимость такой аппаратуры значительна, но доступна для мафии, крупных компаний и правительств. Ключи длиной 64 бита в настоящий момент, возможно, могут быть вскрыты крупными государствами и уже в ближайшие несколько лет будут доступны для вскрытия преступными организацими, крупными компаниями и небольшими государствами. Ключи длиной 80 бит могут в будущем стать уязвимыми. Ключи длиной 128 бит вероятно останутся недоступными для вскрытия методом грубой силы в обозримом будущем. Можно использовать и более длинные ключи. В пределе нетрудно добиться того, чтобы энергия, требуемая для вскрытия (считая, что на один шаг затрачивается минимальный квантовомеханический квант энергии) превзойдет массу солнца или вселенной.
Однако, длина ключа это еще не все. Многие шифры можно вскрыть и не перебирая всех возможных комбинаций. Вообще говоря, очень трудно придумать шифр, который нельзя было бы вскрыть другим более эффективным способом. Разработка собственных шифров может стать приятным занятием, но для реальных приложений использовать самодельные шифры не рекомендуется если вы не являетесь экспертом и не уверены на 100 процентов в том, что делаете.
Вообще говоря, следует держаться в стороне от неопубликованных или секретных алгоритмов. Часто разработчик такого алгоритма не уверен в его надежности, или же надежность зависит от секретности самого алгоритма. Вообще говоря, ни один алгоритм, секретность которого зависит от секретности самого алгоритма не явяется надежным. В частности, имея шифрующую программу, можно нанять прграммиста, который дизассемблирует ее и восстановит алгоритм методом обратной инженерии. Опыт показывает, что большинство секретных алгоритмов, ставших впоследствии достоянием общественности, оказались до смешного ненадежными.
Длины ключей, используемых в криптографии с открытым ключом обычно значительно больше, чем в симметричных алгоритмах. Здесь проблема заключается не в подборе ключа, а в воссоздании секретного ключа по открытому. В случае RSA проблема эквивалентна разложению на множители большого целого числа, которое является произведением пары неизвестных простых чисел. В случае некоторых других криптосистем, проблема эквивалентна вычислению дискретного логарифма по модулю большого целого числа (такая задача считается примерно аналогичной по трудности задаче разложения на множители). Имеются криптосистемы, которые используют другие проблемы.
Чтобы дать представление о степени сложности вскрытия RSA, скажем, что модули длиной 256 бит легко факторизуются обычными программистами. Ключи в 384 бита могут быть вскрыты исследовательской группой университета или компании. 512-битные ключи находятся в пределах досягаемости крупных государств. Ключи длиной в 768 бит вероятно не будут надежны продолжительное время. Ключи длиной в 1024 бит могут считаться безопасными до тех пор, пока не будет существенного прогресса в алгоритме факторизации; ключи длиной в 2048 большинство считает надежными на десятилетия. Более подробную информацию о длинах ключей RSA можно почерпнуть из статьи Брюса Шнайера (Bruce Scheier).
Важно подчеркнуть, что степень надежности криптографической системы определяется ее слабейшим звеном. Нельзя упускать из вида ни одного аспекта разработки системы - от выбора алгоритма до политики использования и распространения ключей.
Похожие статьи
-
Методы и алгоритмы - Шифрование данных
Метод шифровки/дешифровки называют шифром (cipher). Некоторые алгоритмы шифрования основаны на том, что сам метод шифрования (алгоритм) является...
-
Основы криптографии, 1 История - Шифрование данных
1 История История криптографии насчитывает около 4 тысяч лет. В качестве основного критерия периодизации криптографии возможно использовать...
-
Заключение - Интеллектуальный анализ данных, который способствует поддержке маркетинга в компании
В рамках проведенного исследования была проделана работа по разработке системы интеллектуального анализа данных для поддержки маркетинга производственной...
-
Заключение - Модели серверов баз данных
База данных помогает систематизировать и хранить информацию из определенной предметной области, облегчает доступ к данным, поиск и предоставление...
-
Заключение - База данных "Определение факультативов для студентов"
В результате выполнения данного проекта были выработаны умения и навыки проектирования моделей базы данных, предназначенной для функционирования...
-
Заключение, Список литературы - Инфологическая модель базы данных телекомуникационной компании
В любой организации, как большой, так и маленькой, возникает проблема такой организации управления данными, которая обеспечила бы наиболее эффективную...
-
Организация кэш-памяти - Проблема организации и хранения данных
Концепция кэш-памяти возникла раньше, чем архитектура IBM/360. Сегодня кэш-память имеется практически в любом классе компьютеров, а в некоторых...
-
Технологии Hadoop - Технологии больших данных: анализ и выбор решения для реализации проекта
Продукт Apache Hadoop является свободной Java-платформой на обычном оборудовании. Проект был рожден посредством обработки материалов Google File System и...
-
Заключение, Список использованной литературы - Проблема организации и хранения данных
Таким образом, в процессе проектирования базы данных, можно прийти к выводу, что правильная организация хранения и представления данных является...
-
Заключение - Разработка системы управления базой данных "Судоходство"
Информационные технологии прочно вошли в нашу жизнь. Применение ЭВМ стало обыденным делом, хотя совсем еще недавно рабочее место, оборудованное...
-
Шифрование данных симметричным алгоритмом
Лабораторная работа Шифрование данных симметричным алгоритмом Цель работы: получить навыки по использованию симметричных криптографических алгоритмов для...
-
Заключение - Система управления базами данных
В современном мире роль баз данных достаточна высока. Многие предприятия, фирмы используют такой метод хранения информации в компьютере, будь то данные о...
-
Смета на комплект видеонаблюдения с монтажом Таб. 1 Расчет стоимости оборудования П/н Наименование Цена Кол-Во Всего в руб. 1 Комплект...
-
В процессе выполнения дипломной работы было проведено ознакомление с принципами построения баз данных. Мною изучена СУБД "MS SQL Server", которая на...
-
Программная модель данных, получившая название "MapReduce", была создана несколько лет назад в компании Google, и там же была осуществлена первая...
-
Организация парольной защиты - Проектирование и разработка базы данных "Прокат автомобилей"
По мере того как деятельность организаций все больше зависит от компьютерных информационных технологий, проблемы защиты баз данных становятся все более...
-
Онлайн исследования в социологии: новые методы анализа данных - Распространение новостной информации
На сегодняшний день анализ социальных сетей и медиа, Интернет-сообществ, пользователей в целом используется в основном в маркетинге. Компания может...
-
Основные понятия баз данных. Цели использования баз данных - Разработка базы данных
В широком смысле слова база данных (БД) - это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области. Для удобной...
-
Обзор сетей передачи данных, Определение локальных сетей - Сеть абонентского доступа
Определение локальных сетей Способов и средств обмена информацией за последнее время предложено множество: от простейшего переноса файлов с помощью...
-
Физическая Модель Данных Физическое проектирование -- создание схемы базы данных для конкретной СУБД. Специфика конкретной СУБД может включать в себя...
-
Я, ФИО, прошел производственную практику на предприятии АСУнефть. Углубил и получил навыки по профессии. Научился разбирать, ремонтировать, проводить...
-
В наше время все большее количество компаний, стремясь к повышению эффективности и прибыльности бизнеса пользуются цифровыми (автоматизированными)...
-
Объектно-ориентированное программирование (ООП) является парадигмой программирования, которая представляет понятия, как "объекты", которые имеют поля...
-
Базы данных - это определенная совокупность информационных данных, отображающих в максимально возможной полноте состояние тех или иных объектов или...
-
Система мониторинга социальных сетей предоставляет исследователю возможность собрать интересующие его упоминания в социальных сетях по какой-либо...
-
Для того, чтобы разработать оптимальный метод интеграции сторонних систем в существующую ИТ-инфраструктуру систем компании, требуется точно поставить...
-
Предложенный подход к решению задач исследования Используя в качестве основы присутствующее в наличии программное обеспечение, которое применимо к...
-
Теоретические предпосылки исследования Системы поддержки принятия решений Системы поддержки принятия решений (СППР), представляют собой приложения узкого...
-
Инфологическое моделирование - Банки и базы данных. Системы управления базами данных
Инфологическое проектирование является вторым этапом проектирования БД, который следует непосредственно после анализа предметной области. Эта стадия...
-
Заключение - Технологии больших данных: анализ и выбор решения для реализации проекта
На практике при реализации проектов возникает потребность в инструментах обработки больших данных от особенностей бизнеса, которые после накопления...
-
Заключение - Создание модели хранилища данных
В проделанной работе были продемонстрированы навыки владения основными понятиями и методами, связанными с концепцией хранилищ данных (ETL, BI, data...
-
В ходе выполнения дипломного проекта был разработан алгоритм генерации искусственных биометрических образов, позволяющий создавать правдоподобные...
-
Заключение, Список использованной литературы - База данных склада обоев
В курсовом проекте были изучены основы системы программирования Visual Studio 2012. В ходе выполнения курсовой работы разработана программа на языке...
-
Заключение, Список использованных источников - Разработка и администрирование баз данных
Данная предметная область была тщательно изучена, и была спроектирована схема базы данных, и так же реализована в программном средстве "SQLyog...
-
В рамках выпускной квалификационной работы была разработана автоматизированная информационная система, предназначенная как для автоматического, так и для...
-
В данной работе была рассмотрена тема обратной разработки (реинжиниринга) базы данных информационного портала. В качестве методов оптимизации...
-
ЗАКЛЮЧЕНИЕ, СПИСОК ЛИТЕРАТУРЫ - Строковый тип данных
В данной работе необходимо было написать программу, которая в веденной с клавиатуры строке преобразует строчные буквы русского алфавита в прописные....
-
Заключение, Список литературы - Создание электронного банка данных ФГБУ "Заповедное Прибайкалье"
В результате производственной практике удалось выполнить все поставленные задачи. Рабочие гипотезы подтвердились, были сделаны следующие выводы: 1....
-
В данной работе была затронута актуальная, интенсивно развивающаяся область методов анализа данных. Был рассмотрен новый подход к кластеризации. В рамках...
-
Запросы на выборку - Банки и базы данных. Системы управления базами данных
Запросы используются для получения пользователем информации, содержащейся в БД, в удобном для него виде. Результат запроса отображается для пользователя...
Заключение - Шифрование данных