Crypto Ancienne 2.0 brings TLS 1.3 to the Internet of Old Things (except BeOS)
oldvcr.blogspot.com
oldvcr.blogspot.com
Yet those old machines had full GUI OSes and performant apps and snappy interactivity in their day. Is the sheer amount of computation required to facilitate TLS 1.3 really more than what was needed to run entire interactive GUI operating systems of that era?
Kind of mind boggling if so.
Not to mention that if you wanted to use floating point arithmetic, you had to do it in software via a library, or use fixed point routines. Floating point units were expensive hardware add ons that were eventually integrated with the cpu.
It is to the credit of the gui toolkits on those machines that they seemed so fast, until you tried to do serious computation. Then you became fully aware that you only had a 7mhz cpu!
On other hand, also always make me question what are we really doing these days. Some tricks are nice and make things better, but how much is wasted on billions of devices every day...
I still think the W95/Motif-CDE/late Amiga years had very decent UIs even by today standards. Especially on Amiga, everything was expected to be interacted with with minimal latency. Everything was absolutely super-responsive. The UIs were legible, functional, and had tremendous information density.
That is the total opposite of today.
Yes.
Some is raw speed - we are talking about going from 10Mhz 16 bit (on a 286 or 68020) to 2.4Ghz+, multiple cores and 64 bit. This probably sums it up best: you needed a processor capable of about 2 MIPS (386sx, 68020) (yes MIPS is a naive benchmark) to run a color GUI nicely. You bog-standard modern i7 laptop does around 100,000 MIPS.
Windows 95 could boot on 4 megabytes of RAM. It could work comfortably on 16 megabytes of RAM! Visual Studio 5, an entire systems IDE, ran comfortably with 32MB of RAM and a Pentium chip! Even if you ignore the extended screen buffer, you'll be hard pressed to find even a basic text editor that will run that lean. What's notepad.exe even doing with all that memory?
You don't need all that much for a GUI if you optimise well. Today's GUIs are built to be quick to develop, not easy to run, because everything needs to be done quickly and only optimised later if people complain about it. Real sad, in my opinion.
Sometimes I wonder what my system is doing with the 2 to 3 gigabytes of RAM and five percent of a quad core CPU running a several gigahertz clock; it's using right after boot; it's certainly not running 500 times the complexity of Windows 95!
There's absolutely no chance that 8bit can do TLS though, and with browsers refusing to connect without https what is often done in the embedded space is to have a separate mcu which is just doing wifi+tcp+webserver. That mcu is 32bit or better (any of the espressif families for example), often eclipsing the power of the rest of the entire system.
And it goes all the way back to Android 2.3
It does add quite a bit of size to APKs (about 4-5 MB) but I think it's worth it to provide better security and connectivity regardless of OS and device age.
It wasn't immediately clear if conscrypt does its own certificate parsing; that's a lot of code if it's not strictly needed. (But it might not be possible to support ecdsa signed certificates without that)
> What finally got it to behave was a combination of [various things...]; changing to less-sensitive library routines that could handle a little corruption; ...
(Insert Spock's-raised-eyebrow.)