runtime

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 13, 2026 License: AGPL-3.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Run

func Run(ctx context.Context, logger *zap.Logger) error

Run performs application startup, blocks for the process lifetime, and handles graceful shutdown.

Types

type KeyPinner

type KeyPinner struct {
	// contains filtered or unexported fields
}

KeyPinner implements transport.Verifier with first-seen key pinning. The first valid key seen for a node ID sticks: later handshakes presenting a different key at the same generation are rejected with a loud log, and the operator recovers by bumping the generation, which is an intentional act. Pins persist in the journal, so restarts re-pin from replay instead of trusting whoever arrives first.

The steady path, a handshake presenting the pinned key, is one view read and records nothing. Recording happens only on first sight and rotation.

func (*KeyPinner) Verify

func (p *KeyPinner) Verify(ctx context.Context, id uuid.UUID, generation uint64, pub, sig []byte) error

Verify checks a presented Noise parcel: CA signature first, so an unsigned key is never pinned, then the pin table.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL