Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Работа с Transport Level Encryption в Delphi 10.4.2: Практическое руководство

Delphi , Интернет и Сети , Компоненты и Интернет

Transport Level Encryption (TLE) в Delphi 10.4.2 предоставляет возможность обеспечения безопасного обмена данными между клиентом и сервером, используя TCP/IP без HTTP или HTTPS. В данной статье мы рассмотрим основные аспекты настройки и использования TLE, а также ответим на часто задаваемые вопросы по этой теме.

Основы Transport Level Encryption

Transport Level Encryption в DataSnap позволяет защищать данные на уровне транспортного протокола. Для его работы используются различные фильтры, такие как PC1 (Pre-Shared Key) и RSA (Rivest-Shamir-Adleman), которые обеспечивают аутентификацию и шифрование данных.

Настройка сервера

Для настройки сервера с Transport Level Encryption необходимо добавить соответствующие фильтры и настроить ключи шифрования. В вашем случае на сервере уже настроен фильтр PC1 с ключом "test".

uses
  DsTransportSecurity;

procedure TServerMethod1.CreateServerConnections(AServerConnections: TServerConnections);
var
  SecureTransport: TDSTransportSecurity;
begin
  SecureTransport := TDSTransportSecurity.Create(nil);
  SecureTransport.AddFilter(TDSPC1Filter.Create(nil));
  SecureTransport.PC1Key := 'test';
  AServerConnections.AddTransport(SecureTransport);
end;

Настройка клиента

На клиенте для работы с Transport Level Encryption не требуется явно добавлять фильтры, так как они автоматически определяются на основе протокола рукопожатия между клиентом и сервером. Вы добавили параметр фильтра PC1 на стороне клиента, что является необязательным действием, так как клиент автоматически обнаружит и применит необходимые фильтры.

SQLConnection.Params.Add('Filters={"PC1": {"Key": "test"}}');

Вопросы и ответы

Первый вопрос: Проверка ключей

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

Второй вопрос: Добавление RSA фильтра

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

uses
  DsTransportSecurity;

procedure TServerMethod1.CreateServerConnections(AServerConnections: TServerConnections);
var
  SecureTransport: TDSTransportSecurity;
begin
  SecureTransport := TDSTransportSecurity.Create(nil);
  SecureTransport.AddFilter(TDSPC1Filter.Create(nil));
  SecureTransport.PC1Key := 'test';
  SecureTransport.AddFilter(TDSSRSAFilter.Create(nil));
  SecureTransport.RSAPublicKey := 'Публичный ключ RSA';
  AServerConnections.AddTransport(SecureTransport);
end;

Третий вопрос: Добавление Authentication Manager

При использовании Authentication Manager имя пользователя и пароль передаются в зашифрованном виде, если на сервере настроен Transport Level Encryption. В вашем случае, если PC1 ключ настроен правильно, данные будут зашифрованы.

Заключение

Transport Level Encryption в Delphi 10.4.2 является мощным инструментом для обеспечения безопасности обмена данными. Правильная настройка фильтров и ключей на сервере и клиенте позволит вам обеспечить защищенное соединение без использования HTTP/HTTPS. Обязательно ознакомьтесь с официальной документацией для более глубокого понимания работы TLE и его конфигурации.

Мы надеемся, что эта статья помогла вам лучше понять, как работает Transport Level Encryption в Delphi 10.4.2 и как его настроить для вашего приложения.

Создано по материалам из источника по ссылке.

В контексте рассматривается настройка и использование Transport Level Encryption (TLE) в Delphi 10.4.2 для обеспечения безопасного обмена данными между клиентом и сервером.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




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


:: Главная :: Компоненты и Интернет ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-06-16 08:51:53/0.0058960914611816/0