OpenSSL 3.0 heeft diverse afgeschafte of onveilige algoritmen verplaatst naar een interne bibliotheekmodule genaamd legacy provider. Deze wordt niet standaard geladen, dus apps (of hun taalruntimes) die OpenSSL gebruiken voor cryptografische bewerkingen kunnen zulke algoritmen niet gebruiken bij het laden van certificaten, het aanmaken van message digests enz.
Als je bijvoorbeeld een p12-certificaat probeert te laden, krijg je een fout. Als je een p12-certificaat wilt laden met sgcIndy of sgcWebSockets, moet je de legacy.dll-bibliotheek deployen en enkele eigenschappen in de componenten inschakelen.
Momenteel kun je de legacy.dll downloaden met de nieuwste openSSL 3.3-versie.
sgcWebSockets
- Stel de eigenschap OpenSSL_Options.Legacy.Enabled in op True.
- Stel de locatie van de Legacy-bibliotheek in.
- OpenSSL_Options.Legacy.LibPath: hier configureer je waar de legacy-bibliotheek zich bevindt
- oslpNone: dit is de standaard; de legacy-bibliotheek moet zich in dezelfde map bevinden als de binary of in een bekend pad.
- oslpDefaultFolder: stelt automatisch het pad in van de legacy-bibliotheek waar de bibliotheken voor alle IDE-personalities zouden moeten staan.
- oslpCustomFolder: als deze optie is geselecteerd, definieer het volledige pad in de eigenschap LibPathCustom.
- OpenSSL_Options.Legacy.LibPathCustom: wanneer LibPath = oslpCustomFolder, definieer hier het volledige pad waar de legacy-bibliotheek zich bevindt.
- OpenSSL_Options.Legacy.LibPath: hier configureer je waar de legacy-bibliotheek zich bevindt
sgcIndy
- Stel de eigenschap SSLOptions.Legacy in op True.
- Voor het starten van de server of client stel je het pad in waar de legacy.dll-bibliotheek staat. Gebruik de functie IdOpenSSLSetOSSLPath en geef het pad als argument mee.
