From c48e4a8a06f5554ff484f1a60c8e5673e70a897a Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 19 Jan 2020 21:18:03 +0100 Subject: comment on JSON canonicalization --- src/include/taler_json_lib.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/include/taler_json_lib.h') diff --git a/src/include/taler_json_lib.h b/src/include/taler_json_lib.h index be98f2a7e..d5f6b0ba2 100644 --- a/src/include/taler_json_lib.h +++ b/src/include/taler_json_lib.h @@ -107,6 +107,12 @@ TALER_JSON_spec_denomination_signature (const char *field, /** * Hash a JSON for binary signing. * + * See https://tools.ietf.org/html/draft-rundgren-json-canonicalization-scheme-15 + * for fun JSON canonicalization problems. Callers must ensure that + * those are avoided in the input. We will use libjanson's "JSON_COMPACT" + * encoding for whitespace and "JSON_SORT_KEYS" to canonicalize as best + * as we can. + * * @param[in] json some JSON value to hash * @param[out] hc resulting hash code * @return #GNUNET_OK on success, #GNUNET_SYSERR on error -- cgit v1.2.3