Re: [IPsec] [Lwip] Paul Wouters' Discuss on draft-ietf-lwig-minimal-esp-08: (with DISCUSS and COMMENT)

Daniel Migault <mglt.ietf@gmail.com> Mon, 18 July 2022 13:03 UTC

Return-Path: <mglt.ietf@gmail.com>
X-Original-To: ipsec@ietfa.amsl.com
Delivered-To: ipsec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AB299C14CF1F; Mon, 18 Jul 2022 06:03:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.106
X-Spam-Level:
X-Spam-Status: No, score=-2.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Th8Enhxm2lXO; Mon, 18 Jul 2022 06:03:01 -0700 (PDT)
Received: from mail-pg1-x533.google.com (mail-pg1-x533.google.com [IPv6:2607:f8b0:4864:20::533]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D4D29C157B35; Mon, 18 Jul 2022 06:02:10 -0700 (PDT)
Received: by mail-pg1-x533.google.com with SMTP id 23so10487327pgc.8; Mon, 18 Jul 2022 06:02:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=7tktDdSZ18rau3T4lO30SfBF9j0OBsMhcfTmg92fk6M=; b=l6Ci8R06RmzegJryKdO4MnqLltWbImPfptzxgrnsqVVcnXibfU+19Xf9OASG1xiulP j5xf4H4x2O64/j5XUBX8mT0ty/lkV8nbLWoZe62y0G17XMIERMfPImdTkVljzoSrT1Mz e23t/7OQ3jHuvlmRadZX2tDN8qkZfME/jMET8bdp5K+orjNn8+nV8+AGlTeYU2h9T+1x +7iXbk18FjxYCzKhdUcTaCy7qgUWzBsQOSX5s6ff71cq3DU5OaTY98Y4ejN9LxuDuoL4 v/ePKCmBAHh+l/F3/1c9OPbO/pQshnCBSNvsw6LnLa9+93sSekFx/FRWJLDokmR+yueU T4DA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=7tktDdSZ18rau3T4lO30SfBF9j0OBsMhcfTmg92fk6M=; b=lwZKbF7xl/hc48tSRAa/WYgFQjrfUZVS7zs1sK76PstcRyln3AX1vjqMR4gUWMceUj qE4ISkugUeK57MVTjojHselPn7u7iKgXMzIkIfqhXFhGSAjsSl/TeiQFJ7O5ntEqQVHf FaqiQJK51yMs1PN6hKoybYSRSh8rooXp730wF4bvKQ5ADJkaECVu0877N1JUCQlxMw4Q pAuDEdnGqWTiZcEdmpJcE99tuZMo0y34VgbmaBNCZDNL3+7mfKAcc6RBPCELplIuaIjr Mo6TSESw5MEM5R4sLnnlwHsBrXkh71F2nbuS06R99qDVLPutyD2n6ec/NiktbqmZoK6J +e+Q==
X-Gm-Message-State: AJIora98QXI6mICfuTg/Vr5KwNrNoDAQPPdM1Pf0sdVkg4AJ7NP05mdy L7yG6dETbrM9BVY7l69sEGIqc9UnV5zYVcPfAZk=
X-Google-Smtp-Source: AGRyM1vW9LWVxd2fkPvwqBmAFuK5WEBelc7PGsBvge8p4dJeHQY8hdRXTadBtPkFwvFiINOVkrW3J43fJrUcvczca1M=
X-Received: by 2002:a05:6a00:1a49:b0:528:6ea0:14e2 with SMTP id h9-20020a056a001a4900b005286ea014e2mr27600247pfv.22.1658149329116; Mon, 18 Jul 2022 06:02:09 -0700 (PDT)
MIME-Version: 1.0
References: <164919648646.8778.6947253487684946962@ietfa.amsl.com> <CADZyTkkdXs8tJu_J5M_Yb-VC2SbSECLen_igUrGVGtrNFng6QA@mail.gmail.com> <CAGL5yWb5oaridQzFdxoWQdieNxDb=pOB_5sMCBM+HdgCsn_NeA@mail.gmail.com> <CADZyTkk616G+U5323wBXhR35K=FojD2+V_L5UEv-=6Xzz-A4Tw@mail.gmail.com>
In-Reply-To: <CADZyTkk616G+U5323wBXhR35K=FojD2+V_L5UEv-=6Xzz-A4Tw@mail.gmail.com>
From: Daniel Migault <mglt.ietf@gmail.com>
Date: Mon, 18 Jul 2022 09:01:57 -0400
Message-ID: <CADZyTkkw1h9F9pDrAYgQDOQ-BCwiezocMba4H3WUh9qvavmRYA@mail.gmail.com>
To: Paul Wouters <paul.wouters@aiven.io>
Cc: The IESG <iesg@ietf.org>, lwip@ietf.org, Mohit Sethi <mohit.m.sethi@ericsson.com>, draft-ietf-lwig-minimal-esp@ietf.org, lwig-chairs@ietf.org, IPsecME WG <ipsec@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000bf28b005e413f9dd"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipsec/rm60ytnD9scLofXo_rhakE7mzpY>
Subject: Re: [IPsec] [Lwip] Paul Wouters' Discuss on draft-ietf-lwig-minimal-esp-08: (with DISCUSS and COMMENT)
X-BeenThere: ipsec@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Discussion of IPsec protocols <ipsec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipsec>, <mailto:ipsec-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipsec/>
List-Post: <mailto:ipsec@ietf.org>
List-Help: <mailto:ipsec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipsec>, <mailto:ipsec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 18 Jul 2022 13:03:03 -0000

Hi all,

My reading of the datatracker is that the document in IESG Evaluation::AD
Followup for 117 days. I do not see any follow-up with the following email
from may 25 with the latest changes and believe all concerns have been
addressed. I am wondering what prevents the document from being sent to the
RFC queue and if there is anything expected from my side.

Yours,
Daniel


On Mon, Apr 25, 2022 at 2:19 PM Daniel Migault <mglt.ietf@gmail.com> wrote:

> Hi Paul,
>
> Please find my response to your comments. The current version of the file
> integrates the language changes as well as changes to address the concerns
> of this thread:
>
>
> https://github.com/mglt/draft-mglt-lwig-minimal-esp/commit/d7710c19802bdce4c978d71ad303b739e1406f1e
>
> Yours,
> Daniel
>
> On Tue, Apr 12, 2022 at 5:10 PM Paul Wouters <paul.wouters@aiven.io>
> wrote:
>
>>
>> On Tue, Apr 5, 2022 at 10:09 PM Daniel Migault <mglt.ietf@gmail.com>
>> wrote:
>>
>>> Hi Paul,
>>>
>>> Thanks for commenting. Please find my responses below.
>>>
>>> Section 2:
>>>
>>>>
>>>> It suggests a partial SPI match can be used, based on the assumption
>>>> that
>>>> the SPI number is known to have mostly zeros because the device only
>>>> uses
>>>> a hardcoded limited set (eg 257 to 260). While this is true for the
>>>> outbound
>>>> SPI, this may not be true for the inbound SPI, especially if the peer
>>>> is not
>>>> a "minimal ESP" device but a regular multipurpose OS. I think some
>>>> clarification
>>>> is needed for this minimum implementation optimization.
>>>>
>>>>
>>> I probably missed the comment. I understand that a partial SPI match
>>> would mean that only a subset of bytes will be considered, but I cannot
>>> find text that suggests it. I do not also see any mention of special values
>>> for the SPI. I also understand from the comment that the text is suggesting
>>> some SPI values but I cannot find what text suggests it - at least for a
>>> very small subset.
>>>
>>
>> This was based on:
>>
>>     The index may be based on
>>     the full 32 bits of SPI or a subset of these bits.
>>
>>
>> If you index it on a partial length, you need to have generated these as well with reduced length or else this operation would not provide unique indexes.
>>
>> And you are not generating the peer's SPI, so those indexes need to use the full 32 bit too.
>>
>> Perhaps you mean to say that for indexing your own generated SPIs, you might know you only need to look at a subset of bytes?
>>
>> Perhaps you can clarify the indexing sentence ?
>>
>> The SPI field (4 bytes) is decoupled between the SPI value (3 bytes) and
> a rekey index (1 byte).
>
> Here is the text that I believe addresses your concern:
> """
>  Alternatively, some constrained devices will not implement IKEv2 or
> Minimal IKEv2 and as such will not be able to manage a roll-over between
> two distinct SAs. In addition, some of these constrained devices are also
> likely to have a limited number of SAs - likely to be indexed over 3
> bytes only for example. One possible way to enable a rekey mechanism with
> these devices is to use the SPI where for example the first 3 bytes
> designates the SA while the remaining byte indicates a rekey index.
>
> SPI numbers can be used to implement tracking the inbound SAs when
> rekeying is taking place. When rekeying a SPI, the new SPI could use the
> SPI bytes to indicate the rekeying index.
> """
>
>>
>>
>>> [2]
>>>>
>>>> Section 2.1:
>>>>
>>>>        SPI that are not randomly generated over 32 bits may lead to
>>>> privacy
>>>>        and security concerns.
>>>>
>>>> The "may lead to security concerns" would be something that at the very
>>>> least needs
>>>> to be understood and specified in the Security Considerations section.
>>>> If it is too
>>>> difficult to determine the concerns, perhaps this optimization should
>>>> be removed from
>>>> the draft.
>>>>
>>>
>>>
>>>>
>>>>        As a result, the use of alternative designs requires careful
>>>> security
>>>>        and privacy reviews.
>>>>
>>>> If it is known this proposal requires careful security reviews, were
>>>> these done? If
>>>> so, why not replace this warning of danger with the actual output of
>>>> those reviews?
>>>> If reviews were not done, it would imply this document hasn't fully
>>>> worked out its
>>>> Security Considerations.
>>>>
>>>
>>> The concerns are explicitly mentioned in this section with what needs to
>>> be considered.
>>>
>>
>> This is mostly a language problem then. When a document states " the use
>> of alternative designs requires careful security and privacy reviews",
>> it implies the reader needs to do these themselves and these were not
>> part of the document. I had given some language improvement suggestions
>> separately that might cover this? If not, please clarify this issue.
>>
>> current text is:
>
> """
>  As a result, the use of alternative designs requires careful security
> and privacy reviews.
> """
>
>
>
>> [3]
>>>>
>>>>        SPI can typically be used to implement a key update
>>>>
>>>> What is a "key update" in this context? It seems this section is
>>>> suggesting to use
>>>> part of the SPI octet space to signal things to another part of the
>>>> code on the device?
>>>> If so, would that code part then clear out those overloaded SPI octets
>>>> or would they go
>>>> (unencrypted!) over the network for everyone to see?
>>>>
>>>> The text says:
>>> """
>>> SPI can typically be used to implement a key update with the SPI
>>> indicating the key is being used.
>>> For example, a SPI might be encoded with the Security Association
>>> Database (SAD) entry on a subset of bytes (for example 3 bytes), while
>>> the remaining byte indicates the rekey index.
>>> """
>>>
>>> The last byte of the SPI indicates the key index and as the SPI is
>>> unencryted.
>>>
>>
>> I know what the text says, but that text is not clear. Please clarify or
>> expand what "key update" is.
>>
>
> The text here seems clearer:
> """
>  Alternatively, some constrained devices will not implement IKEv2 or
> Minimal IKEv2 and as such will not be able to manage a roll-over between
> two distinct SAs. In addition, some of these constrained devices are also
> likely to have a limited number of SAs - likely to be indexed over 3
> bytes only for example. One possible way to enable a rekey mechanism with
> these devices is to use the SPI where for example the first 3 bytes
> designates the SA while the remaining byte indicates a rekey index.
>
> SPI numbers can be used to implement tracking the inbound SAs when
> rekeying is taking place. When rekeying a SPI, the new SPI could use the
> SPI bytes to indicate the rekeying index.
> """
>
>>
>>
>>>
>>>
>>>> [4]
>>>>
>>>>        While the use of randomly generated SPIs may reduce the leakage
>>>> or
>>>>        privacy of security related information by ESP itself, these
>>>>        information may also be leaked otherwise.
>>>>
>>>> This is not a strong argument. This sentence and the entire paragraph
>>>> really seem to
>>>> want to say something like "if you can see the network packets, the
>>>> information
>>>> leak would already be present by seeing the encrypted traffic,
>>>> irrespective of
>>>> whether the SPI is truly random or selected in a way that identifies
>>>> the manufacturer"
>>>>
>>>>
>>> The text says random SPI does not guarantee privacy sensitive
>>> information is not leaked.
>>>
>>
>> That sentence (and the entire paragraph) don't really make any concrete
>> good statement. I tried to paraphrase a better one above. If you think I
>> misinterpreted your words,
>> please provide a clearer text for the draft.
>>
>
>  I think the text has been removed.
>
>>
>>
>>>
>>>
>>>> [5]
>>>>
>>>>        The security of all data
>>>>        protected under a given key decreases slightly with each message
>>>>
>>>> I do not know of a generic claim like this for ESP. Can a reference be
>>>> provided?
>>>>
>>>
>>> It seems like a generic property for cryptographic keys. Quoting the
>>> security consideration of RFC4106:
>>> """
>>>
>>> The other consideration is that, as with any encryption mode,
>>>
>>> the security of all data protected under a given security
>>>
>>> association decreases slightly with each message.
>>>
>>> """
>>>
>>>
>> Ok, it is a bit of an open door, and not really information that an
>> implementer can do anything with, but consider this issue resolved.
>>
>>
>> In general, rekeying is done to avoid decrypting previous traffic in case
>>>> of a key compromise.
>>>> Or perhaps you mean the limits of algorithms like AES_CBC (or 3DES)
>>>> with respect to
>>>> birthday and collision attacks? eg the commonly used maximum of 2^32-1
>>>> crypto operations
>>>> (which is not the same as maximum packets)
>>>>
>>>> In these cases, the SN is only relevant for very high speed links, eg
>>>> gbps and would never
>>>> apply to an IoT device that requires minimal ESP.
>>>>
>>>
>>> There is also the case, where an IoT device is provisioned with a
>>> lifetime key in which case the key will be used as long as the device is
>>> alive. This addresses a comment from Nancy as far as I remember and I agree
>>> with her.
>>>
>>
>> If you send 1 packet per second, and use the SN to represents seconds
>> since SA established, you have 136 years for your constrained device.
>> Anyway, this discussion does not matter as it was just my text trying to
>> explain the previous item, which I said can be considered resolved.
>>
>>
>
>>
>>
>>>
>>>> [6]
>>>>
>>>> As noted in the TSVART review:
>>>>
>>>>        Also, for devices that spend significant time sleeping, the SN
>>>>        would jump hugely on first waking. That shouldn't require any
>>>>        larger window (unless a stale packet from prior to the sleep was
>>>>        only released after a new packet on waking). But the receiver
>>>>        would need to be able to somehow detect massive jumps in the high
>>>>        order bits that are not communicated in the SN field.
>>>>
>>>> Perhaps the document can add more specific detail on how to use the
>>>> commonly
>>>> implemented time values into valid SNs that avoid ESN issues ?
>>>>
>>>>
>>>> The implementation itself will depend on the application - especially
>>> if other mechanisms than those implemented by the incrementation counter
>>> are needed. Maybe you can let me know what additional text you expect ?
>>>
>>
>> Think of an implementer that is not aware of what application will run on
>> this constrained device with IPsec stack. How should they implement SN's?
>> That is the advise that is missing in this document.
>>
>
> I added:
> """
> The RECOMMENDED way for multipurpose ESP implementation is to increment a
> counter for
> each packet sent.
> """
>
>>
>>
>>> """
>>> Of course, one should only consider use of a clock to generate SNs if
>>> the application will inherently ensure that no two packets with a given SA
>>> are sent with the same time value.
>>> Note however that standard receivers are generally configured with
>>> incrementing counters and, if not appropriately configured, the use of a
>>> significantly larger SN difference may result in the packet out of the
>>> receiver's windows and that packet being discarded.
>>> """
>>>
>>
>> While this is a slight hint to an implementer, it is not enough for them.
>> Why not give them better advise?
>>
>
> This seems heavily dependent on the application. What stronger advice
> would you have in mind ?
>
>>
>> [7]
>>>>
>>>>        so the constrained device may not proceed to such checks
>>>>
>>>> The language issue here inverts the meaning. What is meant is "so the
>>>> constrained device
>>>> may omit such checks"
>>>>
>>>
>>>  I agreed and changed it.
>>>
>>
>> Resolved.
>>
>>
>>>
>>>> [8]
>>>>
>>>>        TFC has not yet being widely adopted for standard ESP traffic.
>>>>
>>>> It is widely implemented (eg in Linux). I agree that using it seems
>>>> rare.
>>>> I am not convinced the reason for this is as is written. The issue I
>>>> think
>>>> more relates to deciding to what size to pad. The easiest is to use the
>>>> MTU,
>>>> but due to various encapsulation techniques (ESPinUDP, PPP-OE) it is
>>>> not always
>>>> clear what the MTU of the IPsec link is. And path MTU discovery with
>>>> IPsec does
>>>> not really work in practice.
>>>>
>>>
>> Note that by comment was regarding the "adopted". This can be interpreted
>> as "implemented" or "used".
>> Perhaps just change adopted to deployed? And change "not yet" as I
>> presume you have no expection
>> for this to change in the future ?
>>
>
> I added your suggestion:
>
> """
> TFC has been widely implemented but it is not widely deployed for ESP
> traffic.
> """
>
>>
>>
>>>
>>>> But if the application/device tends to send packets between 1 and say
>>>> 125 bytes,
>>>> it could always pad to 125 to not leak any information by packet size.
>>>> The question
>>>> on when to do this or not really depends on the traffic being
>>>> protected. And if this
>>>> the case, then it might be best to let the IKEv2 negotiation determine
>>>> whether or not
>>>> to use this - just like regular use of TFC.
>>>>
>>>> Regardless, TFC is optional and a minimum implementation can just omit
>>>> it. Since
>>>> this document would also be combined with efforts reducing sending
>>>> bytes to
>>>> preserve energy, it would make sense to avoid using TFC padding.
>>>> Especially for sensors
>>>> that for example just always send a one byte temperature value to begin
>>>> with.
>>>>
>>>>        Such information could be used by the attacker in case a
>>>> vulnerability is
>>>>        disclosed on the specific device.
>>>>
>>>> I don't think "vulnerability" here is the issue. It could lead to
>>>> exposing the size
>>>> of the original packet being protected by IPsec, which could (or could
>>>> not) leak
>>>> information to an observer on the network.
>>>>
>>>
>>> What I meant is that traffic shaping can be used to identify the device,
>>> which could be useful when such a device is known to be vulnerable.
>>> The vulnerability comes after traffic shaping has been performed (see also
>>> first section).
>>>
>>
>> Then just omit the "in case a vulnerability is disclosed". Just say the
>> information could be used.
>>
>> Separate note, I personally find "traffic shaping" a confusing term as it
>> seems to be used for different things.
>>
>>  I believe that providing an example on how the information can be used
> is rather clarifying. The current text says:
> """
> Such information can be used, for example, by an attacker in case a
> vulnerability is known for the specific device or application.
> """
> traffic shaping has been removed.
>
>
>>
>>>
>>>> [9]
>>>>
>>>>        a minimal ESP implementation may not generate such dummy packet.
>>>>
>>>> I think what is meant is "MUST NOT generate".
>>>>
>>>
>>> MUST NOT requires RFC4303 to be updated and is probably too strong. I
>>> have been asked to remove all normative text.
>>>
>>
>> change "may not" to "may simple choose to never generate"
>>
>>
> We have the text you proposed:
>
> """
> An implementation can omit ever generating and sending dummy packets.
> """
>
>> [10]
>>>
>>>>
>>>> The Next Header Section is better named Dummy Packet. While it
>>>> discusses the mandatory
>>>> Next Header field, it really only states not to send Dummy Packets. But
>>>> it almost reads
>>>> as if the Next Header can be ignored or omitted.
>>>>
>>>>
>>> This requires changing ESP and the text actually requires the Next
>>> Header field to be read.
>>> """
>>> For interoperability, a minimal ESP implementation must discard dummy
>>> packets without indicating an error.
>>> """
>>>
>>
>> I am not asking you to rename a term from RFC 4303. I am asking you to
>> rename the section, as the section is
>> really about the Next Header field value 59 only. (I did so in the
>> language changes I sent you separately)
>>
>>
> I took your wording.
>
>> [11]
>>>>
>>>>        4.  Avoid Padding by sending payload data which are aligned to
>>>>            the cipher block length - 2 for the ESP trailer.
>>>>
>>>> Isn't this advise just moving the padding from the IPsec layer to the
>>>> application
>>>> layer? Eg the packet size or energy use would not be different if one
>>>> implements
>>>> this advise?
>>>>
>>>
>>> You are correct, sending padding versus application bytes does not
>>> change power consumption. However, not sending padding bytes ensures you
>>> only carry application information - and as such do not have an extra radio
>>> frame to carry a padding.
>>>
>>
>> but if "only application data" includes "padded application data", then
>> there would not be an extra radio frame? The block cipher size needs to be
>> a certain size. If there is not enough
>> application data, it is padded to make it so. If an application needs to
>> send 14 bytes, I don't think it matters that it will add 2 dummy bytes at
>> the application layer to "avoid padding" in
>> the IPsec code. And what is send over the wire is the same regardless the
>> solution, the 16 byte block size ?
>>
>> Perhaps rephrase this to say the application should attempt to avoid
>> sending a number of bytes that is just over the blocksize, but then again
>> that advise is kind of odd too, since
>> the application should just not send more data than needed. Eg it could
>> use compression if that would be more energy efficient than sending more
>> radio frames. And that advise
>> is already true for everything the application does, irrespective of
>> IPsec. So the question remains, what is this statement trying to accomplish
>> for a minimum ESP implementer to do?
>>
>>  The intention is to recommend maximizing the information bits sent, when
> padding represent no additional information. In that sense CBC is likely
> not to be recommended.
>
>>  [12]
>>
>>>
>>>> Would it be useful to be able to signal a "mininum ESP" via IKEv2? I
>>>> can imagine a simple
>>>> Notify could be used to signal this. A peer receiving this could then
>>>> ensure it is
>>>> behaving in a "minimum ESP" compatible way even if it is a
>>>> multi-purpose OS.
>>>>
>>>>
>>>> No. minimal ESP is compatible with the standard ESP as mentioned in the
>>> abstrct / intro:
>>>
>>
>> Yes, but the other end might use padding or dummy packets and you could
>> tell the other end to please not do that because it still takes energy to
>> receive and process these.
>>
> This seems to change the scope of minimal ESP.... probably good for an
> extra minimal ESP... but as long as IKEv2 is supported, it might support
> also these two features. That said, the removal of padding is probably
> feasible using diet-esp.
>
>>
>>
>>
>>>
>>> ----------------------------------------------------------------------
>>>> COMMENT:
>>>> ----------------------------------------------------------------------
>>>>
>>>>
>>>> There is a bit excessive and inconsistent linking to RFC 4303 throughout
>>>> the document. I think on first use of ESP the RFC can be referenced, but
>>>> further the document can just talk about ESP without keeping links to
>>>> RFC 4303.
>>>> (I also thought there should not be any links in the abstract?)
>>>>
>>>> The document should maybe mention IPsec v3 is meant for "ESP". IPsec v3
>>>> is a superset
>>>> of IPsec v2. There is no compatibility issue because the "new" things
>>>> in v3 are
>>>> all negotiated via IKE.
>>>>
>>>>
>>> The document is limited to ESP RFC4303.
>>>
>>>
>>>> I don't understand "a form of partial sequence integrity", as integrity
>>>> is a boolean - it passes or fails. I don't understand "partial"
>>>>
>>>> "a form of partial sequence integrity" is the abstract of RFC4303 which
>>> defines ESP.
>>>
>>
>>> RFC4303:
>>> """
>>>  ESP is used to provide confidentiality, data origin authentication,
>>> connectionless
>>>    integrity, an anti-replay service (a form of partial sequence
>>>    integrity), and limited traffic flow confidentiality.
>>>  """
>>>
>>
>> In that case I would recommend using "an anti-replay service" without the
>> term in brackets.
>>
>>
>>
>>
>>> "it becomes crucial" is a bit weak. I would say it must be guaranteed
>>>> that ESP on IoT remains interoperable with currently deployed ESP.
>>>>
>>>>        This may raise some privacy issues as an
>>>>        observer is likely to be able to determine the constrained
>>>> devices of
>>>>        the network.
>>>>
>>>> This text might be better placed in a Privacy Considerations section.
>>>>
>>>> Privacy concerned are exposed within the SPI section. Splitting the
>>> section into multiple sections will make the document harder to read.
>>>
>>>
>>>> The term "traffic shaping" is used in the document to refer to traffic
>>>> being
>>>> padded (padding or TFC). Perhaps my personal exposure to Linux has
>>>> caused me
>>>> to think of "traffic shaping" to mean to control the speed or flow of
>>>> traffic,
>>>> and not meaning "modifying traffic size".
>>>>
>>>> Traffic shaping does not mean modifying traffic size.  I see traffic
>>> shaping being used to describe optimization as well inferring activity from
>>> the traffic.
>>>
>>
>> I still advise against using this term, or to define the term as you use
>> it somewhere in the introduction section.
>>
>> Paul
>>
>
>
> --
> Daniel Migault
> Ericsson
>


-- 
Daniel Migault
Ericsson