ECDHE-PSK mbedTLS的例子?

问题描述 投票:3回答:1

我试图弄清楚如何使用mbedTLS(以前的PolarSSL)在两个对等体之间执行ECDHE-PSK加密。不幸的是,我没有任何关于API的文章/文档需要使用吗?

encryption mbed polarssl tls1.2
1个回答
6
投票

ECDHE-PSK是TLS中使用的密钥交换方法。你应该先看看mbed TLS TLS tutorial

然后,您需要在两端配置预共享密钥。这通常涉及使用mbedtls_ssl_conf_psk()客户端,虽然理论上同样的功能也可以在服务器端使用,如果你只希望与单个客户端通信,在实践中大多数时候你会想要使用mbedtls_ssl_conf_psk_cb()来设置一个回调函数,它将为每个客户端选择适当的预共享密钥。

您还需要调整允许的密码套件列表。这可以在运行时使用mbedtls_ssl_conf_ciphersuites()完成。或者,如果您知道自己只使用ECDHE-PSK,则可以使用customize your build禁用所有其他密钥交换,这也可以最大限度地减少占用空间。

最后,您可以找到使用各种密码套件进行TLS的完整工作示例,包括基于mbed TLS分布中的ECDHE-PSK,如ssl_client2.cssl_server2.c。您可以检查示例中如何使用上述功能,特别是您将找到服务器端PSK callback的示例。

© www.soinside.com 2019 - 2024. All rights reserved.