如何在不影响其他进程的情况下调用API“BCryptAddContextFunction”和“BCryptRemoveContextFunction”来从Schannel添加/删除密码套件?
例如,如果进程'A'调用这些API并更改Cipher套件,则其他进程(如'B'或'C')不应影响这意味着'B'或'C'应该能够使用默认密码套件
我编写了以下代码,这也影响了其他进程。
uint status = ERROR_SUCCESS;
status = BCryptRemoveContextFunction(CRYPT_LOCAL,
"SSL",
NCRYPT_SCHANNEL_INTERFACE,
"TLS_RSA_WITH_RC4_128_SHA");
实际上我想在使用TLS 1.2与服务器通信时阻止我的客户端应用程序的弱密码套件,但问题是我设置的它也影响其他应用程序。如何仅为我的应用程序阻止弱密码套件而不影响其他密码套件。
注意:我的应用程序是用C#编写的,我使用P / Invoke调用这些API。