Шифрование, кодирование и хэширование – в чём разница?

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

Шифрование

Шифрование (англ. encryption) употребляется, в основном, в отношении мессенджеров и шифрования сообщений. Сейчас наиболее распространён такой термин, как «сквозное шифрование» (анг. end-to-end encryption). По сути, шифрование – это такая техника кодирования данных, при которой, например, сообщение зашифровано таким алгоритмом, что только авторизированные пользователи могут получить доступ к информации. Шифрование используется, когда нужно переслать конфиденциальные данные, такие как, например, комбинацию из логина и пароля или других чувствительных данных.

В шифровании информация может быть зашифрована с помощью специальных алгоритмов – AES (англ. Advanced Encryption Standard – симметричный алгоритм блочного шифрования, принятый в качестве стандарта правительством США, является одним из самых популярных алгоритмов шифрования) и RSA (аббревиатура от англ. Rivest, Shamir, Adleman, криптографический шифровальный алгоритм с открытым ключом, первый алгоритм, пригодный как для шифрования, так и для цифровой подписи). Зашифрованная информация называется «шифротекст» (ciphertext), которая может переводиться обратно в исходник – «простой текст» (plain text), и наоборот – простой текст шифруется в шифротекст. Существует два вида шифровальных алгоритмов – симметричный и асимметричный. В симметричном информация шифруется и дешифруется с помощью одного и того же ключа, в асимметричном – с помощью двух ключей, например, один для шифрования, другой для дешифрования.

Кодирование

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

У кодирования есть несколько направлений: сжатие данных, транспортное кодирование (дополнительное кодирование для совместимости с протоколами передачи данных), криптография (преобразование информации для конфиденциальной передачи), физическое кодирование (трансформация сигналов в шкалу данных, например, амплитуду тока), обнаружение и исправление ошибок (контроль целостности данных при воспроизведении). Примерами программ кодирования можно отметить ASCII, BASE64, UNICODE и др.

Хэширование

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

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

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

Шифрование и хэширование для защиты конфиденциальной информации

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

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

Например, DLP-система SecureTower от Falcongaze может анализировать данные по множеству параметров, в том числе и по вышеупомянутым хэш-функциям. А также:

Контентный анализ файлов и документов по содержимому:

- анализ текстовых файлов и отправляемого текста (учитываются морфологические особенности языка, анализируется текст с грамматическими ошибками либо написанный транслитом);

- анализ изображений (распознавание текста на изображениях, печатей, штампов);

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

Статистический анализ количественный учет выполняемых действий;

Анализ общих связей между сотрудниками выявление путей распространения информации;

Анализ по цифровым отпечаткам;

Распознавание замаскированных файлов;

Анализ CAD-файлов.

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

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

DLP-система SecureTower

  • Защита от утечек данных по вине сотрудников
  • Контроль работы сотрудников на компьютерах
  • Выявление потенциально опасных сотрудников
  • Ведение архива бизнес-коммуникации