replay

package
v0.17.0 Latest Latest
Warning

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

Go to latest
Published: Nov 10, 2025 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Overview

Package replay implements an efficient anti-replay algorithm as specified in RFC 6479.

Index

Constants

View Source
const (
	// RekeyAfterMessages is the maximum number of messages that can be sent before rekeying.
	RekeyAfterMessages = (1 << 60)
	// RejectAfterMessages is the maximum number of messages that can be accepted before rejecting further messages.
	RejectAfterMessages = (1 << 64) - (1 << 13) - 1
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Filter

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

Filter rejects replayed messages by checking if message counter value is within a sliding window of previously received messages. The zero value for Filter is an empty, ready-to-use, thread-safe filter.

func (*Filter) Reset

func (f *Filter) Reset()

Reset resets the filter to empty state.

func (*Filter) ValidateCounter

func (f *Filter) ValidateCounter(counter, limit uint64) bool

ValidateCounter checks if the counter should be accepted. Overlimit counters (>= limit) are always rejected.

Jump to

Keyboard shortcuts

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