Pure Go implementation of the NaCL set of APIs
github.com
github.com
I will wait for other companies to use it first - but it looks like a very level-headed implementation that won't be hard for the author to maintain - and a very useful tool.
It would be nice if the golang devs would pick an Argon2 implementation too (Blake2 hash is already there); it always feels prudent not to use any crypto libraries lest they receive some sort of semi-official blessing from the either language's own creators or renowned cryptographers.
The library (as a wrapper) doesn't do anything with regards to timing attacks.
It is pretty trivial to defend from timing attacks in a language like go (just race a goroutine with a delay). I agree that it's a good point to bring up though.
I'm not sold on the 'race a goroutine' solution either, but I'm not much of a Go programmer.
1. https://github.com/istio/istio/blob/master/devel/README.md#s... 2. https://github.com/lyft/envoy/blob/master/DEVELOPER.md
I'm interested in Bazel because of the speed/caching parts, and because Go might be headed in that direction soon.
Building the project involves building 3 repos from different git branches before building my little C program. Literally just
git clone && checkout && ./autogen.sh && ./configure && make install
3 times.
I'd love if I could just make a BUILD file for bazel and be able to just have $MAGIC happen. Especially since it looks like the bazel c target has 'linkstatic' for building a static binary.
Thanks Kevin.