xoofff

package
v0.0.0-...-5475256 Latest Latest
Warning

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

Go to latest
Published: Jun 6, 2024 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package xoofff implements Xoofff deck function according to section 3 in https://eprint.iacr.org/2018/767.pdf which primairly uses the Farfalle construction in https://eprint.iacr.org/2016/1188.pdf.

Index

Constants

View Source
const (
	// The blocksize of Xoofff in bytes.
	BlockSize = 48

	// KeySize is the maximal size of the key used by Xoofff, in bytes.
	KeySize = 48
)

Variables

View Source
var ErrXoofffKeyLen = errors.New("xoofff: bad key length")

Functions

This section is empty.

Types

type Farfalle

type Farfalle interface {
	// Write absorbs more data into the Farfalle's state. It panics if called
	// after Read.
	io.Writer

	// Read squeezes more data from the deck function.
	io.Reader

	// Reset resets the Farfalle to its initial state.
	Reset()

	// BlockSize returns the Farfalle's underlying block size.
	// The Write method must be able to accept any amount
	// of data, but it may operate more efficiently if all writes
	// are a multiple of the block size.
	BlockSize() int
}

func New

func New(key []byte) (Farfalle, error)

New returns a new Farfalle for the Xoofff deck function that uses the given key.

Errors if the key is larger than 384 bits (48 bytes).

func NewXoofffie

func NewXoofffie(key []byte) (Farfalle, error)

New returns a new Farfalle for the Xoofffie keyed hash function that uses the given key.

Errors if the key is larger than 384 bits (48 bytes).

Jump to

Keyboard shortcuts

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