Re: [Trans] Verifying inclusion proof
Stephen Kent <kent@bbn.com> Sun, 28 June 2015 15:05 UTC
Return-Path: <kent@bbn.com>
X-Original-To: trans@ietfa.amsl.com
Delivered-To: trans@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6F9061B2ED0 for <trans@ietfa.amsl.com>; Sun, 28 Jun 2015 08:05:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.91
X-Spam-Level:
X-Spam-Status: No, score=-0.91 tagged_above=-999 required=5 tests=[BAYES_50=0.8, HTML_MESSAGE=0.001, J_CHICKENPOX_21=0.6, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id I25uzb9xJocf for <trans@ietfa.amsl.com>; Sun, 28 Jun 2015 08:05:03 -0700 (PDT)
Received: from smtp.bbn.com (smtp.bbn.com [128.33.0.80]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 698D91B2EC6 for <trans@ietf.org>; Sun, 28 Jun 2015 08:05:03 -0700 (PDT)
Received: from ssh.bbn.com ([192.1.122.15]:49194 helo=COMSEC.home) by smtp.bbn.com with esmtp (Exim 4.77 (FreeBSD)) (envelope-from <kent@bbn.com>) id 1Z9E8j-000C6Y-Mc for trans@ietf.org; Sun, 28 Jun 2015 11:05:01 -0400
Message-ID: <55900D1D.2030009@bbn.com>
Date: Sun, 28 Jun 2015 11:05:01 -0400
From: Stephen Kent <kent@bbn.com>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: trans@ietf.org
References: <558D61DE.8020402@nic.cz> <CACM=_OeTnNCk+VSiQ1E5T2_a7YkxwxZ2w8HJSg13wtVc2wQUfA@mail.gmail.com>
In-Reply-To: <CACM=_OeTnNCk+VSiQ1E5T2_a7YkxwxZ2w8HJSg13wtVc2wQUfA@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------060009060405070903080204"
Archived-At: <http://mailarchive.ietf.org/arch/msg/trans/NOsHkkFxrZZUmKo-MHre2d9Gxdc>
Subject: Re: [Trans] Verifying inclusion proof
X-BeenThere: trans@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Public Notary Transparency working group discussion list <trans.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/trans>, <mailto:trans-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/trans/>
List-Post: <mailto:trans@ietf.org>
List-Help: <mailto:trans-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/trans>, <mailto:trans-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 28 Jun 2015 15:05:05 -0000
IETF standards need to be unambiguous. Code is very helpful, but it is not a substitute for a rigorous description of how to resolve the issue that Onderj raised. Steve > > On Fri, Jun 26, 2015 at 3:29 PM, Ondrej Mikle <ondrej.mikle@nic.cz > <mailto:ondrej.mikle@nic.cz>> wrote: > > Pardon me if I am asking something obvious, but I'm missing one > piece of > information for inclusion proof verification - the "placement" of each > node returned from "get-proof-by-hash" method in audit_path list > (whether it's left subtree or right subtree). > > Since the hashing of concatenation of strings is not commutative, the > auditor needs to put the two partial tree hashes in correct order > to get > to the correct root hash. > > > Yes, you're quite right. > > > I'd guess the placement of the missing nodes from audit_path could be > derived from leaf_index and tree_size, but can't see a straightforward > way to do it. The reference client does not implement this > verification > either. > > There are a couple of implementations of this in the o/s code base: > C++ is in cpp/merkletree/merkle_verifier.cc > <https://github.com/google/certificate-transparency/blob/master/cpp/merkletree/merkle_verifier.cc> (see > VerifyPath()) > Python is in python/ct/crypto/merkle.py > <https://github.com/google/certificate-transparency/blob/master/python/ct/crypto/merkle.py> (see > verify_leaf_inclusion()) > > HTH. > > Cheers, > Al. > > Ondrej > > _______________________________________________ > Trans mailing list > Trans@ietf.org <mailto:Trans@ietf.org> > https://www.ietf.org/mailman/listinfo/trans > > > > > -- > Google UK Ltd | 123 Buckingham Palace Road | London SW1W 9SH | > Registered in England Number: 3977902 > > > _______________________________________________ > Trans mailing list > Trans@ietf.org > https://www.ietf.org/mailman/listinfo/trans
- [Trans] Verifying inclusion proof Ondrej Mikle
- Re: [Trans] Verifying inclusion proof Adam Eijdenberg
- Re: [Trans] Verifying inclusion proof Al Cutter
- Re: [Trans] Verifying inclusion proof Stephen Kent
- Re: [Trans] Verifying inclusion proof Ben Laurie
- Re: [Trans] Verifying inclusion proof Matt Palmer
- Re: [Trans] Verifying inclusion proof Ben Laurie
- Re: [Trans] Verifying inclusion proof Stephen Kent
- Re: [Trans] Verifying inclusion proof Phillip Hallam-Baker
- Re: [Trans] Verifying inclusion proof Matt Palmer
- Re: [Trans] Verifying inclusion proof Ben Laurie
- Re: [Trans] Verifying inclusion proof Ben Laurie
- Re: [Trans] Verifying inclusion proof Adam Eijdenberg
- Re: [Trans] Verifying inclusion proof Matt Palmer
- Re: [Trans] Verifying inclusion proof Adam Eijdenberg
- Re: [Trans] Verifying inclusion proof Adam Eijdenberg
- Re: [Trans] Verifying inclusion proof Ben Laurie
- Re: [Trans] Verifying inclusion proof Ondrej Mikle