4 ms·
I wonder why Go and not Rust. Cloudflare iirc does use Rust for other infrastructure. I think Rust is probably the mainstream language with the best support for
by RcouF1uZ4gsC 4y ago
I wonder why Go and not Rust. Cloudflare iirc does use Rust for other infrastructure. I think Rust is probably the mainstream language with the best support for implementing high-performance/high-security software which cryptographic primitives certainly are. In addition, it is pretty easy to use Rust to write a library that can be callable from C allowing it to be used from multiple languages easily.
Go is a pretty good language in general but it does not have the raw performance that Rust/C/C++ have and doesn’t have the same support for correctness that say Rust does with its powerful type system. (For example affine types you that can help make state machines more robust to incorrect uses).
- latchkey 4y agoThe library was made public in 2018, which is before the somewhat more recent rust fad had taken hold.
- deleted 4y ago[deleted]
- ronsor 4y agoGo makes it easy to integrate it with network applications already written in Go, and linking Rust/C/C++ code to Go is generally a crapfest.
- sandij 4y agoGo has an excellent standard library for cryptography primitives with well-established best practices. It was designed and is maintained in a principled way that likely appeals to more cryptography engineers. Also see this answer by one of its maintainers: https://www.reddit.com/r/crypto/comments/zukgfq/comment/j1l29um/ https://www.reddit.com/r/crypto/comments/zukgfq/comment/j1l2... Some additional reasoning why having a strong standard library is important: https://www.cryptologie.net/article/505/why-not-rust-for-security/ https://www.cryptologie.net/article/505/why-not-rust-for-sec...