On Mon, Oct 26, 2020 at 12:51 PM Jorge Vergara <jover...@microsoft.com>
wrote:

> This is a detailed one so I’ve tried to go over it carefully. Most of it
> looks good but I’m unsure about this part:
>
>
>
> > If an inner method fails or MAC verification
>
> fails then S-IMCK is not used in further calculation.
>
>
>
> It is a valid scenario that multiple authentication methods run and some
> fail, but the overall TEAP authentication succeeds. For example, if two
> inner EAP Authentication methods run and the first fails but the seconds
> succeeds, the calculation needs to be valid. Based on the old text, that
> authentication method is omitted from calculations. This is what current
> implementations do.
>
>
>
> My editorial comment based on some other errata would be to that text
> needs to specify “authentication” methods (per Jouni’s other errata) since
> the Identity method doesn’t factor in here. I think it would also be
> beneficial to be specific about the behavior of basic username and password
> authentication here. Oleg made some comments to this effect on another
> email. Our implementation doesn’t support basic username and password
> authentication so I don’t have any prior experience here.
>
>
[Joe] Yes I think it is fine to say EAP authentication method.   I
have been convinced that the spec requires crypto-binding with the basic
password authentication.   I'll need to add this in.


>
>
> Jorge Vergara
>
>
>
> *From:* Joseph Salowey <j...@salowey.net>
> *Sent:* Saturday, October 24, 2020 5:18 PM
> *To:* EMU WG <emu@ietf.org>
> *Cc:* Oleg Pekar <oleg.pekar.2...@gmail.com>; Jouni Malinen <j...@w1.fi>;
> Jorge Vergara <jover...@microsoft.com>
> *Subject:* Proposed Resolution to TEAP Errata 5770
>
>
>
> Errata 5770: https://www.rfc-editor.org/errata/eid5770
> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.rfc-editor.org%2Ferrata%2Feid5770&data=04%7C01%7Cjovergar%40microsoft.com%7C728ceb6af6694e40e08e08d8787b669d%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637391818689781723%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=RuRrXZ5c70r43Rmyl4s%2BVUKAA22nGtoenLElbCeUkmE%3D&reserved=0>
>
> Proposed Status: Verified
>
> Revision:
>
>
>
> Section 5.2 Says:
>
>
>
> On the sender of the Crypto-Binding TLV side:
>
>      If the EMSK is not available, then the sender computes the Compound
>      MAC using the MSK of the inner method.
>
>      If the EMSK is available and the sender's policy accepts MSK-based
>      MAC, then the sender computes two Compound MAC values.  The first
>      is computed with the EMSK.  The second one is computed using the
>      MSK.  Both MACs are then sent to the other side.
>
>      If the EMSK is available but the sender's policy does not allow
>      downgrading to MSK-generated MAC, then the sender SHOULD only send
>      EMSK-based MAC.
>
>    On the receiver of the Crypto-Binding TLV side:
>
>      If the EMSK is not available and an MSK-based Compound MAC was
>      sent, then the receiver validates the Compound MAC and sends back
>      an MSK-based Compound MAC response.
>
>      If the EMSK is not available and no MSK-based Compound MAC was
>      sent, then the receiver handles like an invalid Crypto-Binding TLV
>      with a fatal error.
>
>      If the EMSK is available and an EMSK-based Compound MAC was sent,
>      then the receiver validates it and creates a response Compound MAC
>      using the EMSK.
>
>      If the EMSK is available but no EMSK-based Compound MAC was sent
>      and its policy accepts MSK-based MAC, then the receiver validates
>      it using the MSK and, if successful, generates and returns an MSK-
>      based Compound MAC.
>
>      If the EMSK is available but no EMSK Compound MAC was sent and its
>      policy does not accept MSK-based MAC, then the receiver handles
>      like an invalid Crypto-Binding TLV with a fatal error.
>
>
>
> If the ith inner method does not generate an EMSK or MSK, then IMSKi
> is set to zero (e.g., MSKi = 32 octets of 0x00s).  If an inner method
> fails, then it is not included in this calculation.
>
>
>
> It Should Say:
>
>
>
> On the sender of the Crypto-Binding TLV side:
>
>      If the EMSK is not available, then the sender computes the Compound
>      MAC using the CMK generated from MSK (CMK-MSK) of the inner method.
>
>      If the EMSK is available and the sender's policy accepts MSK-based
>      MAC, then the sender computes two Compound MAC values.  The first
>      is computed with the CMK generated from the EMSK (CMK-EMSK).  The
>
>      second one is computed using the CMK-MSK.  Both MACs are
>
>      then sent to the other side.  This also means the sender must generate
>
>      both EMSK and MSK based S-IMCKs.
>
>      If the EMSK is available but the sender's policy does not allow
>      downgrading to CMK-MSK MAC, then the sender SHOULD only send
>      a MAC computed from the CMK-EMSK.
>
>    On the receiver of the Crypto-Binding TLV side:
>
>      If the EMSK is not available and an CMK-MSK Compound MAC was
>      sent, then the receiver validates the Compound MAC and sends back
>      an CMK-MSK Compound MAC response.
>
>      If the EMSK is not available and no CMK-MSK Compound MAC was
>      sent, then the receiver handles like an invalid Crypto-Binding TLV
>      with a fatal error.
>
>      If the EMSK is available and a CMK-EMSK Compound MAC was sent,
>      then the receiver validates it and creates a response Compound MAC
>      using the CMK-EMSK.
>
>      If the EMSK is available but no CMK-EMSK Compound MAC was sent
>      and its policy accepts CMK-MSK MAC, then the receiver validates
>      it using the CMK-MSK and, if successful, generates and returns an MSK-
>      based Compound MAC.
>
>      If the EMSK is available but no CMK-EMSK Compound MAC was sent and its
>      policy does not accept CMK-MSK MAC, then the receiver handles
>      like an invalid Crypto-Binding TLV with a fatal error.
>
>
>
> The IMSK used is either the EMSK-based IMSK or the MSK based IMSK depending
> upon the rules outlined above. If the ith inner method does not generate
> an EMSK
> or MSK, then IMSKi is set to zero (e.g., MSKi = 32 octets of 0x00s).    It
> is possible
>
> that two S-IMCKs for a step may be generated based on the rules above.  In
> this
>
> case the S-IMCK for further calculations is chosen as follows.  If the MAC
> based
>
> on the CMK-EMSK is verified then the S-IMCK generated based on the EMSK is
>
> used.  Else, if the MAC based on the CMK-MSK is verified then the S-IMCK
>
> generated based on the MSK is used.  If an inner method fails or MAC
> verification
>
> fails then S-IMCK is not used in further calculation.
>
>
>
> Section 5.4 Says:
>
> TEAP authentication assures the Master Session Key (MSK) and Extended
>  Master Session Key (EMSK) output from the EAP method are the result
>  of all authentication conversations by generating an Intermediate
>  Compound Key (IMCK).  The IMCK is mutually derived by the peer and
>  the server as described in Section 5.2 by combining the MSKs from inner
>
>  EAP methods with key material from TEAP Phase 1.
>
>
>
> It should say:
>
>
>
> TEAP authentication assures the Master Session Key (MSK) and Extended
>  Master Session Key (EMSK) output from the EAP method are the result
>  of all authentication conversations by generating an Intermediate
>  Compound Key (IMCK).  The IMCK is mutually derived by the peer and
>  the server as described in Section 5.2 by combining the IMSKs from inner
>
>  EAP methods with key material from TEAP Phase 1.
>
>
>
> Note:
>
>
>
> This revision is to clarify how to handle the case where you need to
> generate
>
> both MSK and EMSK keys.   The original text was incomplete and ambiguous
>
> in some places.
>
_______________________________________________
Emu mailing list
Emu@ietf.org
https://www.ietf.org/mailman/listinfo/emu

Reply via email to