From 508713f53dc29031e2e1ee3abedcff3064232fe1 Mon Sep 17 00:00:00 2001 From: shchva Date: Fri, 10 Jan 2025 18:34:20 +0300 Subject: [PATCH] create: pkg algo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit pkg algo описывает параметры подписи --- algo/algo.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 algo/algo.go diff --git a/algo/algo.go b/algo/algo.go new file mode 100644 index 0000000..2d317d2 --- /dev/null +++ b/algo/algo.go @@ -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 возвращает название алгоритма хеширования +}