Indy ondersteunt RSA- en EC-certificaten bij gebruik van de openSSL-bibliotheken, maar standaard kunnen EC-certificaten worden aangemaakt met verschillende curves en de openSSL-bibliotheken zijn slechts met enkele van deze curves geconfigureerd. Als je dus een EC-certificaat gebruikt dat niet standaard in de openSSL-bibliotheken is opgenomen, zal het certificaat niet goed werken.
Om dit probleem te vermijden bevatten de Indy-servers nu een nieuwe eigenschap genaamd CurveList waarmee je de ondersteunde curve-namen kunt instellen.
De eigenschap CurveList wordt ook ondersteund door onze gratis sgcIndy-bibliotheek.
Voorbeeld
Om een EC-certificaat te configureren dat de brainpoolP256r1-curve gebruikt, stel je de volgende curves in voordat de verbinding wordt gestart (dit geldt voor server- en client-componenten).
// client component TsgcWebSocketClient1.TLSOptions.OpenSSL_Options.CurveList := 'P-521:P-384:P-256:brainpoolP256r1'; // server component TsgcWebSocketHTTPServer1.SSLOptions.OpenSSL_Options.CurveList := 'P-521:P-384:P-256:brainpoolP256r1';
Op deze manier ondersteunt de client de standaard-curves (zoals de secp256r1-curve) en daarnaast de brainpoolP256r1-curve.
