+int sha512hash(uint8_t *input, int length, uint8_t *hash) {
+ if (!hash || !input)
+ return 1;
+
+ mbedtls_sha512_context sctx;
+ mbedtls_sha512_init(&sctx);
+ mbedtls_sha512_starts(&sctx, 0); //SHA-512, not 384
+ mbedtls_sha512_update(&sctx, input, length);
+ mbedtls_sha512_finish(&sctx, hash);
+ mbedtls_sha512_free(&sctx);
+
+ return 0;
+}
+