[ltans] Question about RFC 4998 Section 4.2 Archive TimeStamp Generation

Satoru Otsubo <hatt3@otip.jp> Sun, 20 December 2009 10:52 UTC

Return-Path: <hatt3@otip.jp>
X-Original-To: ltans@core3.amsl.com
Delivered-To: ltans@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3B8113A680B for <ltans@core3.amsl.com>; Sun, 20 Dec 2009 02:52:20 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.632
X-Spam-Level:
X-Spam-Status: No, score=-1.632 tagged_above=-999 required=5 tests=[AWL=-0.892, BAYES_20=-0.74]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id bQX06q+omkUv for <ltans@core3.amsl.com>; Sun, 20 Dec 2009 02:52:19 -0800 (PST)
Received: from auth.gate-on.net (auth.gate-on.net [210.197.72.170]) by core3.amsl.com (Postfix) with ESMTP id 63B2D3A6808 for <ltans@ietf.org>; Sun, 20 Dec 2009 02:52:18 -0800 (PST)
Received: from otip.otip.jp (KD113159121125.ppp-bb.dion.ne.jp [113.159.121.125]) by auth.gate-on.net (Postfix) with ESMTP id 8F46D9F13C for <ltans@ietf.org>; Sun, 20 Dec 2009 19:52:02 +0900 (JST)
Received: from [192.168.0.2] (helo=localhost.localdomain) by otip.otip.jp with smtp (Exim 4.63) (envelope-from <hatt3@otip.jp>) id 1NMJOM-00069V-Fb for ltans@ietf.org; Sun, 20 Dec 2009 19:52:02 +0900
Date: Sun, 20 Dec 2009 19:52:02 +0900
From: Satoru Otsubo <hatt3@otip.jp>
To: ltans@ietf.org
Message-Id: <20091220195202.1754dc1d.hatt3@otip.jp>
X-Mailer: Sylpheed version 2.3.0beta5 (GTK+ 2.8.20; i486-pc-linux-gnu)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Subject: [ltans] Question about RFC 4998 Section 4.2 Archive TimeStamp Generation
X-BeenThere: ltans@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: LTANS Working Group <ltans.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/ltans>, <mailto:ltans-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ltans>
List-Post: <mailto:ltans@ietf.org>
List-Help: <mailto:ltans-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ltans>, <mailto:ltans-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 20 Dec 2009 10:52:20 -0000

I am Satoru Otsubo.

An example of a constructed hash tree for 3 data groups is
 presented at RFC 4998 Section 4.2.
Here is a copy of Figure 1.

                   h123
                     x
             xxxxxxxxxxxxxxxxxxx
             x                 x 
             x                 x
            h12                x
             x                 x
       xxxxxxxxxxxxx           x
       x           x           x
       x           x           x
       h1        h2abc         h3
                   x
               xxxxxxxxxxx
               x    x    x 
               x    x    x 
              h2a  h2b  h2c

            ( Figure 1 )

And, the reduced hash tree rht1 for data group 1 is shown as follows:

         ( ( h2abc  h1 ) ( h3 ) )

            ( Figure 2 (simplified))

    rht1 = SEQ(pht1,pht2),
      where pht1 = SEQ(h2abc, h1), and
            pht2 = SEQ(h3)

But I think the reduced hash tree rht1 for data group 1 is preferably the following.

         ( ( h1 ) ( h2abc ) ( h3 ) )

    rht1 = SEQ(pht1,pht2,pht3),
      where pht1 = SEQ(h1),
            pht2 = SEQ(h2abc), and
            pht3 = SEQ(h3)

That is, any of partialHashTrees includes only one hash and data group 1
 is placed at the first partialHashTree. 
On verification, I think,
 (1) h1 and h2abc are binary sorted, concatinated and hashed, then,
 (2) the result of (1) and h3 are binary sorted, concatinated and hashed.

Why in RFC 4998 Section 4.2, are h2abc and h1 gathered as a partialHashTree ?
And why h2abc and h1 are binary sorted in advance
 and h1 is placed at the second position in a partialHashTree,
 assuming the binary ordering is h2abc<h1 ?


(By the way, I think the reduced hash tree rht3 for data group 3 is the following.

           ( ( h3 ) ( h12 ) )

    rht3 = SEQ(pht1,pht2),
      where pht1 = SEQ(h3), and
            pht2 = SEQ(h12)


This is wrong ?
If so, I appreciate if anyone shows the correct reduced hash tree.

)

Thanks in advance.