While I mostly agree with this, I would point out that mandatory TLS introduces a decent bit of complexity, both in implementing TLS itself (where you should really use one of the established TLS libraries in your language of choice) and in figuring out what to do with certificates (TOFU, etc).
It’s still a very simple protocol of course, but not quite so simple that you can negotiate a connecting manually over telnet, for example. (Some versions of netcat, on the other hand, do support TLS.)
Isn’t that a (implementation) detail beyond the point of uselessness though? The big point for me is there. To keep it with the metaphor, that tree is also quite a complex structure, yet still useless.
While I mostly agree with this, I would point out that mandatory TLS introduces a decent bit of complexity, both in implementing TLS itself (where you should really use one of the established TLS libraries in your language of choice) and in figuring out what to do with certificates (TOFU, etc).
It’s still a very simple protocol of course, but not quite so simple that you can negotiate a connecting manually over telnet, for example. (Some versions of netcat, on the other hand, do support TLS.)
Isn’t that a (implementation) detail beyond the point of uselessness though? The big point for me is there. To keep it with the metaphor, that tree is also quite a complex structure, yet still useless.