Subject: [Detnet] DetNet Use Cases comment - time properties of cryptographic algorithms used to verify traffic

From: "Grossman, Ethan A." <[email-masked]>
Date: Thu, 20 Dec 2018 00:42:19 +0000

Hi All,

In going over the remaining IESG review comments, there is this question on Sec 11.5 (Security). I don't think it is worth holding up the Use Cases draft for, but it seems worth a conversation on the list.

Text from Section 11.5:

>      addition to arriving with the data content as intended, the data must

>      also arrive at the expected time.  This may present "new" security

>      challenges to implementers, and must be addressed accordingly.  There

>      are other security implications, including (but not limited to) the

>      change in attack surface presented by packet replication and

>      elimination.

Reviewer's Comment:

Do these requirements impose new requirements on the cryptographic algorithms used to verify traffic?

Ethan's thoughts:

Good question, for example do such algorithms have deterministic execution times? Is there a large spread between best- and worst-case execution times? Is this a topic for the Security draft? The Architecture draft? Or is this a more general matter of network (or network silicon) design/implementation/performance, and thus doesn't get covered in DetNet drafts?
--------------------------------------------------

---

From: "Black, David" <[email-masked]>
Date: Thu, 20 Dec 2018 02:47:10 +0000

> Good question, for example do such algorithms have deterministic execution times?

Generally, yes, to a first approximation, as the algorithms used to encrypt and verify traffic are usually symmetric crypto algorithms such as AES and SHA-2 which perform the same computation regardless of input.   Non-deterministic execution times are associated with asymmetric crypto algorithms (e.g., public key algorithms), which are not typically used on a packet-by-packet basis - they're used for session setup, including key exchange, from which keys are derived for the symmetric algorithms.

Thanks, --David

From: detnet [mailto:[email-masked]] On Behalf Of Grossman, Ethan A.
Sent: Wednesday, December 19, 2018 7:42 PM
To: [email-masked]
Cc: [email-masked]
Subject: [Detnet] DetNet Use Cases comment - time properties of cryptographic algorithms used to verify traffic

[EXTERNAL EMAIL]

Hi All,

Reviewer's Comment:

Ethan's thoughts:

---

From: "Pascal Thubert (pthubert)" <[email-masked]>
Date: Thu, 20 Dec 2018 07:34:28 +0000

Hello David :

Asymmetric is a lot more expensive, I'm hearing, but could be very useful to ensure that the packets in a DetNet flow are from the proper source.
Say that the DetNet flow is associated with a keypair, and that the private key is available to the source of the flow whereas the public key is distributed with the flow information.
We should not preclude that should we? As long as the crypto time is bounded we should be OK.

All the best

pascal

From: detnet <[email-masked]> On Behalf Of Black, David
Sent: jeudi 20 décembre 2018 03:47
To: Grossman, Ethan A. <[email-masked]>; [email-masked]
Cc: [email-masked]
Subject: Re: [Detnet] DetNet Use Cases comment - time properties of cryptographic algorithms used to verify traffic

Thanks, --David

From: detnet [mailto:[email-masked]] On Behalf Of Grossman, Ethan A.
Sent: Wednesday, December 19, 2018 7:42 PM
To: [email-masked]<mailto:[email-masked]>
Cc: [email-masked]<mailto:[email-masked]>
Subject: [Detnet] DetNet Use Cases comment - time properties of cryptographic algorithms used to verify traffic

[EXTERNAL EMAIL]

Hi All,

Reviewer's Comment:

Ethan's thoughts:

---

From: Eric Rescorla <[email-masked]>
Date: Thu, 20 Dec 2018 04:51:15 -0800

Hmm... You actually do need to go to some effort to make symmetric
algorithms constant-time. See for instance:
http://www.isg.rhul.ac.uk/tls/lucky13.html

On Wed, Dec 19, 2018 at 6:47 PM Black, David <[email-masked]> wrote:

> Generally, yes, to a first approximation, as the algorithms used to
> encrypt and verify traffic are usually symmetric crypto algorithms such as
> AES and SHA-2 which perform the same computation regardless of input.
> Non-deterministic execution times are associated with asymmetric crypto
> algorithms (e.g., public key algorithms), which are not typically used on a
> packet-by-packet basis - they’re used for session setup, including key
> exchange, from which keys are derived for the symmetric algorithms.
>
>
>
> Thanks, --David
>
>
>
> *From:* detnet [mailto:[email-masked]] *On Behalf Of *Grossman,
> Ethan A.
> *Sent:* Wednesday, December 19, 2018 7:42 PM
> *To:* [email-masked]
> *Cc:* [email-masked]
> *Subject:* [Detnet] DetNet Use Cases comment - time properties of
> cryptographic algorithms used to verify traffic
>
>
>
> [EXTERNAL EMAIL]
>
> Hi All,
>
> In going over the remaining IESG review comments, there is this question
> on Sec 11.5 (Security). I don’t think it is worth holding up the Use Cases
> draft for, but it seems worth a conversation on the list.
>
>
>
> Text from Section 11.5:
>
> Reviewer’s Comment:
> Ethan’s thoughts:
> Good question, for example do such algorithms have deterministic execution
> times? Is there a large spread between best- and worst-case execution
> times? Is this a topic for the Security draft? The Architecture draft? Or
> is this a more general matter of network (or network silicon)
> design/implementation/performance, and thus doesn’t get covered in DetNet
> drafts?
>

---

From: "Black, David" <[email-masked]>
Date: Thu, 20 Dec 2018 16:16:45 +0000

Hmm … looking at that reference, I’m tempted to split hairs by observing that the TLS/DTLS computational non-determinism arises from the padding format, which is not exactly a crypto algorithm.

OTOH, what actually matters in detnet context is determinism of the entire computation that verifies the data, which may include decryption, independent of what portions of that computation are viewed as crypto vs. not crypto.  A sentence noting determinism as an important property of the overall security computation could be a useful addition to one of the drafts.

Thanks, --David

From: Eric Rescorla [mailto:[email-masked]]
Sent: Thursday, December 20, 2018 7:51 AM
To: Black, David
Cc: Grossman, Ethan A.; [email-masked]
Subject: Re: DetNet Use Cases comment - time properties of cryptographic algorithms used to verify traffic

[EXTERNAL EMAIL]
Hmm... You actually do need to go to some effort to make symmetric algorithms constant-time. See for instance: http://www.isg.rhul.ac.uk/tls/lucky13.html

> Good question, for example do such algorithms have deterministic execution times?

Generally, yes, to a first approximation, as the algorithms used to encrypt and verify traffic are usually symmetric crypto algorithms such as AES and SHA-2 which perform the same computation regardless of input.   Non-deterministic execution times are associated with asymmetric crypto algorithms (e.g., public key algorithms), which are not typically used on a packet-by-packet basis - they’re used for session setup, including key exchange, from which keys are derived for the symmetric algorithms.

Thanks, --David

From: detnet [mailto:[email-masked]<mailto:[email-masked]>] On Behalf Of Grossman, Ethan A.

[EXTERNAL EMAIL]

Hi All,

In going over the remaining IESG review comments, there is this question on Sec 11.5 (Security). I don’t think it is worth holding up the Use Cases draft for, but it seems worth a conversation on the list.

Reviewer’s Comment:

Ethan’s thoughts:

Good question, for example do such algorithms have deterministic execution times? Is there a large spread between best- and worst-case execution times? Is this a topic for the Security draft? The Architecture draft? Or is this a more general matter of network (or network silicon) design/implementation/performance, and thus doesn’t get covered in DetNet drafts?
--------------------------------------------------

---

From: "Black, David" <[email-masked]>
Date: Fri, 21 Dec 2018 22:53:02 +0000

Hi Pascal,

I would not preclude that, but I would discourage it, as, if I understand what is proposed, it involves checking a digital signature on each packet at arbitrary intermediate points along the flow, which is indeed rather expensive.

If only endpoint checks or checks at a small number of intermediate points are required, a more effective approach is to use asymmetric crypto to authenticate distribution or exchange of a secret key for symmetric crypto - a successful check based on that key provides traffic origin verification as long as the key is kept secret by the participants.  Both TLS and IKE (for IPsec) are examples of this for endpoint checks.

In both cases, origin verification also requires replay detection mechanism as part of the security protocol to prevent an attacker from recording and resending traffic, e.g., as a denial of service attack on flow forwarding resources.

Thanks, --David

From: detnet [mailto:[email-masked]] On Behalf Of Pascal Thubert (pthubert)
Sent: Thursday, December 20, 2018 2:34 AM
To: Black, David; Grossman, Ethan A.; [email-masked]
Cc: [email-masked]
Subject: Re: [Detnet] DetNet Use Cases comment - time properties of cryptographic algorithms used to verify traffic

[EXTERNAL EMAIL]
Hello David :

All the best

pascal

From: detnet <[email-masked]<mailto:[email-masked]>> On Behalf Of Black, David
Sent: jeudi 20 décembre 2018 03:47
To: Grossman, Ethan A. <[email-masked]<mailto:[email-masked]>>; [email-masked]<mailto:[email-masked]>
Cc: [email-masked]<mailto:[email-masked]>
Subject: Re: [Detnet] DetNet Use Cases comment - time properties of cryptographic algorithms used to verify traffic

Thanks, --David

[EXTERNAL EMAIL]

Hi All,

Reviewer's Comment:

Ethan's thoughts:

---

From: "Pascal Thubert (pthubert)" <[email-masked]>
Date: Sat, 22 Dec 2018 08:29:55 +0000

Hello David

We want every intermediate node to be able to detect bad packets as part of ingress filtering. If we use symmetrical keys then the key must be given to all relays which augments the risk of a leak. And if any relay is compromised or misbehaving it may inject traffic in the flow.

This is why if we could afford it an asymmetrical crypto would be preferable.

Merry Christmas!

Pascal

Le 21 déc. 2018 à 23:53, Black, David <[email-masked]<mailto:[email-masked]>> a écrit :

Hi Pascal,

If only endpoint checks or checks at a small number of intermediate points are required, a more effective approach is to use asymmetric crypto to authenticate distribution or exchange of a secret key for symmetric crypto – a successful check based on that key provides traffic origin verification as long as the key is kept secret by the participants.  Both TLS and IKE (for IPsec) are examples of this for endpoint checks.

Thanks, --David

To: Black, David; Grossman, Ethan A.; [email-masked]<mailto:[email-masked]>

[EXTERNAL EMAIL]
Hello David :

Asymmetric is a lot more expensive, I’m hearing, but could be very useful to ensure that the packets in a DetNet flow are from the proper source.
Say that the DetNet flow is associated with a keypair, and that the private key is available to the source of the flow whereas the public key is distributed with the flow information.
We should not preclude that should we? As long as the crypto time is bounded we should be OK.

All the best

pascal

Thanks, --David

[EXTERNAL EMAIL]

Hi All,

Reviewer’s Comment:

Ethan’s thoughts: