Return-Path: <hummen.committees@gmail.com>
X-Original-To: hipsec@ietfa.amsl.com
Delivered-To: hipsec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id 7D1E1129498
 for <hipsec@ietfa.amsl.com>; Sat, 22 Oct 2016 01:22:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level: 
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001,
 RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001]
 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 ([4.31.198.44])
 by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id TW95Hu0XfljQ for <hipsec@ietfa.amsl.com>;
 Sat, 22 Oct 2016 01:22:34 -0700 (PDT)
Received: from mail-it0-x236.google.com (mail-it0-x236.google.com
 [IPv6:2607:f8b0:4001:c0b::236])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id 60B051293D6
 for <hipsec@ietf.org>; Sat, 22 Oct 2016 01:22:34 -0700 (PDT)
Received: by mail-it0-x236.google.com with SMTP id 198so17055012itw.0
 for <hipsec@ietf.org>; Sat, 22 Oct 2016 01:22:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; 
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=9yLBi34A/m0hkk7VFaiuFYdev+hqzADSVZAy3Wan7F0=;
 b=X+mKAehXmtadd7auze5ZqLldNjXZeFkrEoHpqGPGl8fh69fHIetDuFwVva/RKdlTVF
 dPmH0SGuBTUHZrdzyLwzpLvSFnmaty7ralu/KWSgV6cxSyahPJ9UV7dyMYBmqaNO4ai8
 K6gp4t6kV+rU7JbhQydPI/zG3VDhsqYDe+07KS1z4GJJ02DWzuxQNillla5U9rvuDWof
 Rxj4WIVEoqyT5V7rLSprM01XgrauyWT9MbAUHEARLhj9YtnpMjAqGhzqyi88fWnGqJjW
 rvI3Hip4GP5qmRb60x/tT1wbRXPbAPWAl9sI9gV/PPHezngxPeMCZZ1tYmj2We/qd6R/
 +N1Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=9yLBi34A/m0hkk7VFaiuFYdev+hqzADSVZAy3Wan7F0=;
 b=UzU90HCo6kyzLsKljI1y16PpOXEN5bhTbCFlmlhmwJtH08kBYj3p19c6CwrQ9gSYUH
 /AvDFk8X+zD4HSwbXytE+hVWAVTIcvUxoiqjSAOAqmGh1UGYRYPV+O8DyqjAE+6/1j0h
 Ui5TLorKzAnyufn1xCuKfgLDxGRkhLpWJKuaLb3O8I2DTaGelAafXs1R84tdMEt+N9rV
 KzY1Xnf/C0vdDes5CMk2z7pjBd4aYePmOngRhOUm1qHVuk6dHxZbbQBuRmKDWTvMgDeU
 3kyDAFfkHoEvlb21kp0Ru6JXpuz+xUrJEgzgXMwgJZRg5ivRcEdHFvSmNv7tdzlL5Nuk
 mvnQ==
X-Gm-Message-State: AA6/9RnOALIwbGiWJ41HX92TDYHMDNOOnAmJgw4lEFvi3NM68FXY23/DSmk0xTGZL3bhDm9vSMc2UwXMQhEXcg==
X-Received: by 10.202.207.151 with SMTP id f145mr14035626oig.45.1477124553640; 
 Sat, 22 Oct 2016 01:22:33 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.182.92.229 with HTTP; Sat, 22 Oct 2016 01:22:32 -0700 (PDT)
In-Reply-To: <cc2d82b2-447c-3b16-5858-8cae5710b174@ericsson.com>
References: <20160321203627.12199.62928.idtracker@ietfa.amsl.com>
 <56F98E90.10601@ericsson.com>
 <CAEhFMcjosQF6CPa5cRWo6gtWHWyNFGR5PC4BxTLvZxCaXohckg@mail.gmail.com>
 <5756C81D.3080601@ericsson.com>
 <CAEhFMch1qp868EKLx8V9kxS0-qC-2Cp0C6w=Sct3YSesErzKFQ@mail.gmail.com>
 <1ade65d6-187e-20e0-fb9b-c3d5b73f42df@ericsson.com>
 <cc2d82b2-447c-3b16-5858-8cae5710b174@ericsson.com>
From: =?UTF-8?B?UmVuw6kgSHVtbWVu?= <hummen.committees@gmail.com>
Date: Sat, 22 Oct 2016 10:22:32 +0200
Message-ID: <CANS20HNwQYuf5dsFKsj9wSrBRH3a2tXrQ=p0A5fVsL37oPVvRA@mail.gmail.com>
To: Gonzalo Camarillo <Gonzalo.Camarillo@ericsson.com>
Content-Type: multipart/alternative; boundary=001a113b047c4f0f95053f6fdca2
Archived-At: <https://mailarchive.ietf.org/arch/msg/hipsec/c5gQiaNwwG4ckYvjy3S8mQka6O0>
Cc: =?UTF-8?B?UmVuw6kgSHVtbWVu?= <hummen.rwth@gmail.com>, hipsec@ietf.org
Subject: Re: [Hipsec] A review of draft-ietf-hip-dex-02.txt
X-BeenThere: hipsec@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "This is the official IETF Mailing List for the HIP Working Group."
 <hipsec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/hipsec>,
 <mailto:hipsec-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/hipsec/>
List-Post: <mailto:hipsec@ietf.org>
List-Help: <mailto:hipsec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hipsec>,
 <mailto:hipsec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 22 Oct 2016 08:22:37 -0000

--001a113b047c4f0f95053f6fdca2
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi,

I just uploaded draft version 04, where I addressed Miika's comments as
discussed in the previous emails.

>From my point of view, this document is ready to proceed.

BR
Ren=C3=A9

2016-10-21 9:13 GMT+02:00 Gonzalo Camarillo <Gonzalo.Camarillo@ericsson.com=
>
:

> Hi Rene,
>
> do you intend to release a new version of the draft with this addition?
> What is the current status of the draft otherwise?
>
> Thanks,
>
> Gonzalo
>
> On 26/09/2016 4:46 PM, Miika Komu wrote:
> > Hi Ren=C3=A9,
> >
> > On 09/11/2016 11:06 PM, Ren=C3=A9 Hummen wrote:
> >> Hello Miika,
> >>
> >> going through your email again, I saw a total of four suggestions.
> >>
> >> Three of them refer to imprecisions in the text of RFC 7401 (which I
> >> copy/pasted for HIP DEX). There, I understood that consistency with RF=
C
> >> 7401 has a higher priority than only fixing your comments for HIP DEX,
> >> but keeping the text as is for RFC 7401. This means, I will not modify
> >> the text in the HIP DEX draft. Is this also your intention?
> >
> > yes, 7401 takes precedence over my comments.
> >
> >> The last remaining issue is related to the UPDATE message and the
> >> rekeying procedure (Section 6.10.). Here, I added the following
> >> paragraph for clarification purposes:
> >>
> >>    [RFC7402] specifies the rekeying of an existing HIP SA using the
> >>    UPDATE message.  This rekeying procedure can also be used with HIP
> >>    DEX.  However, where rekeying involves a new Diffie-Hellman key
> >>    exchange, HIP DEX peers MUST establish a new connection in order to
> >>    create a new Pair-wise Key SA due to the use of static ECDH key-pai=
rs
> >>    with HIP DEX.
> >>
> >> Does this fix your issue?
> >
> > Yes. I assume you mean a new HIP association with connection.
> >
> >> BR
> >> Ren=C3=A9
> >>
> >>
> >>
> >> On Tue, Jun 7, 2016 at 3:11 PM, Miika Komu <miika.komu@ericsson.com
> >> <mailto:miika.komu@ericsson.com>> wrote:
> >>
> >>     Hi,
> >>
> >>     On 06/03/2016 02:20 PM, Ren=C3=A9 Hummen wrote:
> >>
> >>         This is part 3 of 3.
> >>
> >>
> >>     I am fine with your fixes. Some comments below.
> >>
> >>         On Mon, Mar 28, 2016 at 10:05 PM, Miika Komu
> >>         <miika.komu@ericsson.com <mailto:miika.komu@ericsson.com>
> >>         <mailto:miika.komu@ericsson.com
> >>         <mailto:miika.komu@ericsson.com>>> wrote:
> >>
> >>     > [...]
> >>
> >>              > 6.2.1.  CMAC Calculation
> >>              >
> >>              > [...]
> >>              >
> >>              >
> >>              > 5.  Set Checksum and Header Length fields in the HIP
> >>         header to
> >>              > original values.  Note that the Checksum and Length
> fields
> >>              > contain incorrect values after this step.
> >>
> >>             I guess also the values following HIP_MAC should be restor=
ed
> >>         since
> >>             they were wiped in the step 2.
> >>
> >>
> >>         I also found this description a bit imprecise, but it is taken
> >> from
> >>         RFC7401. Step 2 already hints at the fact that parameters
> >> following
> >>         HIP_MAC may still be of interest:
> >>         "Remove the HIP_MAC parameter, as well as all other parameters
> >>                 that follow it with greater Type value, saving the
> >>         contents if
> >>                 they will be needed later."
> >>
> >>         The question is whether we want to fix the description for HIP
> >>         DEX or to
> >>         keep things as they are for consistency reasons. In the former
> >>         case, I
> >>         would prefer to completely rewrite the verification procedure =
to
> >>         work on
> >>         the received packet without removing any parameters. However, =
we
> >>         should
> >>         then probably also post an errata to RFC7401. If there are no
> >> stong
> >>         opinions about that, I would go for the latter option.
> >>
> >>
> >>     Latter option works for me too.
> >>
> >>              > The CKDF-Extract function is the following operation:
> >>              >
> >>              > CKDF-Extract(I, IKM, info) -> PRK
> >>
> >>             What does the arrow operator signify? I thought that it
> >>         produces PRK,
> >>             but PRK is actually defined below.
> >>
> >>
> >>         The arrow is part of a basic mathematical function definition.
> >>         So yes,
> >>         PRK is the output (domain), but we still need to give it a
> >>         proper name.
> >>         I changed the artwork to clearly point out the inputs and
> >> outputs.
> >>
> >>
> >>     Thanks, it is now better.
> >>
> >>         Please check this section again in the updated version and get
> >>         back to
> >>         me if the above changes do not sufficiently help your
> >> understanding.
> >>
> >>
> >>     It is good now, thanks!
> >>
> >>              > L        length of output keying material in octets
> >>              >          (<=3D 255*RHASH_len/8)
> >>              > |        denotes the concatenation
> >>              >
> >>              > The output keying material OKM is calculated as follows=
:
> >>              >
> >>              > N       =3D  ceil(L/RHASH_len/8)
> >>              > T       =3D  T(1) | T(2) | T(3) | ... | T(N)
> >>              > OKM     =3D  first L octets of T
> >>              >
> >>              > where
> >>              >
> >>              > T(0) =3D empty string (zero length)
> >>              > T(1) =3D CMAC(PRK, T(0) | info | 0x01)
> >>              > T(2) =3D CMAC(PRK, T(1) | info | 0x02)
> >>              > T(3) =3D CMAC(PRK, T(2) | info | 0x03)
> >>              > ...
> >>
> >>             The Expand was a bit more clear, but still didn't understa=
nd
> >>         how to
> >>             get to the
> >>             Expanded key material due the arrow notation.
> >>
> >>
> >>         Ok, let's clarify this as several comments are related to the
> >> arrow
> >>         notation. For the function definition we use the mathematical
> >> arrow
> >>         notation (same as RFC 5869) and for the actual opertation we
> >> use the
> >>         equals sign (same as RFC 5869). In the end, they denote the sa=
me
> >>         thing:
> >>         "assign X to Y".
> >>
> >>
> >>     Ok, this is what I guessed too.
> >>
> >>              > (where the constant concatenated to the end of each
> >> T(n) is a
> >>              > single octet.)
> >>
> >>             Is there a max value?
> >>
> >>
> >>         I am not sure what you mean here. If you refer to the N in T(N=
)
> >>         then it
> >>         is defined above as N =3D ceil(L/RHASH_len/8).
> >>
> >>
> >>     Yes, I asked about the maximum value for N (which depends on L), b=
ut
> >>     never mind.
> >>
> >>              > 8.   The R1 packet may have the A-bit set - in this cas=
e,
> >>         the system
> >>              > MAY choose to refuse it by dropping the R1 packet and
> >>         returning
> >>              > to state UNASSOCIATED.  The system SHOULD consider
> >>         dropping the
> >>              > R1 packet only if it used a NULL HIT in the I1 packet.
> >>
> >>             I didn't understand the logic in the last sentence.
> >>
> >>
> >>         Someone must have had a reason for this recommendation, but th=
at
> >>         someone
> >>         wasn't me. This is text from RFC7401. Any suggestions how to
> >>         proceed?
> >>
> >>
> >>     Fix similarly as the other RFC7401 issue in the beginning of this
> >> email.
> >>
> >>              > 6.7.  Processing Incoming I2 Packets
> >>              >
> >>              > [...]
> >>              >
> >>              > 5.   If the system's state machine is in the I2-SENT
> >>         state, the
> >>              > system MUST make a comparison between its local and
> >> sender's
> >>              > HITs (similarly as in Section 6.3).  If the local HIT i=
s
> >>         smaller
> >>              > than the sender's HIT, it should drop the I2 packet,
> >> use the
> >>              > peer Diffie-Hellman key, ENCRYPTED_KEY keying material
> >>         and nonce
> >>              > #I from the R1 packet received earlier, and get the loc=
al
> >>              > Diffie-Hellman key, ENCRYPTED_KEY keying material, and
> >>         nonce #J
> >>              > from the I2 packet sent to the peer earlier.
> >> Otherwise, the
> >>              > system should process the received I2 packet and drop a=
ny
> >>              > previously derived Diffie-Hellman keying material Kij a=
nd
> >>              > ENCRYPTED_KEY keying material it might have generated
> upon
> >>              > sending the I2 packet previously.  The peer
> >>         Diffie-Hellman key,
> >>              > ENCRYPTED_KEY, and the nonce #J are taken from the just
> >>         arrived
> >>              > I2 packet.  The local Diffie-Hellman key, ENCRYPTED_KEY
> >>         keying
> >>              > material, and the nonce #I are the ones that were sent
> >>         earlier
> >>              > in the R1 packet.
> >>
> >>             Please replace "sender" with "peer" (or remote host) in th=
is
> >>         section
> >>             for more symmetric terminology.
> >>
> >>             get -> obtain
> >>
> >>
> >>         I can make these changes if you insist, but I was going for a
> >>         minimal
> >>         diff to RFC 7401.
> >>
> >>
> >>     Not insisting.
> >>
> >>
> >>              > 11.  The implementation SHOULD also verify that the
> >>         Initiator's HIT
> >>              > in the I2 packet corresponds to the Host Identity sent =
in
> >>         the I2
> >>              > packet.  (Note: some middleboxes may not be able to
> >> make this
> >>              > verification.)
> >>
> >>             Why SHOULD? Why not MUST? I think we're talking about
> >>         end-hosts here
> >>             anyway.
> >>
> >>
> >>         It is defined this way in RFC 7401. Do you really want to
> >> change the
> >>         packet processing behavior for HIP DEX only?
> >>
> >>
> >>     Fix similarly as the first RFC7401 issue in this email.
> >>
> >>              > 6.10.  Processing UPDATE, CLOSE, and CLOSE_ACK Packets
> >>
> >>              > UPDATE, CLOSE, and CLOSE_ACK packets are handled
> >>         similarly in HIP DEX
> >>              > as in HIP BEX (see Sections 6.11, 6.12, 6.14, and 6.15 =
of
> >>         [RFC7401]).
> >>              > The only difference is the that the HIP_SIGNATURE is
> >>         never present
> >>              > and, therefore, is not required to be processed by the
> >>         receiving
> >>              > party.
> >>
> >>             How does rekeying work with the extract and expand
> functions?
> >>
> >>
> >>         Rekeying is not defined in this document, same as for RFC
> >> 7401. That
> >>         being said, the rekeying procedure with reuse of the KEYMAT
> >> from RFC
> >>         7402 directly translates to HIP DEX. For new KEYMAT, the peers
> >>         need to
> >>         establish a new connection due to the use of static DH keys.
> >>
> >>
> >>     Maybe this should be explicitly stated in the draft.
> >>
> >>
> >>
> >>              > 7.  HIP Policies
> >>
> >>              > There are a number of variables that will influence the
> >>         HIP exchanges
> >>              > that each host must support.  All HIP DEX implementatio=
ns
> >>         SHOULD
> >>              > provide for an ACL of Initiator's HI to Responder's HI.
> >>         This ACL
> >>              > SHOULD also include preferred transform and local
> >> lifetimes.
> >>              > Wildcards SHOULD also be supported for this ACL.
> >>
> >>             Why ACLs are mandatory?
> >>
> >>
> >>         It is not a MUST and considering that HIP DEX is primarly
> >>         targeted at
> >>         things, there is the need to do basic device authorizations
> >>         (based on
> >>         their identities) without a human in the loop. Of course you a=
re
> >>         also
> >>         allowed to use more suffisticated authorization mechanisms.
> >>
> >>
> >>     Ok.
> >>
> >>             ACL -> ACL consisting of
> >>
> >>
> >>         Changed to the following text that is closer to RFC 7401:
> >>         "   All HIP DEX implementations SHOULD provide for an Access
> >>         Control List
> >>             (ACL), representing for which hosts they accept HIP diet
> >>         exchanges,
> >>             and the preferred transport format and local lifetimes.
> >>         Wildcarding
> >>             SHOULD be supported for such ACLs."
> >>
> >>              > 8.  Security Considerations
> >>
> >>              > o  The HIP DEX HIT generation may present new attack
> >>         opportunities.
> >>
> >>             They cannot be used in ACLs. Maybe this could be mentioned=
.
> >>         Can this
> >>             be mitigated by always using full HIs?
> >>
> >>
> >>         I changed the bullet-point as follows:
> >>         "The HIP DEX HIT generation may present new attack
> opportunities.
> >>                Hence, HIP DEX HITs should not be use as the only means
> to
> >>                identify a peer in an ACL.  Instead, the use of the
> >>         peer's HI is
> >>                recommended."
> >>
> >>
> >>     Ok.
> >>
> >>         Note that I added a new Section 8 "Interoperability between HI=
P
> >>         DEX and
> >>         HIPv2" to satisfy your comment on HIP DEX and HIPv2
> >> compatibility.
> >>
> >>
> >>     Thanks!
> >>
> >>
> >>     _______________________________________________
> >>     Hipsec mailing list
> >>     Hipsec@ietf.org <mailto:Hipsec@ietf.org>
> >>     https://www.ietf.org/mailman/listinfo/hipsec
> >>     <https://www.ietf.org/mailman/listinfo/hipsec>
> >>
> >>
> >
>
> _______________________________________________
> Hipsec mailing list
> Hipsec@ietf.org
> https://www.ietf.org/mailman/listinfo/hipsec
>

--001a113b047c4f0f95053f6fdca2
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><span style=3D"font-size:12.8px">Hi,</span><div style=3D"f=
ont-size:12.8px"><br></div><div style=3D"font-size:12.8px">I just uploaded =
draft version 04, where I addressed Miika&#39;s comments as discussed in th=
e previous emails.</div><div style=3D"font-size:12.8px"><br></div><div styl=
e=3D"font-size:12.8px">From my point of view, this document is ready to pro=
ceed.</div><div style=3D"font-size:12.8px"><span style=3D"font-size:12.8px"=
><br></span></div><div style=3D"font-size:12.8px"><span style=3D"font-size:=
12.8px">BR</span></div><div style=3D"font-size:12.8px">Ren=C3=A9</div><div =
class=3D"gmail_extra"><br><div class=3D"gmail_quote">2016-10-21 9:13 GMT+02=
:00 Gonzalo Camarillo <span dir=3D"ltr">&lt;<a href=3D"mailto:Gonzalo.Camar=
illo@ericsson.com" target=3D"_blank">Gonzalo.Camarillo@ericsson.com</a>&gt;=
</span>:<br><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0=
.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Rene,<br>
<br>
do you intend to release a new version of the draft with this addition?<br>
What is the current status of the draft otherwise?<br>
<br>
Thanks,<br>
<br>
Gonzalo<br>
<div><div class=3D"h5"><br>
On 26/09/2016 4:46 PM, Miika Komu wrote:<br>
&gt; Hi Ren=C3=A9,<br>
&gt;<br>
&gt; On 09/11/2016 11:06 PM, Ren=C3=A9 Hummen wrote:<br>
&gt;&gt; Hello Miika,<br>
&gt;&gt;<br>
&gt;&gt; going through your email again, I saw a total of four suggestions.=
<br>
&gt;&gt;<br>
&gt;&gt; Three of them refer to imprecisions in the text of RFC 7401 (which=
 I<br>
&gt;&gt; copy/pasted for HIP DEX). There, I understood that consistency wit=
h RFC<br>
&gt;&gt; 7401 has a higher priority than only fixing your comments for HIP =
DEX,<br>
&gt;&gt; but keeping the text as is for RFC 7401. This means, I will not mo=
dify<br>
&gt;&gt; the text in the HIP DEX draft. Is this also your intention?<br>
&gt;<br>
&gt; yes, 7401 takes precedence over my comments.<br>
&gt;<br>
&gt;&gt; The last remaining issue is related to the UPDATE message and the<=
br>
&gt;&gt; rekeying procedure (Section 6.10.). Here, I added the following<br=
>
&gt;&gt; paragraph for clarification purposes:<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 [RFC7402] specifies the rekeying of an existing HIP S=
A using the<br>
&gt;&gt;=C2=A0 =C2=A0 UPDATE message.=C2=A0 This rekeying procedure can als=
o be used with HIP<br>
&gt;&gt;=C2=A0 =C2=A0 DEX.=C2=A0 However, where rekeying involves a new Dif=
fie-Hellman key<br>
&gt;&gt;=C2=A0 =C2=A0 exchange, HIP DEX peers MUST establish a new connecti=
on in order to<br>
&gt;&gt;=C2=A0 =C2=A0 create a new Pair-wise Key SA due to the use of stati=
c ECDH key-pairs<br>
&gt;&gt;=C2=A0 =C2=A0 with HIP DEX.<br>
&gt;&gt;<br>
&gt;&gt; Does this fix your issue?<br>
&gt;<br>
&gt; Yes. I assume you mean a new HIP association with connection.<br>
&gt;<br>
&gt;&gt; BR<br>
&gt;&gt; Ren=C3=A9<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Tue, Jun 7, 2016 at 3:11 PM, Miika Komu &lt;<a href=3D"mailto:m=
iika.komu@ericsson.com">miika.komu@ericsson.com</a><br>
&gt;&gt; &lt;mailto:<a href=3D"mailto:miika.komu@ericsson.com">miika.komu@e=
ricsson.<wbr>com</a>&gt;&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Hi,<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0On 06/03/2016 02:20 PM, Ren=C3=A9 Hummen wrote:=
<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0This is part 3 of 3.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0I am fine with your fixes. Some comments below.=
<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0On Mon, Mar 28, 2016 at 10:05 PM,=
 Miika Komu<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"mailto:miika.komu@=
ericsson.com">miika.komu@ericsson.com</a> &lt;mailto:<a href=3D"mailto:miik=
a.komu@ericsson.com">miika.komu@ericsson.<wbr>com</a>&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:miik=
a.komu@ericsson.com">miika.komu@ericsson.<wbr>com</a><br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;mailto:<a href=3D"mailto:miik=
a.komu@ericsson.com">miika.komu@ericsson.<wbr>com</a>&gt;&gt;&gt; wrote:<br=
>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0&gt; [...]<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 6.2.1.=C2=A0 =
CMAC Calculation<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; [...]<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 5.=C2=A0 Set =
Checksum and Header Length fields in the HIP<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0header to<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; original valu=
es.=C2=A0 Note that the Checksum and Length fields<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; contain incor=
rect values after this step.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0I guess also the va=
lues following HIP_MAC should be restored<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0since<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0they were wiped in =
the step 2.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0I also found this description a b=
it imprecise, but it is taken<br>
&gt;&gt; from<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0RFC7401. Step 2 already hints at =
the fact that parameters<br>
&gt;&gt; following<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0HIP_MAC may still be of interest:=
<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;Remove the HIP_MAC paramete=
r, as well as all other parameters<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0that =
follow it with greater Type value, saving the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0contents if<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0they =
will be needed later.&quot;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0The question is whether we want t=
o fix the description for HIP<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0DEX or to<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0keep things as they are for consi=
stency reasons. In the former<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0case, I<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0would prefer to completely rewrit=
e the verification procedure to<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0work on<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0the received packet without remov=
ing any parameters. However, we<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0should<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0then probably also post an errata=
 to RFC7401. If there are no<br>
&gt;&gt; stong<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0opinions about that, I would go f=
or the latter option.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Latter option works for me too.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; The CKDF-Extr=
act function is the following operation:<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; CKDF-Extract(=
I, IKM, info) -&gt; PRK<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0What does the arrow=
 operator signify? I thought that it<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0produces PRK,<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0but PRK is actually=
 defined below.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0The arrow is part of a basic math=
ematical function definition.<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0So yes,<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0PRK is the output (domain), but w=
e still need to give it a<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0proper name.<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0I changed the artwork to clearly =
point out the inputs and<br>
&gt;&gt; outputs.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Thanks, it is now better.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Please check this section again i=
n the updated version and get<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0back to<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0me if the above changes do not su=
fficiently help your<br>
&gt;&gt; understanding.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0It is good now, thanks!<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; L=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 length of output keying material in octets<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;=C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 (&lt;=3D 255*RHASH_len/8)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; |=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 denotes the concatenation<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; The output ke=
ying material OKM is calculated as follows:<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; N=C2=A0 =C2=
=A0 =C2=A0 =C2=A0=3D=C2=A0 ceil(L/RHASH_len/8)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; T=C2=A0 =C2=
=A0 =C2=A0 =C2=A0=3D=C2=A0 T(1) | T(2) | T(3) | ... | T(N)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; OKM=C2=A0 =C2=
=A0 =C2=A0=3D=C2=A0 first L octets of T<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; where<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; T(0) =3D empt=
y string (zero length)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; T(1) =3D CMAC=
(PRK, T(0) | info | 0x01)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; T(2) =3D CMAC=
(PRK, T(1) | info | 0x02)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; T(3) =3D CMAC=
(PRK, T(2) | info | 0x03)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; ...<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0The Expand was a bi=
t more clear, but still didn&#39;t understand<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0how to<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0get to the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Expanded key materi=
al due the arrow notation.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Ok, let&#39;s clarify this as sev=
eral comments are related to the<br>
&gt;&gt; arrow<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0notation. For the function defini=
tion we use the mathematical<br>
&gt;&gt; arrow<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0notation (same as RFC 5869) and f=
or the actual opertation we<br>
&gt;&gt; use the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0equals sign (same as RFC 5869). I=
n the end, they denote the same<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0thing:<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;assign X to Y&quot;.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Ok, this is what I guessed too.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; (where the co=
nstant concatenated to the end of each<br>
&gt;&gt; T(n) is a<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; single octet.=
)<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Is there a max valu=
e?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0I am not sure what you mean here.=
 If you refer to the N in T(N)<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0then it<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0is defined above as N =3D ceil(L/=
RHASH_len/8).<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Yes, I asked about the maximum value for N (whi=
ch depends on L), but<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0never mind.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 8.=C2=A0 =C2=
=A0The R1 packet may have the A-bit set - in this case,<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0the system<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; MAY choose to=
 refuse it by dropping the R1 packet and<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0returning<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; to state UNAS=
SOCIATED.=C2=A0 The system SHOULD consider<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0dropping the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; R1 packet onl=
y if it used a NULL HIT in the I1 packet.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0I didn&#39;t unders=
tand the logic in the last sentence.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Someone must have had a reason fo=
r this recommendation, but that<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0someone<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0wasn&#39;t me. This is text from =
RFC7401. Any suggestions how to<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0proceed?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Fix similarly as the other RFC7401 issue in the=
 beginning of this<br>
&gt;&gt; email.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 6.7.=C2=A0 Pr=
ocessing Incoming I2 Packets<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; [...]<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 5.=C2=A0 =C2=
=A0If the system&#39;s state machine is in the I2-SENT<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0state, the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; system MUST m=
ake a comparison between its local and<br>
&gt;&gt; sender&#39;s<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; HITs (similar=
ly as in Section 6.3).=C2=A0 If the local HIT is<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0smaller<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; than the send=
er&#39;s HIT, it should drop the I2 packet,<br>
&gt;&gt; use the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; peer Diffie-H=
ellman key, ENCRYPTED_KEY keying material<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0and nonce<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; #I from the R=
1 packet received earlier, and get the local<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Diffie-Hellma=
n key, ENCRYPTED_KEY keying material, and<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0nonce #J<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; from the I2 p=
acket sent to the peer earlier.<br>
&gt;&gt; Otherwise, the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; system should=
 process the received I2 packet and drop any<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; previously de=
rived Diffie-Hellman keying material Kij and<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; ENCRYPTED_KEY=
 keying material it might have generated upon<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; sending the I=
2 packet previously.=C2=A0 The peer<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Diffie-Hellman key,<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; ENCRYPTED_KEY=
, and the nonce #J are taken from the just<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0arrived<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; I2 packet.=C2=
=A0 The local Diffie-Hellman key, ENCRYPTED_KEY<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0keying<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; material, and=
 the nonce #I are the ones that were sent<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0earlier<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; in the R1 pac=
ket.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Please replace &quo=
t;sender&quot; with &quot;peer&quot; (or remote host) in this<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0section<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0for more symmetric =
terminology.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0get -&gt; obtain<br=
>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0I can make these changes if you i=
nsist, but I was going for a<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0minimal<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0diff to RFC 7401.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Not insisting.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 11.=C2=A0 The=
 implementation SHOULD also verify that the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Initiator&#39;s HIT<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; in the I2 pac=
ket corresponds to the Host Identity sent in<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0the I2<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; packet.=C2=A0=
 (Note: some middleboxes may not be able to<br>
&gt;&gt; make this<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; verification.=
)<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Why SHOULD? Why not=
 MUST? I think we&#39;re talking about<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0end-hosts here<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0anyway.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0It is defined this way in RFC 740=
1. Do you really want to<br>
&gt;&gt; change the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0packet processing behavior for HI=
P DEX only?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Fix similarly as the first RFC7401 issue in thi=
s email.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 6.10.=C2=A0 P=
rocessing UPDATE, CLOSE, and CLOSE_ACK Packets<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; UPDATE, CLOSE=
, and CLOSE_ACK packets are handled<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0similarly in HIP DEX<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; as in HIP BEX=
 (see Sections 6.11, 6.12, 6.14, and 6.15 of<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[RFC7401]).<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; The only diff=
erence is the that the HIP_SIGNATURE is<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0never present<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; and, therefor=
e, is not required to be processed by the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0receiving<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; party.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0How does rekeying w=
ork with the extract and expand functions?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Rekeying is not defined in this d=
ocument, same as for RFC<br>
&gt;&gt; 7401. That<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0being said, the rekeying procedur=
e with reuse of the KEYMAT<br>
&gt;&gt; from RFC<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A07402 directly translates to HIP D=
EX. For new KEYMAT, the peers<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0need to<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0establish a new connection due to=
 the use of static DH keys.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Maybe this should be explicitly stated in the d=
raft.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 7.=C2=A0 HIP =
Policies<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; There are a n=
umber of variables that will influence the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0HIP exchanges<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; that each hos=
t must support.=C2=A0 All HIP DEX implementations<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0SHOULD<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; provide for a=
n ACL of Initiator&#39;s HI to Responder&#39;s HI.<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0This ACL<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; SHOULD also i=
nclude preferred transform and local<br>
&gt;&gt; lifetimes.<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; Wildcards SHO=
ULD also be supported for this ACL.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Why ACLs are mandat=
ory?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0It is not a MUST and considering =
that HIP DEX is primarly<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0targeted at<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0things, there is the need to do b=
asic device authorizations<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(based on<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0their identities) without a human=
 in the loop. Of course you are<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0also<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0allowed to use more suffisticated=
 authorization mechanisms.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Ok.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ACL -&gt; ACL consi=
sting of<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Changed to the following text tha=
t is closer to RFC 7401:<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=C2=A0 =C2=A0All HIP DEX im=
plementations SHOULD provide for an Access<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Control List<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(ACL), representing=
 for which hosts they accept HIP diet<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0exchanges,<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0and the preferred t=
ransport format and local lifetimes.<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Wildcarding<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0SHOULD be supported=
 for such ACLs.&quot;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; 8.=C2=A0 Secu=
rity Considerations<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &gt; o=C2=A0 The H=
IP DEX HIT generation may present new attack<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0opportunities.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0They cannot be used=
 in ACLs. Maybe this could be mentioned.<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Can this<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0be mitigated by alw=
ays using full HIs?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0I changed the bullet-point as fol=
lows:<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;The HIP DEX HIT generation =
may present new attack opportunities.<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 Hence, HIP =
DEX HITs should not be use as the only means to<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 identify a =
peer in an ACL.=C2=A0 Instead, the use of the<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0peer&#39;s HI is<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 recommended=
.&quot;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Ok.<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Note that I added a new Section 8=
 &quot;Interoperability between HIP<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0DEX and<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0HIPv2&quot; to satisfy your comme=
nt on HIP DEX and HIPv2<br>
&gt;&gt; compatibility.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Thanks!<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0______________________________<wbr>____________=
_____<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0Hipsec mailing list<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"mailto:Hipsec@ietf.org">Hipsec@ietf.=
org</a> &lt;mailto:<a href=3D"mailto:Hipsec@ietf.org">Hipsec@ietf.org</a>&g=
t;<br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://www.ietf.org/mailman/listinf=
o/hipsec" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.org/mailman=
/<wbr>listinfo/hipsec</a><br>
&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;<a href=3D"https://www.ietf.org/mailman/lis=
tinfo/hipsec" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.org/mai=
lman/<wbr>listinfo/hipsec</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
<br>
______________________________<wbr>_________________<br>
Hipsec mailing list<br>
<a href=3D"mailto:Hipsec@ietf.org">Hipsec@ietf.org</a><br>
</div></div><a href=3D"https://www.ietf.org/mailman/listinfo/hipsec" rel=3D=
"noreferrer" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/h=
ipsec</a><br>
</blockquote></div><br></div></div>

--001a113b047c4f0f95053f6fdca2--

