Hi all,
we are working on the definition of an EAP mechanism that should help
managing device credentials for access networks. We are finalizing some
parts of the document and I would like to get the input from the WG (I
know it is not a WG document, yet, but I hope it will get adopted). [*]
In particular, I have the following issues that I can solve in different
ways and the reasons to adopt one or the other might depend on some
practical aspects when implementing EAP methods. Here's the questions:
* *EAP-CREDS Headers Format. *Usually EAP methods use the standard EAP
header format (Code, Identifier, Length, and Type fields), however
(thanks for the suggestions) EAP-CREDS now is required to be used as
a tunneled method where the requirement is that the outer method
provides the server/client auth and confidentiality. This means that
messages are encoded as payloads of (for example) EAP-TLS and,
technically, they do not need all those fields anymore. Moreover, we
can have the EAP-CREDS to use 32-bits sizes of the messages,
therefore we would not need the Length. My question for the group
is: shall we keep the same header to provide ease of development
(since libraries already know how to handle those headers) even if
this might result in wasting few bytes for each message ?
* *Fixed-Size TLVs.* In EAP-CREDS we define several TLVs, some of
them, it turns out, do not need to be variable length, but they are,
de facto, Fixed in size (e.g., it might be just one-byte value).
Initially, we thought about omitting the 'TLV Length' field and have
developers to "derive" the size of these TLVs by the 'TLV Type'
field. For example, if a TLV 'A' is just a 1 byte value, shall we
still have the 'TLV Length' (set to '1') or we shall omit the 'TLV
Length' for these structures ?
* *TLVs Length Size.* In EAP-CREDS we expect the majority of the
messages to be relatively small (since we provide the possibility to
encapsulate other protocols, that might not be true in that case;
For the integrated provisioning protocol, SPP, that is true).
However, with the increasing size of keys and crypto-related data
structures, the use of a 16-bit length field might not be enough
very soon. In order to address that, we currently use an extra
32-bit field for the message length that is used instead of the
standard 'Length' field and a 24-bit field for the TLV Length. Does
this make sense for everybody ? Shall we use a different approach
(e.g., provide a 32-bit field for the TLV Length instead) ?
Thanks for the feedback :D
Cheers,
Max
[*] = The version that is currently available in the Datatracker is
quite outdated, however, as soon as we finalize some of these aspects we
will publish the new version. The GIT repository is available (more
updated, but not at the latest version) is available at GitHub
(https://github.com/openca/eap-creds)
P.S.: I added the EAP-CREDS implementation for the Hackaton, please let
me know if you want to participate. I have not organized any hackaton
events before, so there might be glitches/issues/etc. because of my
inexperience... if anybody would like to help, that would be great!
--
Best Regards,
Massimiliano Pala, Ph.D.
OpenCA Labs Director
OpenCA Logo
_______________________________________________
Emu mailing list
Emu@ietf.org
https://www.ietf.org/mailman/listinfo/emu