Перейти к основному содержимому

ПодписьДанных

Стд::Криптография::ПодписьДанных

Позволяет вычислить или проверить электронную подпись для данных с помощью закрытого или открытого ключа шифрования.

Сравнение

Ссылочное

Иерархия типа

Базовые типы: Объект


Примеры

Общие примеры

Использование статических методов

знч Пара = ГенераторПарыКлючей.СоздатьПаруКлючейRsa()
знч Данные = "Мои данные для подписи".ВБайты()

знч Подпись = ПодписьДанных.Подписать(Пара.ЗакрытыйКлюч, АлгоритмПодписи.Sha256_Rsa, Данные)

знч РезультатПроверки = ПодписьДанных.Проверить(Пара.ОткрытыйКлюч, АлгоритмПодписи.Sha256_Rsa, Данные, Подпись)

Использование экземпляра объекта

знч Пара = ГенераторПарыКлючей.СоздатьПаруКлючейRsa()

знч ВычислениеПодписи = новый ПодписьДанных(Пара.ЗакрытыйКлюч, АлгоритмПодписи.Sha256_Rsa)
ВычислениеПодписи.ДобавитьДанные("Мои ".ВБайты())
ВычислениеПодписи.ДобавитьДанные("данные ".ВБайты())
ВычислениеПодписи.ДобавитьДанные("для подписи".ВБайты())
знч Подпись = ВычислениеПодписи.Подписать()

знч РезультатПроверки = новый ПодписьДанных(Пара.ОткрытыйКлюч, АлгоритмПодписи.Sha256_Rsa)
.ДобавитьДанные("Мои ".ВБайты())
.ДобавитьДанные("данные ".ВБайты())
.ДобавитьДанные("для подписи".ВБайты())
.Проверить(Подпись)

Конструкторы

ПодписьДанных

ПодписьДанных(
Ключ: ЗакрытыйКлюч,
Алгоритм: АлгоритмПодписи|Строка,
Криптопровайдер: Криптопровайдер|Строка|? = Неопределено)
Создает новый экземпляр объекта для вычисления электронной подписи данных с помощью закрытого ключа Ключ.

В качестве алгоритма Алгоритм может быть указан либо стандартный алгоритм, либо название алгоритма, предоставляемое криптопровайдером.

Если Криптопровайдер не указан - будет подобран автоматически. Для алгоритма ГОСТ 34.10 приоритет в первую очередь отдается Крипто Про, затем Bouncy Castle, затем любой криптопровайдер, имеющий реализацию алгоритма шифрования.

Исключения

ИсключениеНедопустимыйАргумент - пустая строка в параметрах Алгоритм или Криптопровайдер.

Перегрузка
ПодписьДанных(Ключ: ОткрытыйКлюч, Алгоритм: АлгоритмПодписи|Строка, Криптопровайдер: Криптопровайдер|Строка|? = Неопределено)


ПодписьДанных

ПодписьДанных(
Ключ: ОткрытыйКлюч,
Алгоритм: АлгоритмПодписи|Строка,
Криптопровайдер: Криптопровайдер|Строка|? = Неопределено)
Создает новый экземпляр объекта для проверки электронной подписи данных с помощью открытого ключа Ключ.

В качестве алгоритма Алгоритм может быть указан либо стандартный алгоритм, либо название алгоритма, предоставляемое криптопровайдером.

Если Криптопровайдер не указан - будет подобран автоматически. Для алгоритма ГОСТ 34.10 приоритет в первую очередь отдается Крипто Про, затем Bouncy Castle, затем любой криптопровайдер, имеющий реализацию алгоритма шифрования.

Исключения

ИсключениеНедопустимыйАргумент - пустая строка в параметрах Алгоритм или Криптопровайдер.

Перегрузка
ПодписьДанных(Ключ: ЗакрытыйКлюч, Алгоритм: АлгоритмПодписи|Строка, Криптопровайдер: Криптопровайдер|Строка|? = Неопределено)


Свойства

Алгоритм

ТолькоЧтение

Алгоритм вычисления электронной подписи.


Ключ

ТолькоЧтение

Ключ используемый для вычисления или проверки электронной подписи.


Криптопровайдер

ТолькоЧтение

Криптопровайдер: Криптопровайдер

Криптопровайдер, используемый для вычисления или проверки электронной подписи. Если не был указан, возвращает автоматически подобранный для заданного алгоритма.


Методы

ВСтроку

ВСтроку(): Строка
Возвращает информацию об алгоритме и ключе.

Переопределение
Объект::ВСтроку


ДобавитьДанные

ДобавитьДанные(Данные: Байты|ПотокЧтения): ПодписьДанных
Добавляется порцию данных Данные для вычисления или проверки электронной подписи.

Возвращает текущий экземпляр объекта.

Исключения

ИсключениеКриптографии - в случае ошибки обработки порции данных. ИсключениеВводаВывода - при ошибке чтения потока данных.


Подписать

Подписать(Данные: Байты|ПотокЧтения|? = Неопределено): Байты
Вычисляет электронную подпись для добавленных данных по указанному алгоритму.

Добавляет последнюю порцию данных Данные, если указаны.

После вызова данного метода состояние объекта сбрасывается для вычисления новой подписи.

Исключения

ИсключениеНедопустимоеСостояние - если объект был проинициализирован открытым ключом для проверки подписи. ИсключениеКриптографии - в случае ошибки обработки порции данных или в работе криптопровайдера при вычислении подписи. ИсключениеВводаВывода - при ошибке чтения потока данных

Перегрузка
Подписать(Ключ: ЗакрытыйКлюч, Алгоритм: АлгоритмПодписи|Строка, Данные: Байты|ПотокЧтения, Криптопровайдер: Криптопровайдер|Строка|? = Неопределено): Байты


Подписать

Статический

Подписать(
Ключ: ЗакрытыйКлюч,
Алгоритм: АлгоритмПодписи|Строка,
Данные: Байты|ПотокЧтения,
Криптопровайдер: Криптопровайдер|Строка|? = Неопределено
): Байты
Создает новый экземпляр объекта для вычисления электронной подписи данных с помощью закрытого ключа Ключ.

В качестве алгоритма Алгоритм может быть указан либо стандартный алгоритм, либо название алгоритма, предоставляемое криптопровайдером.

Если Криптопровайдер не указан - будет подобран автоматически. Для алгоритма ГОСТ 34.10 приоритет в первую очередь отдается Крипто Про, затем Bouncy Castle, затем любой криптопровайдер, имеющий реализацию алгоритма шифрования.

Исключения

ИсключениеНедопустимыйАргумент - пустая строка в параметрах Алгоритм или Криптопровайдер. ИсключениеВводаВывода - при ошибке чтения потока данных.

Перегрузка
Подписать(Данные: Байты|ПотокЧтения|? = Неопределено): Байты


Проверить

Проверить(
Подпись: Байты,
Данные: Байты|ПотокЧтения|? = Неопределено
): Булево
Проверяет, что ранее вычисленная электронная подпись Подпись соответствует добавленным данным по указанному алгоритму.

Добавляет последнюю порцию данных Данные, если указаны.

После вызова данного метода состояние объекта сбрасывается для проверки новой подписи.

Исключения

ИсключениеНедопустимоеСостояние - если объект был проинициализирован закрытым ключом для вычисления подписи. ИсключениеКриптографии - в случае ошибки обработки порции данных или в работе криптопровайдера при проверке подписи. ИсключениеВводаВывода - при ошибке чтения потока данных

Перегрузка
Проверить(Ключ: ОткрытыйКлюч, Алгоритм: АлгоритмПодписи|Строка, Данные: Байты|ПотокЧтения, Подпись: Байты, Криптопровайдер: Криптопровайдер|Строка|? = Неопределено): Булево


Проверить

Статический

Проверить(
Ключ: ОткрытыйКлюч,
Алгоритм: АлгоритмПодписи|Строка,
Данные: Байты|ПотокЧтения,
Подпись: Байты,
Криптопровайдер: Криптопровайдер|Строка|? = Неопределено
): Булево
Проверяет, что ранее вычисленная электронная подпись Подпись соответствует добавленным данным Данные с помощью открытого ключа Ключ по указанному алгоритму Алгоритм.

В качестве алгоритма Алгоритм может быть указан либо стандартный алгоритм, либо название алгоритма, предоставляемое криптопровайдером.

Если Криптопровайдер не указан - будет подобран автоматически. Для алгоритма ГОСТ 34.10 приоритет в первую очередь отдается Крипто Про, затем Bouncy Castle, затем любой криптопровайдер, имеющий реализацию алгоритма шифрования.

Исключения

ИсключениеНедопустимыйАргумент - пустая строка в параметрах Алгоритм или Криптопровайдер. ИсключениеВводаВывода - при ошибке чтения потока данных.

Перегрузка
Проверить(Подпись: Байты, Данные: Байты|ПотокЧтения|? = Неопределено): Булево


Список унаследованных методов

Объект

ВСтроку (Переопределение)

ПолучитьТип

Представление