Re: [icnrg] I-D Action: draft-irtf-icnrg-flic-02.txt

"Mosko, Marc <>" <> Mon, 04 November 2019 23:47 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 782391208F1 for <>; Mon, 4 Nov 2019 15:47:34 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Iwn0sOisx1RR for <>; Mon, 4 Nov 2019 15:47:31 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id C8982120972 for <>; Mon, 4 Nov 2019 15:47:31 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901;; cv=none; b=m83i/QesvssbyyFzer+nLlLc2/gVmoCLUdeAioNtN6PcpNeCCyrDb8z9rS9MG40GIXtmVsFiR2BhjQK7u1vMKA3Jdua1/cufgcmtHGTjLnN2NE/ph7qkk6AYZsi371RrZGBLHxbIlNjbaB4wFu/ntQLY4CVUMW0qO3DCuWkpJKplFBdmTE9HBB69LS7cArn6g4I9eEfQmci9seemknkmr9DNjiGP0tU6azWy+d1zd4kuS64rXdTu9c2OxIL3hP+lgdMV1yNllWVa3FIH6JJ/Xs2wvCCI3SorXnBNVYrtVc+rFTUQ0t9KU5V9DcYSsjMDDHOJYLVRzgSZN5V1hZmO3A==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed;; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=E/sox77NOQBq8AvaZUw+iiLXn2951P3kySyrRDgDxOk=; b=ktaONF1ScnA7M3p2GUAbPr/Kx5PfCbhBp88eVF/xyKbe01eDMauCk1MC3SMOMhaihzRgifJCVRSAZ766LpTg02FXxS7HtTtQaf8gQf1N5pAJ17fSt7AMd/uye6jHyccg7z6F1i+4gSSOcHItj3CdqgZ+jS7G6EEQNZRQjcFn3Idfc++SPsx1jnaEViHurgcmn2Ju6z6YOjPySq1QXoJVnXuQApl5F/UmX60rt3iStPp0E9++48MsoauR0Msg4/kyX+7bHx9MZpcgdmioxATzyL942Wmsqvz8v2g++mptxr1+ABc+bRkKbWiugu6+t6AXukrRUyzPgAZO3smJftwDNw==
ARC-Authentication-Results: i=1; 1; spf=pass; dmarc=pass action=none; dkim=pass; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=selector2-parc-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=E/sox77NOQBq8AvaZUw+iiLXn2951P3kySyrRDgDxOk=; b=fFYDRtZ+qiNEEUsqdx9cfXu5/etyDwuydEsL4zsLKf5x6cLyGwYcvlWGMG7a3xHdxMg3EX8e8Y4Cq+tgkGVKGHI3KXdWgnzonBsLmNhcmEE8JEcluV3Cw3f/7HgPAFcNGExrd6ZAygmPVlIlr+bmPk4QvHTzWC7Cw61CnVJO1RQ=
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2408.24; Mon, 4 Nov 2019 23:47:28 +0000
Received: from ([fe80::78f2:5685:5bc3:3e27]) by ([fe80::78f2:5685:5bc3:3e27%6]) with mapi id 15.20.2408.024; Mon, 4 Nov 2019 23:47:28 +0000
From: "Mosko, Marc <>" <>
To: "" <>
Thread-Topic: [icnrg] I-D Action: draft-irtf-icnrg-flic-02.txt
Thread-Index: AQHVk2fB0xIpfk6+2U6EST4Uz5DNA6d7J3sA
Date: Mon, 4 Nov 2019 23:47:28 +0000
Message-ID: <>
References: <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
user-agent: Microsoft-MacOutlook/10.1e.0.191013
authentication-results: spf=none (sender IP is );
x-originating-ip: []
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 8ad8bea5-1a60-43ca-2dfa-08d7618159ec
x-ms-traffictypediagnostic: BYAPR15MB3109:
x-ms-exchange-purlcount: 5
x-microsoft-antispam-prvs: <>
x-ms-oob-tlc-oobclassifiers: OLM:8882;
x-forefront-prvs: 0211965D06
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(136003)(366004)(39840400004)(396003)(376002)(189003)(199004)(66446008)(66476007)(66556008)(966005)(71200400001)(86362001)(71190400001)(6306002)(64756008)(6246003)(9686003)(6512007)(76116006)(66946007)(3450700001)(6436002)(36756003)(478600001)(14444005)(256004)(6916009)(66574012)(5640700003)(66066001)(2906002)(2501003)(186003)(6486002)(25786009)(58126008)(76176011)(305945005)(316002)(14454004)(2351001)(81156014)(99286004)(81166006)(1730700003)(33656002)(36542004)(486006)(8936002)(8676002)(11346002)(476003)(446003)(7736002)(229853002)(5660300002)(3846002)(102836004)(2616005)(6116002)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR15MB3109;; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:3; A:1;
received-spf: None ( does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: xAKy2EcQuac+NaNyyn/71N2X8L7P63Zbs1n7JHH0hfmshMtWLOemxmUMQN7yoDVnN4vq2OM7HMHO7rFXTHbL6cq/eR+lrxVKQOYDJczsd7e07f19LHu4gR22rdHmEvvKvuzjqpSZYqVqsAqpxiB2FDd9R5F7ydidquwbkSEWNSyHFv99qwS0Iis5/dEIjaB/FjPI9N1wK/K613vL2osc4XrgRB7Mz34/g8bOCiVDQEuD1ZAfqo1AyoAYD208/wSxFXHi+iYC1A3uPREdaNA5yiwjudttAqg0gfoszf+86cd4abbuOl5ngAsuvz2jdcK7Im4teGzRtgvvdk4elFgrHY1qS6iWWYOL5vZLSyav4hrHJgiwG9+c2/xc1XfAaDYlXRf/R7L/vsnP/Fd5UsGiNIvDZpmlcFkMqHT2NHRBdTKNCZiWuR4rBrnQwET0p/hzN1Tock4GwilwO0Zv1H4TRJ5x4l/vZ4EYYJ03X1BLjvE=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 8ad8bea5-1a60-43ca-2dfa-08d7618159ec
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Nov 2019 23:47:28.1601 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 733d6903-c9f1-4a0f-b05b-d75eddb52d0d
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: Hpekw+N6vohTlAkyo1VKFyBnfFZ3NLKspGcYsqNFRWAZIDjSHldlmBZxtOnbEX95
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR15MB3109
Archived-At: <>
Subject: Re: [icnrg] I-D Action: draft-irtf-icnrg-flic-02.txt
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Information-Centric Networking research group discussion list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 04 Nov 2019 23:47:38 -0000


With some help from the original authors, Christian and Chris, and with support from Dave Oran, I have updated the FLIC draft.  Here is a summary of the changes and a few notes on work I know still needs to be completed.

What stayed the same:
- FLIC still uses the idea of a HashGroup that contains an ordered list of content object hashes (implicit digests) of other manifests or data objects.
- FLIC still has metadata in the manifest, both at the Node level (top level) and per-hash group.
- FLIC encryption keys are unrelated to data encryption keys, so retrieval access does not imply data access.

What is different:
- The manifest syntax has changed a little to better accommodate encryption.  In the current format, there is no information leak about the manifest, whereas in the prior format some metadata leaked.  The current format also supports in-place encrypt/decrypt.
- The current draft only supports one encryption key per manifest object, whereas the prior draft allowed keys to vary by Hash Group. 
- The current draft specifies a pre-shared key encryption and two group key methods (that basically come down to the same pre-shared key mechanism).
- There are now plain Pointers and Annotated Pointers inside a hash group.  Plain pointes are as before -- just an array of HashValues.  Annotated Pointers allow adding metadata and extensions to each pointer, such as video decoding hints or other information.
- The encryption mechanism and key location mechanism is extensible.
- Adds the concept of Namespaces.  A namespace defines the naming convention for manifest content objects and application data content objects.  The prior draft assumed CCNx nameless objects.  The three defined namespaces allow for nameless operation, single prefix, or segmented prefix (where each name is unique).  Each HashGroup can use its own namespace, so manifest and application data namespaces could be different.
- Locators can now be an array, not just a single locator.
- The manifest metadata is refactored a little to allow both direct and subtree sizes and direct and subtree hashes.  It is also regularized between the node level and hash group level.
- There is much more detail in this draft, including both NDN and CCNx encodings for all three namespaces.
- There is a Python implementation, which is a little out-of-date with the draft -- it does not support annotated pointers yet.

What still needs to be done:
- Code: bring the reference Python implementation up-to-date with the draft, update the CICN implementation, provide an NDN implementation.
- IANA section.
- Security considerations section.
- Update the text for seeking to a byte location to exploit the new subtree size information, if present.


On 11/4/19, 3:29 PM, "icnrg on behalf of" < on behalf of> wrote:

    A New Internet-Draft is available from the on-line Internet-Drafts directories.
    This draft is a work item of the Information-Centric Networking RG of the IRTF.
            Title           : File-Like ICN Collections (FLIC)
            Authors         : Christian Tschudin
                              Christopher A. Wood
                              Marc Mosko
                              David Oran
    	Filename        : draft-irtf-icnrg-flic-02.txt
    	Pages           : 31
    	Date            : 2019-11-04
       This document describes a bare bones "index table"-approach for
       organizing a set of ICN data objects into a large, File-Like ICN
       Collection (FLIC).  At the core of this collection is a so called
       manifest which acts as the collection's root node.  The manifest
       contains an index table with pointers, each pointer being a hash
       value pointing to either a final data block or another index table
    The IETF datatracker status page for this draft is:
    There are also htmlized versions available at:
    A diff from the previous version is available at:
    Please note that it may take a couple of minutes from the time of submission
    until the htmlized version and diff are available at
    Internet-Drafts are also available by anonymous FTP at:
    icnrg mailing list