diff --git a/iep-0002/index.html b/iep-0002/index.html index 44e3140..055325d 100755 --- a/iep-0002/index.html +++ b/iep-0002/index.html @@ -271,6 +271,13 @@ +
Bibliography
+Bibliography
+Collet, Yann. xxHash: Extremely fast hash algorithm. +
Collet, Yann. xxHash: Extremely fast hash algorithm.
Accessed July 2022, available at https://cyan4973.github.io/xxHash/ ↩
NOTE 1
+Depending on security and uniqueness requirements, applications can generate and store +Instance-Codes up to a length of 256 bits in steps of 32 bits. Longer variants of an +Instance-Code are extensions of the shorter versions (which function only as checksums) and +remain compatible while improving the security of the hash.
+NOTE 2
+The use of tree-based hashing supports efficient containment-proofs, verified streaming and +verification of data from trusted and untrusted sources. A data delivery application can +provide cryptographic proofs for partial data and streams such that the receiving application +can incrementally verify chunks of data against a given Instance-Code.
+The Instance-Code shall have the data format illustrated in Figure 12.
+EXAMPLE 1: 64-bit Instance-Code in its canonical form:
+ISCC:IAAZ3NGA3HTIYUQD
+EXAMPLE 2: 256-bit Instance-Code in its canonical form:
+ISCC:IADZ3NGA3HTIYUQD3SGC737FF6S5KRTRXY5DEU7ANCEMVTT4MDS2OQY
+The input for calculating the Instance-Code shall be the bytes of a file, without reference to +their meaning or structure.
+Instance-Code processing shall generate the following output elements:
+iscc
: the Instance-Code in its canonical form (required);datahash
: a cryptographic hash of the input file encoded as multihash (optional);filesize
: the size of the input file in bytes (optional).An ISCC processor shall calculate the Instance-Code as follows:
+For further technical details see source-code in modules +code_instance.py of the +reference implementation.
+NOTE
+The merkle tree chunk size is defined by the BLAKE3 1 algorithm to be 1024 bytes.
+An implementation of the Instance-Code algorithm shall be regarded as conforming to the standard +if it creates the same Instance-Code as the reference implementation for the same data input.
+NOTE
+The ISCC reference implementation uses the open source BLAKE3 1 library for merkle tree +hashing and appropriate use of this software will generate the same codes as the reference +implementation.
+O’Connor, J., Aumasson, J.P., Neves, S., Wilcox-O’Hearn, Z., BLAKE3: one function, fast everywhere. +Version 20211102173700, accessed July 2022. +Available at https://github.com/BLAKE3-team/BLAKE3-specs/blob/master/blake3.pdf ↩↩
+