-1

我正在实施DTLS 1.2并使用密码TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

我正在使用以下步骤创建预主密钥和主密钥

1- 使用 API BCryptOpenAlgorithmProvider开放算法提供程序

2- 使用 API BCryptGenerateKeyPair生成密钥对

3- 比使用 API BCryptExportKey导出公钥

4- 比使用 API BCryptImportKeyPair导入对方公钥

5- 之后使用我的私钥和其他方公钥通过 API BCryptSecretAgreement生成秘密协议句柄

6- 最后使用 API BCryptDeriveKey获取密钥

我是否因为我的主密钥不正确而遗漏了什么。

4

1 回答 1

1

我想这完全取决于您传递给 BCryptDeriveKey 的参数。您应该在基于 SHA256 而不是基于 MD5 和 SHA1 的参数中指定 TLS 1.2 伪随机函数作为 TLS 1.1 / DTLS 1.0。

于 2016-06-10T14:57:17.477 回答