8,663 karma · joined August 2, 2010
https://dirkjan.ochtman.nl/ https://github.com/djc https://xavamedia.nl/
[ my public key: https://keybase.io/djc; my proof: https://keybase.io/djc/sigs/8IkleSSBN9hhCZWqkfDndLYhEEfanUDBVDQdS_hqH9U ]
(We were specifically looking for remote folks near EU time zones, maybe local in SF is harder?)
https://github.com/rustls/rustls
Some thoughts on lessons learned from other projects/vulnerabilities:
Assuming that good alternatives are available of course. (I'm a rustls maintainer, so obviously I think that's a pretty good alternative -- we have a C FFI, too!)
So to some extent, does doing this better at the scale of a modern user-facing OS provide enough return on investment?
I actually tried this 6 months ago and in no way found the Linux experience better than macOS even though I would on principle prefer living with an open source OS (I also don’t actually notice a lot of issues on macOS). Of course that was still pretty early for Linux on M1 so I’ll probably try it again in the future.
https://news.ycombinator.com/item?id=31205072
(Edited to point to page 1.)
In the security/cryptography space, Security Cryptography Whatever is pretty great (with tptacek): https://securitycryptographywhatever.buzzsprout.com/.
Personally I still prefer chrono's API; chrono is also much more conservative about the MSRV (currently at 1.38) whereas time consistently bumps to N - 3, which seems like a meaningful difference.
time depends on the libc timezone parsing with some fairly involved workarounds to avoid hitting undefined behavior, while we incorporated time zone parsing in Rust with some caching for chrono.
So I think these are meaningful differences -- feels unlikely that these projects will merge.
I think we're starting to do better again with Chrono, hopefully it won't take us too long to get out a solid 0.5 release.
(I'm one of the current Chrono maintainers -- the previous maintainer burnt out on the project earlier this year, at which point the project sorely needed some TLC.)
https://www.crowdsupply.com/sutajio-kosagi/precursor/updates...
See also this recent blog post:
https://jbp.io/2019/07/01/rustls-vs-openssl-performance.html
I'm pretty sure current versions of rustls are faster than the ones from 2019, but I don't have an intuition for how OpenSSL performance has evolved in the past three years.
I'd like to do another comparison some time soon.
(Yes, the underlying ring crypto library should take advantages of specific instructions available on common CPU architectures.)
rustls has C bindings these days: https://github.com/rustls/rustls-ffi
I've started work on Python bindings too, with the idea that it probably wouldn't be crazy hard to do something that can pass as an `ssl.SSLSocket`. Please sponsor me on GitHub if that's something you'd like to use (https://github.com/sponsors/djc).
Note, we're aware that by far the biggest impediment to adopting rustls is the lack of support for IP addresses in certificates (we currently need a DNS name). This work is funded and should be completed in the next few months.
More importantly, it seems ring has recently hit a long dry spell of getting no new commits at all. There has been some light maintenance work recently, but outside contributions haven't had a credible path into the main branch for a long while now.
I feel like assuming Java is installed doesn't really fit the audience.