sgcCustomIndy TLS 1.3. HTTP/2 przez ALPN. Nic do odinstalowania.

Standardowa biblioteka Indy nie obsługuje ALPN ani TLS 1.3 przez OpenSSL 1.1.1 czy 3.x. sgcWebSockets Enterprise dostarcza zmodyfikowaną kompilację Indy, która to potrafi. sgcCustomIndy udostępnia tę samą kompilację w sgcWebSockets Core, zainstalowaną obok Indy, które już masz w IDE.

  • ALPN i HTTP/2
  • TLS 1.3
  • OpenSSL 1.1.1 i 3.x
  • Statyczny OpenSSL
  • Delphi 7 do 13
  • C++ Builder
STANDARDOWE INDY IdGlobal.pas IdTCPClient.pas IdSSLOpenSSL.pas już w twoim IDE, pozostaje zainstalowane ZMODYFIKOWANE INDY sgcIdGlobal.pas sgcIdTCPClient.pas sgcIdSSLOpenSSL.pas dodane przez pakiet, żadna nazwa się nie powtarza HANDSHAKE TLS 1.3 Z ALPN Klient Serwer ClientHello, ALPN [h2, http/1.1] ServerHello, ALPN h2 Strumienie HTTP/2 w jednym połączeniu
  • 0Bibliotek Indy do odinstalowania
  • 0Instalacji Indy 10 w Delphi 7
  • 3Możliwości, których brakuje standardowemu Indy
  • 1Moduł do statycznego OpenSSL
  • 2Cele statycznego linkowania, Windows 32 i 64 bit
Co odblokowuje

Trzy rzeczy, których standardowa biblioteka Indy nie potrafi.

Każda z poniższych pozycji to możliwość samej warstwy Indy, a nie komponentu, który nad nią stoi. Dlatego to właśnie podmiana biblioteki Indy je włącza.

CLIENTHELLO ALPN oferuje h2 http/1.1 Serwer wybiera h2 strumień 1 strumień 3 strumień 5 Strumienie HTTP/2 Negocjowane podczas handshake TLS, poniżej dowolnego komponentu HTTP.
ALPN

Rozszerzenie, na którym opiera się HTTP/2.

  • Klient ogłasza protokoły, którymi potrafi mówić, a serwer wybiera jeden z nich podczas handshake TLS.
  • Ta negocjacja odbywa się wewnątrz warstwy TLS, poniżej wszystkiego, do czego sięga komponent HTTP.
  • Standardowa biblioteka Indy jej nie obsługuje. Zmodyfikowana biblioteka Indy udostępnia ALPN, a wraz z nim HTTP/2.
STANDARDOWE INDY TLS 1.3 ograniczone do starszego API OpenSSL ZMODYFIKOWANE INDY TLS 1.3 OpenSSL 1.1.1 OpenSSL 3.x Klienci i serwery docierają do punktów końcowych, które wymagają TLS 1.3.
TLS 1.3, OpenSSL 1.1.1 i 3.x

Nowoczesne gałęzie OpenSSL, wreszcie w zasięgu.

  • TLS 1.3 wymaga OpenSSL 1.1.1 albo OpenSSL 3.0.0, a standardowa biblioteka Indy tych gałęzi nie obsługuje.
  • Zmodyfikowana biblioteka Indy je obsługuje, więc klient albo serwer zbudowany na niej negocjuje TLS 1.3 z punktami końcowymi, które tego wymagają.
  • Koniec z ograniczeniem do tego, co oferuje starsze API OpenSSL.
TRZY PLIKI DO WDROŻENIA app.exe libssl libcrypto JEDEN PLIK DO WDROŻENIA app.exe OpenSSL wlinkowany uses sgcIdSSLOpenSSL_Static; Windows 32 bit i 64 bit, Delphi XE2 lub nowszy.
Statyczny OpenSSL

OpenSSL wewnątrz pliku wykonywalnego.

  • OpenSSL jest wlinkowany bezpośrednio w twoją aplikację, zamiast ładowany w czasie działania z bibliotek DLL libcrypto i libssl.
  • Aplikacja z TLS wdraża się jako jeden plik, zarówno dla komponentów klienta, jak i serwera.
  • Działa to tylko wtedy, gdy używana jest zmodyfikowana biblioteka Indy, w Windows 32 bit i 64 bit z Delphi XE2 lub nowszym.
Współistnienie

Stoi obok Indy, które już masz.

Podmiana biblioteki Indy w IDE to ta część, której nikt nie chce robić, więc ten pakiet o nią nie prosi. Pliki zmodyfikowanego Indy mają przedrostek sgc, IdGlobal staje się sgcIdGlobal, a obie wersje współistnieją bez problemów.

Nic do odinstalowania

Jakiekolwiek Indy ma już twoje IDE, pozostaje zainstalowane i zarejestrowane. Nie ma kroku, w którym usuwasz pakiet, przywracasz go później albo trzymasz dwa profile IDE.

Istniejące projekty bez zmian

Wszystko, co budujesz ze standardową biblioteką Indy, nadal się z nią kompiluje, na dokładnie tych samych modułach. Zmodyfikowana kompilacja jest dodatkiem, a nie zamiennikiem.

Jedna dyrektywa kompilatora

O użyciu zmodyfikowanej biblioteki Indy decyduje SGC_CUSTOM_INDY w sgcVer.inc. Ponowne wyłączenie zmodyfikowanej kompilacji to zmiana w jednej linii.

Pełny kod źródłowy, jak zawsze

Moduły Indy ze zmienionymi nazwami są dostarczane jako kod źródłowy razem z licencją, więc kompilują się z ustawieniami twojego projektu i dają się prześledzić krok po kroku w debuggerze tak jak reszta biblioteki.

Bez instalacji Indy 10 w Delphi 7

Delphi 7 jest dostarczane ze starszym Indy. Dzięki dołączonej zmodyfikowanej bibliotece Indy nie trzeba szukać Indy 10, instalować go w IDE ani dopasowywać do komponentów.

Kompilacja, której używa Enterprise

Zmodyfikowana biblioteka Indy nie jest nowa. Na niej zbudowany jest sgcWebSockets Enterprise, a ten pakiet to droga do niej dla sgcWebSockets Core.

Kod

Jeden moduł, jeden plik do wdrożenia.

Nic nie trzeba konfigurować. Dodaj sgcIdSSLOpenSSL_Static do klauzuli uses, na przykład w głównym .dpr, a aplikacja użyje OpenSSL wlinkowanego w plik wykonywalny przy następnym uruchomieniu.

Project1.dpr

uses
  sgcIdSSLOpenSSL_Static;

// That is the whole configuration. No compiler
// directive to enable, no OpenSSL API version to
// choose. Remove the unit again and the application
// goes back to loading the OpenSSL DLLs.

sgcVer.inc, w folderze źródłowym

{$DEFINE SGC_CUSTOM_INDY}

// One define controls the custom Indy library.
// Static OpenSSL linking has no effect without it,
// and turning the custom build off again is a
// one line change.

W wersji lub na platformie, gdzie statyczne linkowanie jest niedostępne, nic się nie psuje. Aplikacja nadal ładuje biblioteki DLL OpenSSL jak wcześniej, więc ten sam kod źródłowy kompiluje się wszędzie. Gdzie działa statyczne linkowanie

Platformy

Tam, gdzie można zlinkować plik obiektowy w tym formacie.

  • Windows 32 bit
  • Windows 64 bit

Kompilator

Starsze wersje zgłaszają błędny format pliku obiektowego, więc statyczne linkowanie zaczyna się od Delphi XE2.

  • Delphi XE2 i nowsze

Warunek wstępny

Statyczne linkowanie nie działa bez używanej zmodyfikowanej biblioteki Indy.

  • zdefiniowane SGC_CUSTOM_INDY
Część sgcWebSockets

Dodatek, a nie osobne zamówienie.

sgcCustomIndy dołącza się do licencji sgcWebSockets Core Jest oferowany jako pierwszy polecany dodatek w zamówieniu Core, więc dodajesz go jednym kliknięciem przy zamawianiu sgcAI, sgcMQ lub sgcSocial i otrzymujesz go w tej samej licencji.

Core z sgcCustomIndy

Ta sama zmodyfikowana kompilacja, której używa Enterprise, dodana podczas zamówienia Core. Pełny kod źródłowy i rok aktualizacji.

€149 / programista

W cenie sgcAuth i sgcHTTP

Obsługa WebAuthn w sgcAuth oraz klienci HTTP/2 i gRPC w sgcHTTP wymagają go, więc zamówienie któregokolwiek z tych pakietów zawsze obejmuje sgcCustomIndy. Podana cena pakietu już go pokrywa.

Już w Enterprise i All-Access

Zmodyfikowana biblioteka Indy jest częścią sgcWebSockets Enterprise oraz eSeGeCe All-Access i jest domyślnie włączona. Jeśli masz któreś z nich, nie ma nic do dodania. Edycje Standard i Professional korzystają ze standardowej biblioteki Indy.

To nie to samo co sgcIndy, pełny pakiet Indy instalowany zamiast Indy w twoim IDE. Której edycji potrzebujesz

Zobacz cennik

Zaktualizuj warstwę Indy.

ALPN i HTTP/2, TLS 1.3 przez OpenSSL 1.1.1 i 3.x oraz OpenSSL wewnątrz pliku wykonywalnego w Windows. Wszystko obok Indy, które już masz. Wersja próbna sgcWebSockets ma pełny zestaw funkcji Enterprise, razem ze zmodyfikowanym Indy.

Najnowsze wpisy na blogu

Zobacz wszystkie wpisy →

Oglądasz widok sgcCustomIndy eSeGeCe.

Pokaż mi inne ujęcie →
30-dniowa gwarancja zwrotu pieniędzyNie jesteś zadowolony? Poproś o pełny zwrot pieniędzy w ciągu 30 dni od zakupu. Zobacz politykę zwrotów