Погружение в базы данных PostgreSQL

Данный курс является консолидацией теоретических основ и практических примеров, которые демонстрируют работу операторов и функций SQL в системе управления базами данных PostgreSQL.

Промокод на скидку: SALE_202410

Подробнее

Регулярные выражения в Python

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

Пройти курс

Модуль psycopg2 в Python

Модуль psycopg2 позволяет взаимодействовать с базами данных PostgreSQL в скриптах Python.

Пройти курс

Модуль SQLite3 в Python

Встроенный модуль SQLite3 позволяет работать с базами данных SQLite в ваших приложениях, которые написаны на языке программирования Python.

Пройти курс

Погружение в базы данных Oracle

Данная книга является руководством для начинающих специалистов в области анализа и обработки данных. В книге рассматривается язык SQL и его процедурное расширение PL/SQL от компании Oracle.

Купить книгу

SQL без слёз

Цель книги заключается в том, чтобы научить любого человека работать с реляционными базами данных и получать из них необходимую информацию посредством выполнения SQL-запросов.

Скачать книгу

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

Асимметричное шифрование часто называют шифрованием с помощью общего ключа, при котором используются разные, но взаимно дополняющие друг друга ключи и алгоритмы шифрования и расшифровки. Этот механизм полагается на два взаимосвязанных ключа: общий ключ и частный ключ. Если Алиса и Боб хотят установить связь с использованием шифрования через общий ключ, обоим нужно получить два ключа: общий и частный (см. рисунок 3). Для шифрования и расшифровки данных Алиса и Боб будут пользоваться разными ключами.

Асимметричное шифрование с помощью общего ключа

Вот некоторые наиболее типичные цели использования алгоритмов общих ключей:

  • обеспечение конфиденциальности данных;
  • аутентификация отправителя;
  • безопасное получение общих ключей для совместного использования.

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

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

Конфиденциальность данных, зашифрованных с помощью общего ключа. Асимметричное шифрование

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

Аутентификация отправителя с помощью шифрования общим ключом. Асимметричное шифрование

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

Механизмы генерирования пар общих/частных ключей являются достаточно сложными, но в результате получаются пары очень больших случайных чисел, одно из которых становится общим ключом, а другое — частным. Генерирование таких чисел требует больших процессорных мощностей, поскольку эти числа, а также их произведения должны отвечать строгим математическим критериям. Однако этот процесс генерирования абсолютно необходим для обеспечения уникальности каждой пары общих/частных ключей. Алгоритмы шифрования с помощью общих ключей редко используются для поддержки конфиденциальности данных из-за ограничений производительности. Вместо этого их часто используют в приложениях, где аутентификация проводится с помощью цифровой подписи и управления ключами. Среди наиболее известных алгоритмов общих ключей можно назвать RSA (Ривест, Шамир, Адельман) и ElGamal.

Источник: Решения компании Cisco Systems по обеспечению безопасности корпоративных сетей

Метки: , , .

Записи по теме

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *