Anyway, interesting approach using a secret like this. Is this approach used elsewhere?
Based on this it looks like the service will change what port it's listening on every N seconds. What happens if a port on the server is already open/ reserved though?
Also, not that it really matters from a security perspective, but md5 seems like a bit of an odd choice. There are faster options available. Might be nice to allow it to be configured.
Cool stuff.