"Оцифровка" бизнес-процессов.

   
     +7 (910) 778-05-31, romanb@nxt.ru
Коснитесь для звонка

Механизмы взаимодействия КриптоПро и 1С:Предприятие

Внимание! Приведенная информация распространяется исключительно в ознакомительных целях. Перед использованием данных материалов рекомендуется ознакомиться с ФЗ Российской Федерации от 4 мая 2011 г. N 99-ФЗ "О лицензировании отдельных видов деятельности".

1С:Предприятие не может напрямую использовать некоторые классы .NET Framework в силу ограниченных возможностей встроенного языка программирования. К сожалению, к таковым относятся и классы x509, обеспечивающие связь с криптопровайдерами, установленными в операционной системы. Есть исключения: некоторые классы .NET поддерживают оращение к своим методам по принципу COM, например методы для работы с RSA и функциями хеширования.

При этом из 1С: Предприятие можно подключить любой COM-объект и работать его методами.

Таким образом, связующим звеном криптопровайдеров, установленных в ОС(например КриптоПро) и 1С:Предприятие может выступать COM-объект, написанный на любом языке и внутри которого будут реализованы функции обращения к нужным классам – в нашем случае x509 .NET, например библиотека CAPICOM, в которой реализованы необходимые COM-объекты и с необходимым функционалом. К сожалению CAPICOM снят с поддержки, но тем не менее есть возможность установить его даже на Windows 7, хотя и не без танцев с бубном: внизу этой странички есть ссылка на скачивание библиотеки с мануалом по установке. На Windows XP библиотека устанавливается элементарно — регистрацией dll(с помощью regsvr32.exe).

На платформе 1С:Предприятие версии 8.2 появился объект "МенеджерКриптографии", содержащий необходимый набор функций для работы с криптопровайдерами, зарегистрированными в системе. Ниже перечислен список свойств и методов объекта, подробную информацию по которым Вы сможете получить в синтаксис-помощнике.

	МК = новый МенеджерКриптографии;
	МК.АлгоритмПодписи
	МК.АлгоритмХеширования
	МК.АлгоритмШифрования
	МК.ВключениеСертификатовВПодпись
	МК.Зашифровать()
	МК.ПарольДоступаКЗакрытомуКлючу
	МК.Подписать()
	МК.ПолучитьИнформациюМодуляКриптографии()
	МК.ПолучитьСертификатыИзПодписи()
	МК.ПолучитьХранилищеСертификатов()
	МК.ПроверитьПодпись()
	МК.ПроверитьСертификат()
	МК.Расшифровать()

Объект работает как с файлами, так и с двоичными данными. В случае с файлами все понятно, а для шифрования, подписывания и хеширования строк требуется предварительное преобразование последних в двоичные данные.  Для получения двоичных данных следует использовать функции, со странички Пример ассиметричного шифрования(RSA) 1С:Предприятие 8.

Внимание! Приведенная информация распространяется исключительно в ознакомительных целях. Перед использованием данных материалов рекомендуется ознакомиться с ФЗ Российской Федерации от 4 мая 2011 г. N 99-ФЗ "О лицензировании отдельных видов деятельности".

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *