The standard answer to this problem is ngrok, so it'd be useful to have a direct comparison. I couldn't find any encryption code in the Github repos you have exposed (I didn't look hard); obviously, since you've documented "SHA-256 encryption", you should probably write that up a lot better. I assume that at least the client side of this will be open source, in that people are going to be squeamish about running closed source desktop tunneling software.