Программное обеспечение для шифрования - это программное обеспечение, которое использует криптографию для предотвращения несанкционированного доступа к цифровой информации. [1] [2] Криптография используется для защиты цифровой информации на компьютерах, а также цифровой информации, которая отправляется на другие компьютеры через Интернет . [3]
Классификация
Существует множество программных продуктов, обеспечивающих шифрование. При программном шифровании используется шифр, чтобы скрыть содержимое зашифрованного текста . Один из способов классификации этого типа программного обеспечения - по типу используемого шифра. Шифры можно разделить на две категории: шифры с открытым ключом (также известные как асимметричные шифры) и шифры с симметричным ключом . Программное обеспечение для шифрования может быть основано на шифровании с открытым или симметричным ключом.
Другой способ классифицировать шифрование программного обеспечения - это классифицировать его назначение. Используя этот подход, программное шифрование можно разделить на программное обеспечение, которое шифрует « данные в пути », и программное обеспечение, которое шифрует « данные в состоянии покоя ». Передаваемые данные обычно используют шифры с открытым ключом, а данные в состоянии покоя обычно используют шифры с симметричным ключом.
Шифры с симметричным ключом можно разделить на потоковые шифры и блочные шифры. Потоковые шифры обычно шифруют открытый текст по битам или байтам и чаще всего используются для шифрования сообщений в реальном времени, например аудио- и видеоинформации. Ключ используется для установления начального состояния генератора потока ключей, а выходные данные этого генератора используются для шифрования открытого текста. Алгоритмы блочного шифрования разбивают открытый текст на блоки фиксированного размера и шифруют по одному блоку за раз. Например, AES обрабатывает 16-байтовые блоки, в то время как его предшественник DES зашифровал блоки из восьми байтов.
Также хорошо известен случай, когда PKI используется для передачи данных в состоянии покоя.
Данные в пути
Данные в пути - это данные, которые отправляются по компьютерной сети . Когда данные находятся между двумя конечными точками, любая конфиденциальная информация может быть уязвима. Полезная нагрузка (конфиденциальная информация) может быть зашифрована для обеспечения ее конфиденциальности, а также ее целостности и достоверности. [4]
Часто данные передаются между двумя объектами, которые не знают друг друга, например, в случае посещения веб-сайта. По мере установления отношений и безопасного совместного использования ключа шифрования для защиты информации, которой будет происходить обмен, был разработан набор ролей, политик и процедур для этого; она известна как инфраструктура открытых ключей или PKI. После того, как PKI установит безопасное соединение, между конечными точками может использоваться симметричный ключ. Симметричный ключ предпочтительнее закрытого и открытого ключей, поскольку симметричный шифр намного более эффективен (использует меньше циклов ЦП), чем асимметричный шифр. [5] [6] Существует несколько методов шифрования данных при передаче, таких как IPsec , SCP , SFTP , SSH , OpenPGP и HTTPS .
Данные в состоянии покоя
Неактивные данные относятся к данным, которые были сохранены в постоянном хранилище . Сохраненные данные обычно зашифрованы симметричным ключом .
Шифрование может применяться на разных уровнях стека хранения. Например, шифрование можно настроить на уровне диска , на подмножестве диска, называемом разделом , на томе , который представляет собой комбинацию дисков или разделов, на уровне файловой системы или в приложениях пользовательского пространства, таких как база данных или другие приложения, работающие в операционной системе хоста .
При полном шифровании диска зашифровывается весь диск (за исключением битов, необходимых для загрузки или доступа к диску, если не используется незашифрованный раздел загрузки / предварительной загрузки). [7] Поскольку диски могут быть разделены на несколько разделов, шифрование разделов может использоваться для шифрования отдельных разделов диска. [8] Тома, созданные путем объединения двух или более разделов, можно зашифровать с помощью шифрования тома . [9] Файловые системы, также состоящие из одного или нескольких разделов, могут быть зашифрованы с использованием шифрования на уровне файловой системы . Каталоги называются зашифрованными, если файлы в каталоге зашифрованы. [10] [11] Шифрование файла позволяет зашифровать отдельный файл. Шифрование базы данных воздействует на данные, которые должны быть сохранены, принимая незашифрованную информацию и записывая эту информацию в постоянное хранилище только после того, как оно зашифрует данные. Шифрование на уровне устройства, несколько расплывчатый термин, который включает ленточные накопители с возможностью шифрования, может использоваться для разгрузки задач шифрования с ЦП.
Передача данных в состоянии покоя
Когда есть необходимость в безопасной передаче данных в состоянии покоя, без возможности создания безопасного соединения, были разработаны инструменты пользовательского пространства, которые поддерживают эту потребность. Эти инструменты полагаются на то, что получатель публикует свой открытый ключ, а отправитель может получить этот открытый ключ. Затем отправитель может создать симметричный ключ для шифрования информации, а затем использовать открытый ключ получателя для надежной защиты передачи информации и симметричного ключа. Это позволяет безопасно передавать информацию от одной стороны к другой.
Ниже приведены несколько примеров программного обеспечения, обеспечивающего этот тип шифрования.
- GNU Privacy Guard (GnuPG или GPG)
- Довольно хорошая конфиденциальность (PGP)
Представление
Производительность программного обеспечения для шифрования измеряется относительно скорости процессора. Таким образом , число циклов в байты (иногда сокращенно КПБ), что указует на количество тактовых циклов микропроцессор будет выполнять за байт данных , обрабатываемых, являются обычной единицей измерения . [12] Циклы на байты служат в качестве частичного показателя реального мира производительности в криптографических функциях . [13] Приложения могут предлагать собственное шифрование, называемое «родным» шифрованием, включая приложения баз данных, такие как Microsoft SQL, Oracle и MongoDB, и обычно полагаются на прямое использование циклов ЦП для повышения производительности. Это часто влияет на желательность шифрования в компаниях, стремящихся к большей безопасности и простоте соблюдения нормативных требований, влияя на скорость и масштаб передачи данных внутри организаций своим партнерам. [14]
Смотрите также
- Криптографический протокол
- Открытый ключ (асимметричный) алгоритм
- Симметричные алгоритмы
- Безопасность транспортного уровня
- Сравнение программ для шифрования дисков
- Стратегия защиты (вычисления)
Рекомендации
- ^ Такур, Динеш. «Криптография - что такое криптография?» .
- ^ «Что такое шифрование? - Определение с сайта WhatIs.com» . SearchSecurity . Проверено 25 апреля 2017 года .
- ^ «Почему мы шифруем - Шнайер о безопасности» .
- ^ «Руководство по криптографии - OWASP» .
- ^ Вильянуэва, Джон Карл. «Симметричное и асимметричное шифрование» .
- ^ «Симметричное и асимметричное шифрование - CipherCloud» . 4 октября 2013. Архивировано из оригинала 15 августа 2018 года . Проверено 27 марта 2017 года .
- ^ «Как работает шифрование всего диска» (PDF) .
- ^ «Как зашифровать отдельный раздел в Linux - TechRepublic» .
- ^ https://www.jetico.com/web_help/bcve3_enterprise/html/01_introduction/02_what_is_ve.htm Шифрование тома
- ^ «Как это работает: шифрованная файловая система» .
- ^ ООО «ПДС Софтвер Солюшнз» .
- ^ «Размещение процессора» .
- ^ «Инженерное сравнение кандидатов SHA-3» .
- ^ «Компании не могут эффективно применять технологию шифрования» . ComputerWeekly.com . Проверено 23 апреля 2020 .
Внешние ссылки
- Программное обеспечение для шифрования в Curlie