waves_logo Docs
  • O Ride
    O Ride
  • Начало работы
    Начало работы
  • Основы синтаксиса
    • Директивы
      Директивы
    • Определение
      Определение
    • Выражение
      Выражение
    • Переменная
      Переменная
    • Функция
      Функция
    • Исключение
      Исключение
    • Комментарий
      Комментарий
    Основы синтаксиса
  • Типы скриптов
    • dApp-скрипт
      • Аннотации
        Аннотации
      • Вызываемая функция
        Вызываемая функция
      • Функция-верификатор
        Функция-верификатор
      dApp-скрипт
    • Скрипт аккаунта
      Скрипт аккаунта
    • Скрипт ассета
      Скрипт ассета
    Типы скриптов
  • Стандартная библиотека
    Стандартная библиотека
  • Типы данных
    • Any
      Any
    • BigInt
      BigInt
    • Boolean
      Boolean
    • ByteVector
      ByteVector
    • Int
      Int
    • String
      String
    • Unit
      Unit
    • List
      List
    • Кортеж
      Кортеж
    • Объединение
      Объединение
    Типы данных
  • Структуры
    • Действия скрипта
      • BinaryEntry
        BinaryEntry
      • BooleanEntry
        BooleanEntry
      • Burn
        Burn
      • DeleteEntry
        DeleteEntry
      • IntegerEntry
        IntegerEntry
      • Issue
        Issue
      • Lease
        Lease
      • LeaseCancel
        LeaseCancel
      • Reissue
        Reissue
      • ScriptTransfer
        ScriptTransfer
      • SponsorFee
        SponsorFee
      • StringEntry
        StringEntry
      Действия скрипта
    • Общие структуры
      • Address
        Address
      • Alias
        Alias
      • Asset
        Asset
      • AssetPair
        AssetPair
      • AttachedPayment
        AttachedPayment
      • BalanceDetails
        BalanceDetails
      • BlockInfo
        BlockInfo
      • Invocation
        Invocation
      • Order
        Order
      • Transfer
        Transfer
      Общие структуры
    • Структуры транзакций
      • BurnTransaction
        BurnTransaction
      • CreateAliasTransaction
        CreateAliasTransaction
      • DataTransaction
        DataTransaction
      • ExchangeTransaction
        ExchangeTransaction
      • GenesisTransaction
        GenesisTransaction
      • InvokeScriptTransaction
        InvokeScriptTransaction
      • IssueTransaction
        IssueTransaction
      • LeaseCancelTransaction
        LeaseCancelTransaction
      • LeaseTransaction
        LeaseTransaction
      • MassTransferTransaction
        MassTransferTransaction
      • ReissueTransaction
        ReissueTransaction
      • SetAssetScriptTransaction
        SetAssetScriptTransaction
      • SetScriptTransaction
        SetScriptTransaction
      • SponsorFeeTransaction
        SponsorFeeTransaction
      • TransferTransaction
        TransferTransaction
      • UpdateAssetInfoTransaction
        UpdateAssetInfoTransaction
      Структуры транзакций
    Структуры
  • Встроенные переменные
    Встроенные переменные
  • Встроенные функции
    • Математические функции
      Математические функции
    • Функции блокчейна
      Функции блокчейна
    • Функции верификации
      Функции верификации
    • Функции вызова dApp из dApp
      Функции вызова dApp из dApp
    • Функции декодирования
      Функции декодирования
    • Функции исключения
      Функции исключения
    • Функции кодирования
      Функции кодирования
    • Функции конвертации
      Функции конвертации
    • Функции массива байтов
      Функции массива байтов
    • Функции объединения
      Функции объединения
    • Функции списка
      Функции списка
    • Функции строки
      Функции строки
    • Функции транзакции данных
      Функции транзакции данных
    • Функции хеширования
      Функции хеширования
    • Функции хранилища данных аккаунта
      Функции хранилища данных аккаунта
    Встроенные функции
  • Операторы
    Операторы
  • match-case: сопоставление с шаблоном
    match-case: сопоставление с шаблоном
  • Итерации: FOLD<N>
    Итерации: FOLD<N>
  • Вызов dApp из dApp
    Вызов dApp из dApp
  • Ограничения
    • Сложность
      Сложность
    • Вес данных
      Вес данных
    Ограничения
  • Предыдущие версии
    • Версия 5
      • Вызываемая функция
        Вызываемая функция
      • Типы данных
        • Any
          Any
        • BigInt
          BigInt
        • Boolean
          Boolean
        • ByteVector
          ByteVector
        • Int
          Int
        • String
          String
        • Unit
          Unit
        • List
          List
        • Кортеж
          Кортеж
        • Объединение
          Объединение
        Типы данных
      • Структуры
        • Действия скрипта
          • BinaryEntry
            BinaryEntry
          • BooleanEntry
            BooleanEntry
          • Burn
            Burn
          • DeleteEntry
            DeleteEntry
          • IntegerEntry
            IntegerEntry
          • Issue
            Issue
          • Lease
            Lease
          • LeaseCancel
            LeaseCancel
          • Reissue
            Reissue
          • ScriptTransfer
            ScriptTransfer
          • SponsorFee
            SponsorFee
          • StringEntry
            StringEntry
          Действия скрипта
        • Общие структуры
          • Address
            Address
          • Alias
            Alias
          • Asset
            Asset
          • AssetPair
            AssetPair
          • AttachedPayment
            AttachedPayment
          • BalanceDetails
            BalanceDetails
          • BlockInfo
            BlockInfo
          • Invocation
            Invocation
          • Order
            Order
          • Transfer
            Transfer
          Общие структуры
        • Структуры транзакций
          • BurnTransaction
            BurnTransaction
          • CreateAliasTransaction
            CreateAliasTransaction
          • DataTransaction
            DataTransaction
          • ExchangeTransaction
            ExchangeTransaction
          • GenesisTransaction
            GenesisTransaction
          • InvokeScriptTransaction
            InvokeScriptTransaction
          • IssueTransaction
            IssueTransaction
          • LeaseCancelTransaction
            LeaseCancelTransaction
          • LeaseTransaction
            LeaseTransaction
          • MassTransferTransaction
            MassTransferTransaction
          • ReissueTransaction
            ReissueTransaction
          • SetAssetScriptTransaction
            SetAssetScriptTransaction
          • SetScriptTransaction
            SetScriptTransaction
          • SponsorFeeTransaction
            SponsorFeeTransaction
          • TransferTransaction
            TransferTransaction
          • UpdateAssetInfoTransaction
            UpdateAssetInfoTransaction
          Структуры транзакций
        Структуры
      • Встроенные переменные
        Встроенные переменные
      • Встроенные функции
        • Математические функции
          Математические функции
        • Функции блокчейна
          Функции блокчейна
        • Функции верификации
          Функции верификации
        • Функции вызова dApp из dApp
          Функции вызова dApp из dApp
        • Функции декодирования
          Функции декодирования
        • Функции исключения
          Функции исключения
        • Функции кодирования
          Функции кодирования
        • Функции конвертации
          Функции конвертации
        • Функции массива байтов
          Функции массива байтов
        • Функции объединения
          Функции объединения
        • Функции списка
          Функции списка
        • Функции строки
          Функции строки
        • Функции транзакции данных
          Функции транзакции данных
        • Функции хеширования
          Функции хеширования
        • Функции хранилища данных аккаунта
          Функции хранилища данных аккаунта
        Встроенные функции
      • Operators
        Operators
      • Limitations
        • Вес данных
          Вес данных
        Limitations
      Версия 5
    • Версии 4 и 3
      • Вызываемая функция
        Вызываемая функция
      • Типы данных
        • Boolean
          Boolean
        • ByteVector
          ByteVector
        • Int
          Int
        • String
          String
        • Unit
          Unit
        • List
          List
        • Кортеж
          Кортеж
        • Объединение
          Объединение
        Типы данных
      • Структуры
        • Действия скрипта
          • BinaryEntry (v4)
            BinaryEntry (v4)
          • BooleanEntry (v4)
            BooleanEntry (v4)
          • Burn (v4)
            Burn (v4)
          • DataEntry (v3)
            DataEntry (v3)
          • DeleteEntry (v4)
            DeleteEntry (v4)
          • IntegerEntry (v4)
            IntegerEntry (v4)
          • Issue (v4)
            Issue (v4)
          • Reissue (v4)
            Reissue (v4)
          • ScriptTransfer (v3 and v4)
            ScriptTransfer (v3 and v4)
          • SponsorFee (v4)
            SponsorFee (v4)
          • StringEntry (v4)
            StringEntry (v4)
          Действия скрипта
        • Результаты скрипта (v3)
          • ScriptResult
            ScriptResult
          • TransferSet
            TransferSet
          • WriteSet
            WriteSet
          Результаты скрипта (v3)
        • Общие структуры
          • Address
            Address
          • Alias
            Alias
          • Asset
            Asset
          • AssetPair
            AssetPair
          • AttachedPayment
            AttachedPayment
          • BalanceDetails
            BalanceDetails
          • BlockInfo
            BlockInfo
          • Invocation
            Invocation
          • Order
            Order
          • Transfer
            Transfer
          Общие структуры
        • Структуры транзакций
          • BurnTransaction
            BurnTransaction
          • CreateAliasTransaction
            CreateAliasTransaction
          • DataTransaction
            DataTransaction
          • ExchangeTransaction
            ExchangeTransaction
          • GenesisTransaction
            GenesisTransaction
          • InvokeScriptTransaction
            InvokeScriptTransaction
          • IssueTransaction
            IssueTransaction
          • LeaseCancelTransaction
            LeaseCancelTransaction
          • LeaseTransaction
            LeaseTransaction
          • MassTransferTransaction
            MassTransferTransaction
          • ReissueTransaction
            ReissueTransaction
          • SetAssetScriptTransaction
            SetAssetScriptTransaction
          • SetScriptTransaction
            SetScriptTransaction
          • [en] SponsorFeeTransaction
            [en] SponsorFeeTransaction
          • TransferTransaction
            TransferTransaction
          • UpdateAssetInfoTransaction
            UpdateAssetInfoTransaction
          Структуры транзакций
        Структуры
      • Встроенные переменные
        Встроенные переменные
      • Встроенные функции
        • Функции хранилища данных аккаунта
          Функции хранилища данных аккаунта
        • Функции блокчейна
          Функции блокчейна
        • Функции массива байтов
          Функции массива байтов
        • Функции конвертации
          Функции конвертации
        • Функции транзакции данных
          Функции транзакции данных
        • Функции декодирования
          Функции декодирования
        • Функции кодирования
          Функции кодирования
        • Функции исключения
          Функции исключения
        • Функции хеширования
          Функции хеширования
        • Функции списка
          Функции списка
        • Математические функции
          Математические функции
        • Функции строки
          Функции строки
        • Функции объединения
          Функции объединения
        • Функции верификации
          Функции верификации
        Встроенные функции
      • Операторы
        Операторы
      • Ограничения
        • Вес данных
          Вес данных
        Ограничения
      Версии 4 и 3
    Предыдущие версии
  • Подключение библиотек
    Подключение библиотек
  • Компоненты Ride
    Компоненты Ride
      • English
      • Русский
      On this page
        • bn256Groth16Verify
        • checkMerkleProof
        • createMerkleRoot
        • ecrecover
        • groth16Verify
        • rsaVerify
        • sigVerify
      waves_logo Docs

          # [Ride v4 и v3] Функции верификации

          ⚠️ Это документация Стандартной библиотеки версии 4 и 3. Рекомендуем использовать версию 6. Перейти к версии 6

          Название Описание Сложность
          bn256Groth16Verify Семейство функций.
          Осуществляют проверку zk-SNARK по протоколу groth16 на кривой bn254
          800–1650
          checkMerkleProof Проверяет, что данные являются частью дерева Меркла 30
          createMerkleRoot Вычисляет корневой хеш дерева Меркла транзакций блока 30
          ecrecover Восстанавливает открытый ключ из хеша сообщения и цифровой подписи ECDSA 70
          groth16Verify Семейство функций.
          Осуществляют проверку zk-SNARK по протоколу groth16 на кривой bls12-381
          1200–2700
          rsaVerify Семейство функций.
          Проверяют достоверность цифровой подписи RSA
          300 для Стандартной библиотеки версии 3
          500–1000 для Стандартной библиотеки версии 4
          sigVerify Семейство функций.
          Проверяют достоверность цифровой подписи Curve25519 достоверна
          100 для Стандартной библиотеки версии 3
          47–200 для Стандартной библиотеки версии 4

          # bn256Groth16Verify

          Семейство функций. Осуществляют проверку доказательства с нулевым разглашением zk-SNARK по протоколу groth16 на кривой bn254. (Несмотря на то что в научной литературе кривая называется bn254, в коде принято использовать обозначение bn256.)

          ⚠️ Семейство функций bn256Groth16Verify добавлено в Стандартной библиотеке версии 4.

          Название Макс. кол-во входов Сложность
          bn256Groth16Verify(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 16 1650
          bn256Groth16Verify_1inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 1 800
          bn256Groth16Verify_2inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 2 850
          bn256Groth16Verify_3inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 3 950
          bn256Groth16Verify_4inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 4 1000
          bn256Groth16Verify_5inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 5 1050
          bn256Groth16Verify_6inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 6 1100
          bn256Groth16Verify_7inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 7 1150
          bn256Groth16Verify_8inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 8 1200
          bn256Groth16Verify_9inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 9 1250
          bn256Groth16Verify_10inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 10 1300
          bn256Groth16Verify_11inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 11 1350
          bn256Groth16Verify_12inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 12 1400
          bn256Groth16Verify_13inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 13 1450
          bn256Groth16Verify_14inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 14 1550
          bn256Groth16Verify_15inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 15 1600

          # Параметры

          Параметр Описание
          vk: ByteVector Ключ для проверки.
          Максимальный размер:
          • Для функций bn256Groth16Verify_<N>inputs — не более 256 + 32 × N байт.
          • Для функции bn256Groth16Verify — не более 256 + 32 × 16 = 768 байта
          proof: ByteVector zk-SNARK. фиксированный размер: 128 байт
          inputs: ByteVector Массив публичных входов доказательства с нулевым разглашением. Например, массив хешей UTXO в случае анонимных транзакций.
          Максимальный размер:
          • Для функций bn256Groth16Verify_<N>inputs — не более 32 × N байт.
          • Для функции bn256Groth16Verify — не более 512 байт.

          # checkMerkleProof

          ⚠️ Функция checkMerkleProof не входит в Стандартную библиотеку версии 4. Используйте createMerkleRoot вместо нее.

          Проверяет, что данные являются частью дерева Меркла .

          Для хеширования дерева Меркла используется функция хеширования BLAKE2b .

          checkMerkleProof(merkleRoot: ByteVector, merkleProof: ByteVector, valueBytes: ByteVector): Boolean
          

          # Параметры

          Параметр Описание
          merkleRoot: ByteVector Корневой хеш дерева Меркла.
          merkleProof: ByteVector Массив хешей.
          valueBytes: ByteVector Данные для проверки.

          # createMerkleRoot

          ⚠️ Функция createMerkleRoot добавлена в Стандартной библиотеке версии 4.

          Вычисляет корневой хеш транзакций блока на основе хеша транзакции и соседних хешей дерева Меркла, используя алгоритм хеширования BLAKE2b-256 . Чтобы проверить присутствие транзакции в блоке, нужно сравнить вычисленный хеш с с полем transactionsRoot в заголовке блока. Подробное описание приведено в разделе Корневой хеш транзакции.

          createMerkleRoot(merkleProofs: List[ByteVector], valueBytes: ByteVector, index: Int): ByteVector
          

          # Параметры

          Параметр Описание
          merkleProofs: List[ByteVector] Массив соседних хешей дерева Меркла. До 16 элементов, размер каждого 32 байта
          valueBytes: ByteVector Хеш транзакции. Фиксированный размер: 32 байта. Для хеширования можно использовать функцию blake2b256. Хешировать транзакцию нужно вместе с подписью
          index: Int Порядковый номер транзакции в блоке

          # ecrecover

          ⚠️ Функция ecrecover добавлена в Стандартной библиотеке версии 4.

          Возвращает открытый ключ, восстановленный из хеша сообщения и цифровой подписи ECDSA на основе эллиптической кривой secp256k1. Завершается ошибкой, если восстановить открытый ключ не удалось.

          Открытый ключ возвращается в несжатом формате (64 байта).

          Функцию можно использовать для проверки достоверности цифровой подписи сообщения, сравнив восстановленный открытый ключ с ключом отправителя.

          ecrecover(messageHash: ByteVector, signature: ByteVector): ByteVector
          

          # Параметры

          Параметр Описание
          messageHash: ByteVector Keccak-256-хеш сообщения. Фиксированный размер: 32 байта
          signature: ByteVector Цифровая подпись ECDSA. Фиксированный размер: 65 байт

          # Пример

          Для верификации транзакции блокчейна Ethereum нужны следующие данные:

          • транзакция;
          • подпись, полученная с помощью функции ecsign (конкатенация байтов r, s и v);
          • открытый ключ отправителя.
          func check(t: ByteVector, signature: ByteVector, publicKey: ByteVector) = {
             ecrecover(keccak256(t), signature) == publicKey
          }
          

          # groth16Verify

          Семейство функций. Осуществляют проверку zk-SNARK по протоколу groth16 .

          ⚠️ Семейство функций groth16Verify добавлено в Стандартной библиотеке версии 4.

          Название Макс. кол-во входов Сложность
          groth16Verify(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 16 2700
          groth16Verify_1inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 1 1200
          groth16Verify_2inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 2 1300
          groth16Verify_3inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 3 1400
          groth16Verify_4inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 4 1500
          groth16Verify_5inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 5 1600
          groth16Verify_6inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 6 1700
          groth16Verify_7inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 7 1800
          groth16Verify_8inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 8 1900
          groth16Verify_9inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 9 2000
          groth16Verify_10inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 10 2100
          groth16Verify_11inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 11 2200
          groth16Verify_12inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 12 2300
          groth16Verify_13inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 13 2400
          groth16Verify_14inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 14 2500
          groth16Verify_15inputs(vk:ByteVector, proof:ByteVector, inputs:ByteVector): Boolean 15 2600

          # Параметры

          Параметр Описание
          vk: ByteVector Ключ для проверки.
          Максимальный размер:
          • Для функций groth16Verify_<N>inputs — не более 384 + 48 × N байт.
          • Для функции groth16Verify — не более 384 + 48 × 16 =1152 байта
          proof: ByteVector Доказательство с нулевым разглашением . Фиксированный размер: 192 байта
          inputs: ByteVector Массив публичных входов доказательства с нулевым разглашением.
          Максимальный размер:
          • Для функций groth16Verify_<N>inputs — не более 32 × N байт.
          • Для функции groth16Verify — не более 512 байт.

          # Пример

          {-# STDLIB_VERSION 4 #-}
          {-# CONTENT_TYPE DAPP #-}
          {-# SCRIPT_TYPE ACCOUNT #-}
           
          groth16Verify(vk, proof, inputs)
          

          # rsaVerify

          Семейство функций. Проверяют, что цифровая подпись RSA данных достоверна; то есть что она была создана владельцем открытого ключа.

          Название Макс. размер message Сложность
          rsaVerify(digest: digestAlgorithmType, message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 150 Кбайт 300 для Стандартной библиотеки версии 3
          1000 для Стандартной библиотеки версии 4
          rsaVerify_16Kb(digest: digestAlgorithmType, message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 16 Кбайт 500
          rsaVerify_32Kb(digest: digestAlgorithmType, message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 32 Кбайт 550
          rsaVerify_64Kb(digest: digestAlgorithmType, message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 64 Кбайт 625
          rsaVerify_128Kb(digest: digestAlgorithmType, message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 128 Кбайт 750

          ⚠️ Функции rsaVerify_16Kb, rsaVerify_32Kb, rsaVerify_64Kb, rsaVerify_128Kb добавлены в Стандартной библиотеке версии 4.

          Рекомендуемая длина модуля ключей RSA — не менее 2048 бит.

          Данные перед подписанием можно хешировать с помощью одного из следующих алгоритмов:

          • MD5
          • SHA-1
          • SHA-224
          • SHA-256
          • SHA-384
          • SHA-512
          • SHA3-224
          • SHA3-256
          • SHA3-384
          • SHA3-512

          ⚠️ MD5 и SHA-1 — устаревшие алгоритмы, для которых были найдены коллизии. Они оставлены только для обратной совместимости. Выбор безопасного алгоритма хеширования — ответственность разработчика приложения.

          # Параметры

          Параметр Описание
          digest: digestAlgorithmType Алгоритм хеширования, примененный к данным перед подписанием. Возможные значения:
          • NOALG — нет хеширования.
          • MD5
          • SHA1
          • SHA224
          • SHA256
          • SHA384
          • SHA512
          • SHA3224
          • SHA3256
          • SHA3384
          • SHA3512
          message: ByteVector Исходные данные.
          Максимальный размер:
          • Для функций rsaVerify_<N>Kb — не более N Кбайт.
          • Для функции rsaVerify — не более 150 Кбайт.
          sig: ByteVector Цифровая подпись. Фиксированный размер: 25 байт
          pub: ByteVector Открытый ключ в бинарном формате. Фиксированный размер: 294 байта

          # sigVerify

          Семейство функций. Проверяют, что цифровая подпись Curve25519 достоверна; то есть что она была создана владельцем открытого ключа.

          Название Макс. размер message Сложность
          sigVerify(message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 150 Кбайт 100 для Стандартной библиотеки версии 3
          200 для Стандартной библиотеки версии 4
          sigVerify_8Kb(message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 8 Кбайт 47
          sigVerify_16Kb(message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 16 Кбайт 57
          sigVerify_32Kb(message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 32 Кбайт 70
          sigVerify_64Kb(message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 64 Кбайт 102
          sigVerify_128Kb(message: ByteVector, sig: ByteVector, pub: ByteVector): Boolean 128 Кбайт 172

          ⚠️ Функции sigVerify_8Kb, sigVerify_16Kb, sigVerify_32Kb, sigVerify_64Kb, sigVerify_128Kb добавлены в Стандартной библиотеке версии 4.

          # Параметры

          Параметр Описание
          message: ByteVector Исходные данные.
          Максимальный размер:
          • Для функций sigVerify_<N>Kb — не более N Кбайт.
          • Для функции sigVerify — не более 150 Кбайт.
          sig: ByteVector Цифровая подпись. Фиксированный размер: 25 байт
          pub: ByteVector Открытый ключ в бинарном формате. Фиксированный размер: 294 байта
          Функции объединения
          Операторы
          Функции объединения
          Операторы