Learning purposes - C implementation of SHA256