base32_encode passes the byte array to check_input, which returns an error if the first byte is 0.
This fails when it shouldn't i.e. 0 is a valid secret.
uint8_t secret_bytes[] = {0, 0, 0, 0};
cotp_error_t err_code;
base32_encode(secret_bytes, 4, &err_code);
// err_code = EMPTY_STRING