create: pkg algo

pkg algo описывает параметры подписи
This commit is contained in:
shchva 2025-01-10 18:34:20 +03:00
parent beb3beb73c
commit 508713f53d

20
algo/algo.go Normal file
View File

@ -0,0 +1,20 @@
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 возвращает название алгоритма хеширования
}