Files
cryptography/cipher/cipher.go
2025-05-19 13:41:36 +02:00

21 lines
673 B
Go

package cipher
import "errors"
var ErrInvalidKeyLength = errors.New("Invalid key length")
// A Block represents an implementation of a block cipher using block cipher
// specific parameters.
type Block interface {
// Encrypt a source block into the destination. dst and src must be exactly
// block sized. Panics if blocks are not sized correctly.
Encrypt(dst, src []byte)
// Decrypt a source block into the destination. dst and src must be exactly
// block sized. Panics if blocks are not sized correctly.
Decrypt(dst, src []byte)
// BlockSize returns the blocksize in bytes
BlockSize() int
// Algorithm returns the name of the algorithm
Algorithm() string
}