#90: Clarify how to turn a MerkleTreeLeaf into a leaf hash
Section 3.5 "Merkle Tree" which is cross-referenced from "Log Client
Messages" (sections 4.5 and 4.6) describes how 'the "hash" must be
calculated'.
Section 3.5 first describes the data structure and then finishes with:
'The leaves of the Merkle Tree are the leaf hashes of the corresponding
"!MerkleTreeLeaf" structures.'
At least two client implementers have incorrectly assumed that meant that
the hash should be calculated as:
{{{HASH(MerkleTreeLeaf)}}}
If the implementer noticed the word "leaf" before hash, and carefully read
section 2.1 they would realize that what they really need is:
{{{HASH(0x00 || MerkleTreeLeaf)}}}
I propose we add the following line to the last paragraph in Section 3.5
to make this clearer:
{{{Note that leaf hashes are calculated as HASH(0x00 || MerkleTreeLeaf).
See Section 2.1 for further details.}}}
Confused users:
1. http://comments.gmane.org/gmane.comp.security.ssl.certificate-
transparency.general/1204
2. Me, independently doing exactly the same, first calling get-entries and
then hashing the result leaf_input and sending to get-proof-by-hash.
--
-------------------------+-------------------------------------------------
Reporter: | Owner: draft-ietf-trans-
[email protected] | [email protected]
Type: defect | Status: new
Priority: minor | Milestone:
Component: rfc6962-bis | Version:
Severity: - | Keywords:
-------------------------+-------------------------------------------------
Ticket URL: <http://trac.tools.ietf.org/wg/trans/trac/ticket/90>
trans <http://tools.ietf.org/trans/>
_______________________________________________
Trans mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/trans