code: func csprngReadFull(csprng io.Reader, b []byte) error {
  	n, err := io.ReadFull(csprng, b)
  	if err != nil {
  		return err
  	}
  	if n != len(b) {
  		return ErrInsufficientRandomness
  	}
  	return nil
  }
docs: // csprngReadFull is a thin wrapper around io.ReadFull on a given
  // CSPRNG that also (paranoidly) checks the length.