【问题标题】:SSL socket in DelphiDelphi 中的 SSL 套接字
【发布时间】:2011-10-07 17:45:20
【问题描述】:

我需要与使用 SSL 的设备通信。它曾经使用套接字与我的 Delphi 应用程序通信,但现在我想使用与设备的安全通信。

那么,有没有可以使用 SSL 的 TServerSocket 和 TClientSocket 等效组件?

【问题讨论】:

    标签: delphi sockets ssl


    【解决方案1】:

    Delphi 中没有内置的直接等效项。您可以将 Indy 与 OpenSSL 或 SecureBlackbox SSL 类一起使用,但是 Indy 并不是 TServerSocket/TClientSocket 的直接替代品,因为它们使用非常不同的编码模型。或者您可以使用 SecureBlackbox 的 TElSecureClientSocket 和 TElSecureServerSocket 类 - 它们分别是 TClientSocket 和 TServerSocket 的后代和直接替代品。注意:SecureBlackbox 是我们的产品。

    【讨论】:

    • 说“Indy 与 TServerSocket/TClientSocket 不兼容”有点误导。 TClientSocket 可以和TIdTCPServer 通信,TServerSocket 可以和TIdTCPClient 通信,就好了。无论每一端使用什么包装器,TCP 都是 TCP。要将 SSL 与 TServerSocket/TClientSocket 一起使用,您必须手动将它们连接到 OpenSSL 或 Crypto/STunnel API,仅此而已。 Indy 原生封装了 OpenSSL API,但其 SSL 架构是抽象的,因此可以使用第三方 SSL 实现(如 SecureBlackBox)。
    • @Remy “不是直接替代”听起来会更好吗?我很难猜出正确的词,所以如果这个词听起来更好,或者你对这个词有更好的建议,我会更新答案。
    【解决方案2】:

    ICS from François Piette 是一个出色的支持 SSL 的开源库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-17
      • 1970-01-01
      • 1970-01-01
      • 2013-09-18
      • 2011-06-10
      • 1970-01-01
      • 1970-01-01
      • 2015-11-12
      相关资源
      最近更新 更多