TounSignerCredentials和Bouncy Castle中的TlsAgreementCredentials有什么区别?

时间:2013-09-20 11:07:01

标签: c# security ssl bouncycastle x509

我正在使用Bouncy Castle与TLS连接,并将客户端证书发送到服务器。但我不知道我应该使用哪个接口作为TlsCredentials,这应该是: TlsSignerCredentials TlsAgreementCredentials 以及如何实现此目的。

例如,正确的实现是什么

byte[] GenerateCertificateSignature(byte[] md5andsha1);

TlsSignerCredentials ,当我应该使用此代替 TlsAgreementCredentials

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

提前致谢!

阿图尔

1 个答案:

答案 0 :(得分:1)

您可能需要TlsSignerCredentials,它在密钥交换涉及客户端签名时使用(基本上所有这些都包括DH,ECDH)。有一个可用的默认实现DefaultTlsSignerCredentials,您可以为其提供证书和相应的私钥。它识别DSA,ECDSA和RSA凭证。

TlsAgreementCredentials同样具有DefaultTlsAgreementCredentials实现,但协议凭证仅用于很少使用的DH / ECDH密钥交换。