diff --git a/spec/index.html b/spec/index.html index 7e2972b..83a5d4e 100644 --- a/spec/index.html +++ b/spec/index.html @@ -270,7 +270,9 @@

Uses of Dataset Canonicalization

As a result, a graph signature can be obtained by hashing a canonical serialization of the resulting canonicalized dataset, allowing for the isomorphism and digital signing use cases. - As blank node identifiers can be stable even with other changes to a graph (dataset), + This specification does not define such a graph signature.

+ +

As blank node identifiers can be stable even with other changes to a graph (dataset), in some cases it is possible to compute the difference between two graphs (datasets), for example if changes are made only to ground triples, or if new blank nodes are introduced which do not create an automorphic confusion @@ -281,6 +283,19 @@

Uses of Dataset Canonicalization

it may be possible to correlate the original blank node identifiers used within that N-Quads document with those issued in the canonicalized dataset.

+ +

Although alternative hash algorithms might be used + with this specification, + applications ought to carefully weigh the advantages + and disadvantages of using an alternative hash function. + This is the case, in particular, for any representation of the canonical n-quads form + or issued identifiers map + that does not identify the associated hash algorithm. Any use case + that requires reproduction of the same output is expected to + unequivocally express or communicate the internal + hash algorithm that was used when generating + the canonical n-quads form. +

@@ -375,6 +390,10 @@

Terms defined by this specification

and SHOULD support the ability to specify other hash algorithms. Using a different hash algorithm will generally result in different output than using the default.

+ +

There is no expectation that the default hash algorithm + will also be used by any application creating a hash digest of the + canonical N-Quads result.

mention
@@ -2881,8 +2900,15 @@

Insecure Hash Algorithms

and implementations of it can be parameterized to use a different hash function, without the need to make any changes to the canonicalization algorithm itself. - However, using a different hash algorithm will generally lead to different results. + However, using a different hash algorithm will generally lead to different results; + applications making use of this specification should carefully weigh the advantages + and disadvantages of using an alternative hash function.

+ +

The possible implications of the default hash algorithm + becoming insecure are mitigated by that fact that no internal hash + values are revealed, and the canonicalization algorithm is designed to cope + with first-degree hash collisions.