I tried asking this on xdaforums but did not get a useful answer so I thought I would try here.
I've got some very old devices (used as wifi-only) that are starting to have issues connecting to (some but not all) modern websites. One runs FroYo, another Ice Cream Sandwich. They are both rooted and I have ADB working on both of them. Some of the sites in question are using very little javascript, so even the old browsers that can be installed on them used to connect okay until VERY recently. I have succeeded in updating the root certs on both of these, which has helped with some web sites, but not all. The troublesome change seems related to certificate updates on some of the websites. Where they used to be using TLS1.1 and certs based on SHA1, they have changed to TLS 1.3 and SHA256, which these old devices don't support.
I should add that this is not just about browsers. There are similar issues with other apps like email, VoIP callling, XMPP clients, weather apps, pretty much anything that needs network access. There are also issues connecting to certain specific (but not all) wifi networks, I suspect a similar cause for this too.
So, I want to update the version of libssl.so used on these devices. I have found some instructions on how to compile this, which looks like it will be an adventure unto itself (and maybe a separate topic for further questions).
One helpful detail about devices this old, they do not yet use dm-verity, so at least I will not need to bother about dealing with that.
Before I get too far down the compilation rabbit hole, assuming I manage to get it compiled correctly, is it really as simple as just dropping the replacement files into /system/lib ? Do I also need to update libcrypt.so at the same time? Or are there other items I would also need to update? Has anyone done this before, short of rebuilding the entire ROM?