blake2b: implement BLAKE2X

This CL implements the BLAKE2X, a extensible-output function (XOF), on
top of BLAKE2b. BLAKE2X is described in https://blake2.net/blake2x.pdf

Fixes golang/go#19513

Change-Id: Ibf33c764c9902e90fd9c8e375583ed153f4de1c7
Reviewed-on: https://go-review.googlesource.com/38055
Reviewed-by: Andreas Auernhammer <aead@mail.de>
Reviewed-by: Adam Langley <agl@golang.org>
3 files changed