AlCalzone / node-dtls-client

clientside UDP wrapper for DTLS v1.2
24 stars 8 forks source link

Another implementation of DTLS. #15

Open reklatsmasters opened 6 years ago

reklatsmasters commented 6 years ago

Hello, @AlCalzone!

A long time i'm working on pure js implementation of webrtc on nodejs. DTLS is a low-level protocol of webrtc. Here is my unfinished implementation https://github.com/nodertc/dtls. In the near future I plan to implement server logic (using dgram-server), retransmission, fragmentation and reordering.

Seems like you maintain your project. How about merge our implementations? :wink:

mkovatsc commented 6 years ago

@AlCalzone @reklatsmasters I was just looking for a "node-coap-server" project, which would also require a DTLS server implementation. What is the status of getting a decent DTLS node project going?

reklatsmasters commented 6 years ago

@mkovatsc I plan to work on dtls server in next year. I have no time right now. Besides, it's need to stabilise client-side part.

AlCalzone commented 6 years ago

@mkovatsc I currently have no plans to create a DTLS server, as the main reason for this project is to support node-tradfri-client. Although it would be nice to have a proper implementation for node, I currently don't have the time to do that.

mkovatsc commented 6 years ago

@AlCalzone I understand. We unfortunately have the general problem of only "half-baked" CoAP implementations for various languages. It would be great, if we could get all the part-time developers together on ONE full-time CoAP project. @mcollina , @GiedriusM , @phretor what do you think about this? @jaimejim, @cabo, @zdshelby, and I have been discussing this at IETF...

reklatsmasters commented 6 years ago

@mkovatsc I can make prototype of a DTLS server in the next few weeks if it work will be kindly sponsored. Anyway, i need a DTLS server for NodeTRC. Also, i'm currently working on PSK key exchage wich is requires for IoT.

If you do not need a pure js DTLS server, you may use https://projects.eclipse.org/proposals/tinydtls (or compiled to webassembly version, it need research of this).

AlCalzone commented 6 years ago

@mkovatsc @reklatsmasters I'm willing to assist in case my code is a good base for that project.

However I would suggest merging the entire stack (node-coap-client, node-dtls-client, possibly node-aead-crypto) into a monorepo, since every little change results in a cascade of updates. Separating the resulting modules by technology (dtls & coap, server & client & shared libs) would make sense then.