5 ms·
So, if some apps skip the dynamically linked external libraries and statically bundle their own copy/implementation of SSL library along with only using Socket
by ramshanker 6y ago
So, if some apps skip the dynamically linked external libraries and statically bundle their own copy/implementation of SSL library along with only using Socket connections, this method wouldn't work.
I wonder what is the space cost of statically adding trimmed down SSL library. Apps are easily 100+ MB these days.
- revertts 6y agoThis is done by some apps today, though the motivation was typically network perf (http2 and then QUIC support). The stacks are large - on iOS it's difficult to take over a portion of networking without rebuilding a substantial amount of it, so you'll have TLS, a full http stack, plus all supporting logic for connection pooling, etc. The closest thing to an open-source, drop-in option like this is cronet, the networking core of chromium packaged as a standalone library. Last I looked it was multiple megabytes in size, which is still a substantial cost for iOS apps. They can also be quirky to use because they fight against the system's defaults in some areas and can cause other inefficiencies (typically outweighed by the network improvements). I believe Uber talked publicly about adopting cronet, and Facebook gave a talk about mobile proxygen (though it is not open-source). If you pop open the Netflix and Youtube apps, you will likely see the same.