auth/algo/algo.go
shchva 508713f53d create: pkg algo
pkg algo описывает параметры подписи
2025-01-10 18:34:20 +03:00

21 lines
778 B
Go

package algo
import "errors"
var (
ErrInvalidSignature = errors.New("signature is not valid")
)
// KeyType название криптографического алгоритма
type KeyType string
// AlgorithmType название алгоритма хеширования
type AlgorithmType string
type Algorithm interface {
Sign(payload []byte) ([]byte, error) // Sign подписывает данные
Verify(payload, signature []byte) error // Verify проверяет подпись
Key() KeyType // Key возвращает название криптографического алгоритма
Algo() AlgorithmType // Algo возвращает название алгоритма хеширования
}