a buffer can be supplied for the digest to be written to
Remarks: This method is endianness-aware: The returned array has always the least-order byte at byte [0] (big endian).
If the buffer is not large enough to hold the digest, a new buffer is allocated and returned. The algorithm state is always reset after a call to binaryDigest. Use the digestSize method to find out how large the buffer has to be.
Computes the digest and resets the state