I'm building a web application that will be used in some remote parts of the country, normally with pretty awful options for internet access, usually satellite-based.
Satellite internet generally has high latency; combine that with extreme weather conditions and unhelpful ISPs, and I've noticed that a fair amount of the time (25% roughly) requests to websites that use HTTPS time out before they can deliver a web page. I assume this is due to HTTPS's handshaking, and the fact that if the home page of the site uses HTTPS then generally all the loaded libraries and images also require HTTPS, so there are a bunch of HTTPS connections trying to happen at once for a page to be served.
Since the whole damn internet is moving toward HTTPS, is there a way for high latency users to be included?
Back to my web app, I definitely need it to be secure. But equally importantly it has to work over these high latency connections. I'm considering a roll-your-own encryption scheme (ugh, I know) over HTTP, giving out symmetric keys over a different channel. I'd rather not, and I'm hoping that one of you has an idea I can use instead.