Python WAN sockets and Encryption


Right now I am trying to determine the feasibility of developing software for the connectport x4 that serves as a serial-to-WAN gateway (with some modifications to the packets going through required to make things work in this particular use case).

I have already played around with the X4 some and figured out the COM communication, but am wondering if it is possible to interact with WAN hardware from within python. I have that such an interface has been provided but have not been able to find any documentation. So, how do you interact with the non-zigbee hardware from python (specifically WAN)?

Secondly, from python, is it feasible to implement secure sockets (probably SSL or TLS).

Alternatively, we will develop firmware in C on top of Net+OS.

Can you give a bit more information on the type of interaction that you desire to have with the WAN hardware? Right now, there is not much exposed, knowing what you’d like to do may help us to shape what type of features we can make available however. Our current working assumption is that it makes the most sense for us to attempt to provide and manage the WAN functionality separately from the customization capabilities of Python.

SSL is something that will be enabled in the next release of the X4 firmware which should be released very soon. It is a fairly simple implementation that provides encryption, but does not perform authentication. Essentially, it will be providing the socket.ssl() call in the socket library, but not supporting the optional certificate parameters. With that, it is then possible to use the HTTPSServer module from the standard library to do secure HTTP connections, or other SSL operations.