c# - Bouncy CaSTLe 中的 TlsSignerCredentials 和 TlsAgreementCredentials 有什么区别

标签 c# security ssl bouncycastle x509

我正在使用 Bouncy CaSTLe 与 TLS 连接,将客户端证书发送到服务器。但是我不知道应该使用哪个接口(interface)作为 TlsCredentials,应该是: TlsSignerCredentialsTlsAgreementCredentials 以及如何实现。

例如什么是正确的实现

byte[] GenerateCertificateSignature(byte[] md5andsha1);

TlsSignerCredentials 中以及何时应该使用它而不是 TlsAgreementCredentials

你能给我一个示例实现或提供任何线索吗?

提前致谢!

阿图尔

最佳答案

您可能需要 TlsSignerCredentials,当 key 交换将涉及客户端签名时使用它(基本上除了 DH、ECDH 之外的所有签名)。有一个可用的默认实现 DefaultTlsSignerCredentials,您可以为其提供证书和相应的私钥。它识别 DSA、ECDSA 和 RSA 凭证。

TlsAgreementCredentials 同样具有 DefaultTlsAgreementCredentials 实现,但协议(protocol)凭证仅用于 DH/ECDH key 交换,很少使用。

关于c# - Bouncy CaSTLe 中的 TlsSignerCredentials 和 TlsAgreementCredentials 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18915258/

相关文章:

c# - 为什么允许设置一个在 C# 中不设置任何内容的属性?

c# - 将 Visual Studio 2012 中的数据源从 SQLSRV 更改为 MySQL

node.js - 有没有办法从 node.js 调用 Google Keyczar?

C 目标代码文件以纯文本形式显示字符串值

tomcat - Tomcat 中的 LDAP 错误 - 需要 TLS secret 性

c# - Quartz.Net - 更新/删除作业/触发器

java - 安全数据库连接通常如何在 JAR 文件中实现?

apache - SSL 问题(Apache 和 Django)

java - WebSphere 6.1 for Windows 上的 SSL 设置

c# - 打印文档:适合页面