Skip to content

LLT-7632: Use private key from requested state to configure DERP - #1982

Open
tomaszpatejko wants to merge 1 commit into
mainfrom
LLT-7632-relay-cant-authenticate-with-garbage-key
Open

LLT-7632: Use private key from requested state to configure DERP#1982
tomaszpatejko wants to merge 1 commit into
mainfrom
LLT-7632-relay-cant-authenticate-with-garbage-key

Conversation

@tomaszpatejko

@tomaszpatejko tomaszpatejko commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Problem

If a DERP peer sets a secret key on its WG interface incorrectly (due to, for example, error returned by WG interface), other DERP peers, will not be able to identify this peer with a public key derived from its secret key.

This happens because DERP relay receives the incorrect secret key in the DERP config and uses this key to establish direct connection between peers.

Solution

A secret key from RequestedState::device_config is used to configure DERP. This key in turn is used for WG interface reconfiguration in consolidate_wg_state function.

Fixes LLT-7632.

☑️ Definition of Done checklist

  • Commit history is clean (requirements)
  • README.md is updated
  • Functionality is covered by unit or integration tests

@tomaszpatejko
tomaszpatejko requested a review from a team as a code owner September 8, 2026 11:53
If a DERP peer sets a secret key on its WG interface incorrectly
(due to, for example, error returned by WG interface), other DERP peers,
will not be able to identify this peer with a public key derived from
its private key.

This will happen because DERP relay receives the incorrect secret key in
the DERP config and uses this key to establish direct connection between peers.

So a secret key from requested state is used to configure DERP. This key in turn
is used for WG interface reconfiguration in consolidate_wg_state function.

Fixes LLT-7632.
@tomaszpatejko
tomaszpatejko force-pushed the LLT-7632-relay-cant-authenticate-with-garbage-key branch from a1e9a1c to be47af3 Compare September 8, 2026 12:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant