diff options
Diffstat (limited to 'doc/paper/main.tex')
-rw-r--r-- | doc/paper/main.tex | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/doc/paper/main.tex b/doc/paper/main.tex index bc89d56..9f3cdad 100644 --- a/doc/paper/main.tex +++ b/doc/paper/main.tex @@ -121,11 +121,26 @@ Thus, it should only hold the following elements: \begin{itemize} \item A version number, which describes the version of the format used \item A list of pointers to parent blocks - \item A pointer to a metadata Block + \item An (optional) pointer to a metadata Block \end{itemize} A block may hold more than one pointer to a parent block to make merges possible on the block-level. + +A block that references more than one parent should not contain any pointer to a +metadata object. +If a "merge block" would point to metadata, complexity would be increased +unecessarily\footnotemark[1]. + +\footnotetext[1]{ + A possible optimization would be that merge-blocks are defined in a way that + two nodes can always generate the byte-exact same merge block. + This would result in the possibility of two devices that do not know + eachother to merge two branches of a chain with the exact same merge block + object. + Encoding metadata like a timestamp in the "Block" type would prevent that. +} + \ref{pic:blockchain} describes a minimal chain of blocks. Each block, save $A$, points to its predecessor. $D$ points both to $B$ and $C$, because it merges these blocks, that were both |