在 C#语言中启用特定的密码套件

匿名
2024-04-10T06:18:25.8433333+00:00

我们正在尝试使用 C# WPF 应用程序将文件上传到设备或从设备下载文件。我们正在使用 .Net Framework 4.5 来实现这一点。该设备仅支持两种协议,即:

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 经过分析,我们发现这两个密码套件在 TLS1.2 下都受支持。我们目前正在使用以下代码在 .Net Framework 4.5 中启用 TLS1.2:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

但众所周知,TLS1.2 支持许多密码套件。我们只想启用上述密码套件。

如果有任何方法可以只启用这两个密码套件,任何人都可以取悦我们吗?另外,请告诉我们上面的代码行是否足以在 C# 应用程序中启用 TLS1.2。

Note:此问题总结整理于: Enabling specific cipher suite in C#

开发人员技术 | C#
开发人员技术 | C#

一种面向对象的类型安全的编程语言,它起源于 C 语言系列,包括对面向组件的编程的支持。

0 个注释 无注释

问题作者接受的答案

  1. Hui Liu-MSFT 48,711 信誉分 Microsoft 外部员工
    2024-04-10T07:13:32.75+00:00

    Microsoft 没有提供修改 .NET Framework 4.5 代码中的密码套件的方法,也许您应该考虑其他方法来执行此操作。

    .NET Framework 中密码套件的选择和协商由操作系统的 SSL/TLS 库(在本例中为 Windows Schannel)处理,我们可以通过组策略和注册表项覆盖 Schannel 中的默认密码套件。

    管理传输层安全性 (TLS) 此外,我还发现了以下文档: 确定 Schannel 密码套件 的优先级 似乎您可以在 C++ 中对密码套件执行某些操作,但这需要您发布一个新问题并询问 C++ 专家进行确认。

    以下链接还提到了修改密码套件的方法,您也可以参考它。 需要在 C# 中的代码中设置密码套件


    如果回复有帮助,请点击“接受答案”并点赞。 注意:如果您想接收此线程的相关电子邮件通知,请按照我们文档中的步骤启用电子邮件通知。

    此答案是否有帮助?

    1 个人认为此答案很有帮助。
    0 个注释 无注释

0 个其他答案

排序依据: 非常有帮助

你的答案

提问者可以将答案标记为“已接受”,审查方可以将答案标记为“已推荐”,这有助于用户了解答案是否解决了提问者的问题。