Covertness/coap-rs

Support DTLS encryption

tiziano88 opened this issue · 11 comments

Some products (e.g. IKEA Tradfri) use COAP over DTLS (TLS over UDP). It would be great to have the library support this use case.

See

Thank you for your advice. I have the similar idea before. Unfortunately, I haven't enough time to implement this feature.
Of cource , any PR about the feature are welcome.

DTLS written in Rust seems not available. I found two issues about this:
rustls/rustls#40
sfackler/rust-openssl#528
Waiting for the implement.

I thought Core CoAP Standard included DTLS 1.2 .

I found this code based on tokio-openssl which includes DTLS encryption:
https://github.com/simmons/tokio-dtls-example/blob/master/src/main.rs

Edit:
There are multiple implementations of rust-openssl for using sslMethod::dtls()
I suggest that we take inspiration from this clean example https://github.com/JRF63/DTLS-Example/blob/master/src/main.rs

I started working on the implementation based on the latter example. I would like @Covertness to assign this issue to me before I present my PR.

I am working on now after a family member of mine had health issue. Have you tried this project? https://github.com/google/rust-async-coap

sorry for hear that. I noticed it before. It seems only implement some basic functions and haven't contribute for a long time

Hi guys! Has anybody been able to make progress on this? I looked at this a couple of years ago implementing DTLS with rust-async-coap (see async-coap-dtls) but my very crude attempt is quite clunky. DTLS 1.3 should make things a lot simpler but this is still a draft if I'm not mistaken...

I think it's not easy to implement. I would appreciate if you could finish it.

@fdeantoni
Feel free to continue if you are interested.