Python3 DTLS服务器/客户端

时间:2020-10-27 17:11:22

标签: python-3.x dtls

我计划在python3中实现一个“简单的” DTLS工具,该工具能够通过PSK作为PoC发起(客户端)并接受DTLS(服务器)连接(后来我计划将其扩展到证书-基于身份验证)。 我花了几天时间研究提供此功能的库,但是我仍然不确定该使用什么。 (任何包含文档/示例的包装器/库建议都值得欢迎。)

虽然可以使用openssl二进制文件轻松创建DTLS客户端/服务器,例如:

openssl s_server -dtls -accept 1337 -nocert -psk deadbeef -cipher PSK-AES128-CCM8

用于服务器(具有特定密码套件)和

openssl s_client -dtls -connect 127.0.0.1:1337 -psk deadbeef -cipher PSK-AES128-CCM8

对于客户端,我正在努力寻找使用python做到这一点。 (pyopenssl不提供DTLS支持)是否有使用受广泛支持的库/包装器的实现的具体示例? (有一些Coap / IoT库专注于客户端(aiocoap),但就我的想法而言,必须同时实现这两个方面)

1 个答案:

答案 0 :(得分:0)

我最终使用了mbedTLS(以前的PolarSSL)。它们提供了相当广泛的Python3 wrapper,可提供几乎所有的mbedTLS功能。自述文件提供了一个非常有用的DTLS示例实现,具有使用psk和/或证书进行身份验证的功能。