OpenSSL 3.0 将多个已弃用或不安全的算法移入名为 legacy provider 的内部库模块中,默认不加载。因此,使用 OpenSSL 进行加密操作的应用程序在加载证书、创建消息摘要等场景下无法使用这些算法……
例如,如果您尝试加载 p12 证书,将会出现错误。如果您想使用 sgcIndy 或 sgcWebSockets 加载 p12 证书,必须部署 legacy.dll 库并在组件中启用某些属性。
目前,您可以随最新的 openSSL 3.3 版本下载 legacy.dll。
sgcWebSockets
- 将属性 OpenSSL_Options.Legacy.Enabled 设置为 True。
- 设置旧版库的位置。
- OpenSSL_Options.Legacy.LibPath:在此配置旧版库的位置
- oslpNone:默认值,旧版库应位于二进制文件所在文件夹或已知路径中。
- oslpDefaultFolder:自动设置所有 IDE 版本的库应位置的旧版库路径。
- oslpCustomFolder:如果选择此选项,请在 LibPathCustom 属性中定义完整路径。
- OpenSSL_Options.Legacy.LibPathCustom:当 LibPath = oslpCustomFolder 时,在此定义旧版库的完整路径。
- OpenSSL_Options.Legacy.LibPath:在此配置旧版库的位置
sgcIndy
- 将属性 SSLOptions.Legacy 设置为 True。
- 在启动服务器或客户端之前,设置 legacy.dll 库所在的路径。使用函数 IdOpenSSLSetOSSLPath 并将路径作为参数传递。
