All of lore.kernel.org
 help / color / mirror / Atom feed
* Future changes in crypto algorithms
@ 2018-06-18 12:08 Vivien Malerba
  2018-06-21 22:58 ` Phil Hofer
  2018-06-22  4:44 ` Matthias Urlichs
  0 siblings, 2 replies; 3+ messages in thread
From: Vivien Malerba @ 2018-06-18 12:08 UTC (permalink / raw)
  To: wireguard

[-- Attachment #1: Type: text/plain, Size: 1149 bytes --]

Hi!
My understanding is that the crypto algorithms have been carefully chosen
to avoid having to include ciphers negotiations; with the assumption that
in case a weakness is ever found in one of them, the faulty algorithms will
be "replaced" and all people will have to do is update (the white paper
says "If holes are found in the underlying primitives, all endpoints will
be required to update").

However, for any organization which will use WireGuard, even if admins are
very effective at applying updates, updating all the endpoint systems
simultaneously is not realistic. At the same time, it may be the case that
the organization can't afford the downtime, in which case using WireGuard
will simply not be an option, which is too bad.

Maybe it's too early to think about this at the time, but otherwise I think
including a mechanism which would instruct the system as "for now, use the
new algorithms but still allow for the old ones if the new ones fail while
I update all the endpoints" would answer the problem.

Don't know how to implement that correctly though, but I just wanted to
bring that point to attention.

Best regards,
Vivien

[-- Attachment #2: Type: text/html, Size: 2191 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Future changes in crypto algorithms
  2018-06-18 12:08 Future changes in crypto algorithms Vivien Malerba
@ 2018-06-21 22:58 ` Phil Hofer
  2018-06-22  4:44 ` Matthias Urlichs
  1 sibling, 0 replies; 3+ messages in thread
From: Phil Hofer @ 2018-06-21 22:58 UTC (permalink / raw)
  To: Vivien Malerba; +Cc: wireguard

[-- Attachment #1: Type: text/plain, Size: 1900 bytes --]

Avoided protocol negotiation doesn't just simplify the protocol; it prevents downgrade attacks.

If the protocol supported two ciphersuites simultaneously, and one of them was compromised, then attackers would probably try to force downgrades to the compromised ciphersuite. (You might be able to prevent this through configuration, but that adds further complexity.)

If you actually needed to deploy two incompatible versions of WireGuard, you could have one node load both kernel modules and bridge the two networks. Then, you'd upgrade by having nodes go from one side of the network to the other.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On June 21, 2018 3:53 PM, Vivien Malerba <vmalerba@gmail.com> wrote:

> Hi!
> My understanding is that the crypto algorithms have been carefully chosen to avoid having to include ciphers negotiations; with the assumption that in case a weakness is ever found in one of them, the faulty algorithms will be "replaced" and all people will have to do is update (the white paper says "If holes are found in the underlying primitives, all endpoints will be required to update").
>
> However, for any organization which will use WireGuard, even if admins are very effective at applying updates, updating all the endpoint systems simultaneously is not realistic. At the same time, it may be the case that the organization can't afford the downtime, in which case using WireGuard will simply not be an option, which is too bad.
>
> Maybe it's too early to think about this at the time, but otherwise I think including a mechanism which would instruct the system as "for now, use the new algorithms but still allow for the old ones if the new ones fail while I update all the endpoints" would answer the problem.
>
> Don't know how to implement that correctly though, but I just wanted to bring that point to attention.
>
> Best regards,
> Vivien

[-- Attachment #2: Type: text/html, Size: 3112 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Future changes in crypto algorithms
  2018-06-18 12:08 Future changes in crypto algorithms Vivien Malerba
  2018-06-21 22:58 ` Phil Hofer
@ 2018-06-22  4:44 ` Matthias Urlichs
  1 sibling, 0 replies; 3+ messages in thread
From: Matthias Urlichs @ 2018-06-22  4:44 UTC (permalink / raw)
  To: wireguard

[-- Attachment #1: Type: text/plain, Size: 896 bytes --]

On 18.06.2018 14:08, Vivien Malerba wrote:
> However, for any organization which will use WireGuard, even if admins
> are very effective at applying updates, updating all the endpoint
> systems simultaneously is not realistic. At the same time, it may be
> the case that the organization can't afford the downtime, in which
> case using WireGuard will simply not be an option, which is too bad.

Fixing any crypto weakness will require kernel updates and configuration
changes. A very easy config change, compared to all the other work you'd
have to do if a flaw is discovered that forces a different crypto
algorithm, is "use a second WG instance with a different UDP port".

A script that monitors connections to the new WG instance and
auto-disables the associated peer keys in the old instance is easy
enough to write.

Problem solved, no downgrade attack possible.

-- 
-- Matthias Urlichs


[-- Attachment #2: Type: text/html, Size: 1485 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-06-22  4:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-18 12:08 Future changes in crypto algorithms Vivien Malerba
2018-06-21 22:58 ` Phil Hofer
2018-06-22  4:44 ` Matthias Urlichs

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.