Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

4 Страницы<1234>
Опции
К последнему сообщению К первому непрочитанному
Offline ArNed116  
#21 Оставлено : 27 ноября 2019 г. 11:26:18(UTC)
ArNed116

Статус: Новичок

Группы: Участники
Зарегистрирован: 26.11.2019(UTC)
Сообщений: 1
Российская Федерация

Сказал(а) «Спасибо»: 1 раз
Добрый день! У меня проблема на сервере не работает конструктор
Новый МенеджерКриптографии("Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider", "", 80)
но работает
Новый МенеджерКриптографии("Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider", "", 75)
это связано с установленной версией КриптоПро на сервере?
Offline Александр Лавник  
#22 Оставлено : 27 ноября 2019 г. 11:30:00(UTC)
Александр Лавник

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 30.06.2016(UTC)
Сообщений: 2,677
Мужчина
Российская Федерация

Сказал «Спасибо»: 44 раз
Поблагодарили: 602 раз в 567 постах
Автор: ArNed116 Перейти к цитате
Добрый день! У меня проблема на сервере не работает конструктор
Новый МенеджерКриптографии("Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider", "", 80)
но работает
Новый МенеджерКриптографии("Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider", "", 75)
это связано с установленной версией КриптоПро на сервере?

Здравствуйте.

Стандарт ГОСТ Р 34.10-2012 поддерживается в КриптоПро CSP 4.0 и выше.
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Александр Лавник за этот пост.
ArNed116 оставлено 01.12.2019(UTC)
Offline aimbad  
#23 Оставлено : 3 апреля 2020 г. 11:24:03(UTC)
aimbad

Статус: Новичок

Группы: Участники
Зарегистрирован: 01.04.2008(UTC)
Сообщений: 1
Откуда: Саратов

del

Отредактировано пользователем 4 апреля 2020 г. 16:07:15(UTC)  | Причина: Не указана

Offline Евгений_СК  
#24 Оставлено : 1 июня 2020 г. 14:15:20(UTC)
Евгений_СК

Статус: Участник

Группы: Участники
Зарегистрирован: 17.09.2018(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Поблагодарили: 1 раз в 1 постах
Добрый день!
Есть ХТТП-сервис, авторизация с которым проходит следующим образом: с клиента отправляется запрос на авторизацию, в ответ приходит строка ("Data"), которую нужно подписать УКЭП, используя сертификат, и отправить на сервер; сервер в ответ выдает токен, и по этому токену уже идет получение данных.
На этапе получения токена возникла проблема - сервер ругается и не выдает токен.

Подпись происходит через 1С следующим образом:

Код:
oSigner_вар	= Новый COMОбъект("CAdESCOM.CPSigner"); // Объект, задающий параметры создания и содержащий информацию об усовершенствованной подписи. 
		
	ТекстДляПодписи_стр		= СокрЛП(ТекстДляПодписи_стр);
	sThumbprint_стр 		= СокрЛП(СертификатСсылка_вар.Отпечаток); // Отпечаток в Base64
	oSigner_вар.Certificate = МРК_ПолучитьСертификатПоОтпечатку_вар(sThumbprint_стр);
	oSigner_вар.KeyPin	= Пароль;
	
	
	
	oSignedData_вар	= Новый COMОбъект("CAdESCOM.CadesSignedData"); 
	oSignedData_вар.ContentEncoding = 0;
	
	oSignedData_вар.Content 	= СокрЛП(ТекстДляПодписи_стр);
	CADESCOM_CADES_TYPE_инт 	= 1; 
	bDetached_бул           	= Ложь; 
	EncodingType_инт        	= 0; 
	
	sSignedMessage_вар 	= oSignedData_вар.SignCades(oSigner_вар, CADESCOM_CADES_TYPE_инт, bDetached_бул, EncodingType_инт);


Если с такими же настройками подписывать через менеджер криптографии 1С (с подключенной компонентой для создания УКЭП), то всё в порядке, токен получается. Через CADesCOM - нет, и в этом проблема.

Посмотрел настройки в 1С:
Подпись, хэширование: GR 34.10-2012 256
Шифрование: GOST 28147-89
Подпись: CADES BES
Открепленная: Ложь
Base64НаВходе: ЛОжь
Включение серификата в подпись: Цепочка без корневого.

Также я заметил, что подписанная строка всегда начинается с одних и тех же символов: если подписывать через CADESCOM, то это символы: "MIIVogYJKoZIh", а если подписывать через 1С - символы "MIINWQYJKo". И еще, в 1С размер подписанного текста явно меньше. Я пробовал делать открепленную подпись через CADESCOM - не помогло. ВОзможно ли по подписанному тексту понять, какие настройки подписи используются в 1С и в Крипто ПРО? Например, по первым символам подписанного текста? Или я могу скинуть исходный текст (до подписания) и подписанный.
Offline NAlexV  
#25 Оставлено : 28 сентября 2021 г. 16:03:20(UTC)
NAlexV

Статус: Участник

Группы: Участники
Зарегистрирован: 28.09.2021(UTC)
Сообщений: 18
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Цитата:
Коллеги, добрый день.
Нужно подписать сообщение в формате двоичных данных УКЭП с меткой времени CADES-T.
Написал вот такой код в 1С:

Код:
	
Крипто = Новый COMОбъект("CAdESCOM.CPSigner"); 
Крипто.Certificate = НайденныйСертификат;
ДанныеДляПодписи = Новый COMОбъект("CAdESCOM.CadesSignedData"); 
ДанныеДляПодписи.Content = ПодписываемыеДвоичныеДанные;
ТипПодписи = 1; 
ВидПодписиОтдельная = Истина;
КодировкаПодписи = 1;
Подпись = ДанныеДляПодписи.SignCades(Крипто, ТипПодписи, ВидПодписиОтдельная, КодировкаПодписи); 


Вопросы:
1. Возможно ли таким образом подписать двоичные данные или двоичные данные нужно перекодировать в Base64?
2. Прошу сообщить возможные значения для ТипПодписи и КодировкаПодписи и что означает каждое значение (семантику значений параметров)?
Offline Андрей *  
#26 Оставлено : 28 сентября 2021 г. 16:34:34(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
Цитата:
ТипПодписи и КодировкаПодписи


В документации описано.
https://docs.cryptopro.r...om_class/cadessigneddata

Метод ICPSignedData2::SignCades


Цитата:

CADESCOM_CADES_T = 5

ДанныеДляПодписи.ContentEncoding = CADESCOM_BASE64_TO_BINARY; // = 1; // кодировка в BASE64
ДанныеДляПодписи.Content = закодированные в base64 бинарные данные


Крипто.TSAAddress = "http://qs.cryptopro.ru/tsp/tsp.srf";

...

Подпись = ДанныеДляПодписи.SignCades(Крипто, CADESCOM_CADES_T ...);
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей *  
#27 Оставлено : 28 сентября 2021 г. 16:36:20(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
Автор: NAlexV Перейти к цитате

Вопросы:
1. Возможно ли таким образом подписать двоичные данные или двоичные данные нужно перекодировать в Base64?



Проверьте с ContentEncoding=0 и без кодирования в Base64.
Далее проверить подпись внешними приложениями.



Техническую поддержку оказываем тут
Наша база знаний
Offline NAlexV  
#28 Оставлено : 29 сентября 2021 г. 14:07:07(UTC)
NAlexV

Статус: Участник

Группы: Участники
Зарегистрирован: 28.09.2021(UTC)
Сообщений: 18
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Автор: Андрей * Перейти к цитате
Автор: NAlexV Перейти к цитате

Вопросы:
1. Возможно ли таким образом подписать двоичные данные или двоичные данные нужно перекодировать в Base64?



Проверьте с ContentEncoding=0 и без кодирования в Base64.
Далее проверить подпись внешними приложениями.





Андрей, спасибо за оперативный ответ.
С вашей помощью изменил код на:
Код:
			
Крипто = СоздатьCOMОбъектCAdESCOM("CPSigner"); 
Крипто.Certificate = ПолучитьСертификатПоОтпечатку(СтрокаОтпечатка);
Крипто.KeyPin = Константы.ПарольДоступаКЗакрытомуКлючу.Получить();
Крипто.TSAAddress = "http://qs.cryptopro.ru/tsp/tsp.srf";
ДанныеДляПодписи = СоздатьCOMОбъектCAdESCOM("CadesSignedData"); 
ДанныеДляПодписи.ContentEncoding = 1;
ДанныеДляПодписи.Content = ПолучитьBase64СтрокуИзДвоичныхДанных(ПодписываемыеДвоичныеДанные);
ТипПодписи = 5;	// CADES-T 
ВидПодписиОтдельная = Истина;
КодировкаПодписи = 1;	// _двоичная кодировка CAPICOM _
Подпись = ДанныеДляПодписи.SignCades(Крипто, ТипПодписи, ВидПодписиОтдельная, КодировкаПодписи); 

Функция СоздатьCOMОбъектCAdESCOM(ИмяКласса)
	
	Попытка
		
		Возврат Новый COMОбъект("CAdESCOM." + ИмяКласса);
		
	Исключение
		
		ВызватьИсключение ОписаниеОшибки() + Символы.ПС + Символы.ПС + 
			"Не удалось создать COM-Объект ""CAdESCOM." + ИмяКласса + Символы.ПС + Символы.ПС + 
			"Возможные причины:" + Символы.ПС +
			"1. Не установлен КРИПТО-ПРО" + Символы.ПС +
			"2. Не установлена компонента CAdESCOM" + Символы.ПС +
			"3. Используется операционная система, отличная от Microsoft Windows";
		
	КонецПопытки
	
КонецФункции

Функция ПолучитьСертификатПоОтпечатку(Знач Отпечаток)
	
	Store = СоздатьCOMОбъектCAdESCOM("Store");
	Store.Open(2, "My", 0);
	Certificates = Store.Certificates.Find(0, Отпечаток);
	Если Certificates.Count() <> 0 Тогда
		Certificate = Certificates.Item(1);
	Иначе
		ВызватьИсключение "Сертификат не найден";
	КонецЕсли;
	Store.Close();
	
	Возврат Certificate;
	
КонецФункции


Пока возвращается ошибка ((CAdESCOM.CadesSignedData.1): HTTP error occurred while sending request) при выполнении строки:
Код:
Подпись = ДанныеДляПодписи.SignCades(Крипто, ТипПодписи, ВидПодписиОтдельная, КодировкаПодписи);

Сделал заявку в сетевую службу на настройку сетевого доступа. Сейчас в ожидании решения проблемы

Хотелось бы понять возможно ли подписать двоичные данные без перекодировки их в Base64?
Сейчас при замене строки
Код:
ДанныеДляПодписи.Content = ПолучитьBase64СтрокуИзДвоичныхДанных(ПодписываемыеДвоичныеДанные);
на стоку
Код:
ДанныеДляПодписи.Content = ПодписываемыеДвоичныеДанные;
на этой строке возникает ошибка кодировки подписываемых данных - "Ошибка при установке значения атрибута контекста (Content): Типы не совпадают (0)", причем как ContentEncoding = 0 так и с ContentEncoding = 1.

Отредактировано пользователем 29 сентября 2021 г. 14:16:31(UTC)  | Причина: Не указана

Offline Андрей *  
#29 Оставлено : 29 сентября 2021 г. 14:19:23(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
Автор: NAlexV Перейти к цитате

Хотелось бы понять возможно ли подписать двоичные данные без перекодировки их в Base64?
Сейчас при замене строки
Код:
ДанныеДляПодписи.Content = ПолучитьBase64СтрокуИзДвоичныхДанных(ПодписываемыеДвоичныеДанные);
на стоку
Код:
ДанныеДляПодписи.Content = ПодписываемыеДвоичныеДанные;
на этой строке возникает ошибка кодировки подписываемых данных.



при этом ДанныеДляПодписи.ContentEncoding = 0 указан сначала?

У меня нет 1С, чтобы проверить\увидеть. Присылайте полноценный текст\снимок ошибки.
1С или COM не принимает ДвоичныеДанные?
В чём сложности использовать кодирования?


Особенности представления данных в интерфейсе COM
Читали?
Техническую поддержку оказываем тут
Наша база знаний
Offline NAlexV  
#30 Оставлено : 29 сентября 2021 г. 14:26:09(UTC)
NAlexV

Статус: Участник

Группы: Участники
Зарегистрирован: 28.09.2021(UTC)
Сообщений: 18
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Автор: Андрей * Перейти к цитате
Автор: NAlexV Перейти к цитате

Хотелось бы понять возможно ли подписать двоичные данные без перекодировки их в Base64?
Сейчас при замене строки
Код:
ДанныеДляПодписи.Content = ПолучитьBase64СтрокуИзДвоичныхДанных(ПодписываемыеДвоичныеДанные);
на стоку
Код:
ДанныеДляПодписи.Content = ПодписываемыеДвоичныеДанные;
на этой строке возникает ошибка кодировки подписываемых данных.



при этом ДанныеДляПодписи.ContentEncoding = 0 указан сначала?

У меня нет 1С, чтобы проверить\увидеть. Присылайте полноценный текст\снимок ошибки.
1С или COM не принимает ДвоичныеДанные?
В чём сложности использовать кодирования?


Особенности представления данных в интерфейсе COM
Читали?


Ошибка именно в момент присвоения подписываемых данных свойству "Content". Т.е. получается, что Com объект не принимает данные. Значение свойства ContentEncoding класса CadesSignedData устанавливается до заполнения свойства "Content"
Вот весь код без ужимок:
Код:
Функция ПолучитьПодписьДокументаУКЭП(СтруктураСообщения, ПодписываемыеДвоичныеДанные, ОписаниеОшибки) Экспорт
	                                                               
	Подпись = Неопределено;
	
	СтрокаОтпечатка = Константы.ОтпечатокДействующегоСертификата.Получить();
	Отпечаток = ПолучитьДвоичныеДанныеИзHexСтроки(СтрокаОтпечатка);

	Крипто = Новый МенеджерКриптографии("Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider", "", 80);	
	Крипто.ПарольДоступаКЗакрытомуКлючу = Константы.ПарольДоступаКЗакрытомуКлючу.Получить();
	Крипто.АлгоритмПодписи = "GR 34.10-2012 256";

	Хранилище = Крипто.ПолучитьХранилищеСертификатов(ТипХранилищаСертификатовКриптографии.ПерсональныеСертификаты,РасположениеХранилищаСертификатовКриптографии.ДанныеПользователяОС);
	НайденныйСертификат = Хранилище.НайтиПоОтпечатку(Отпечаток);
	
	Если НайденныйСертификат = Неопределено Тогда
		ОписаниеОшибки = "Подпись файла УКЭП. По отпечатку не найден сертификат в хранилище";
		Возврат Неопределено;
	КонецЕсли;
	ДанныеОСертификате = ПолучитьДанныеОСертификате(НайденныйСертификат);
	СтруктураСообщения.Вставить("ДанныеОСертификате", ДанныеОСертификате);
	
	Попытка
		
		Если СтруктураСообщения.ПодписьКриптоМенеджером1С Тогда
			
			Подпись = Крипто.Подписать(ПодписываемыеДвоичныеДанные, НайденныйСертификат);
			
		Иначе
		
			Крипто = СоздатьCOMОбъектCAdESCOM("CPSigner"); 
			Крипто.Certificate = ПолучитьСертификатПоОтпечатку(СтрокаОтпечатка);
			Крипто.KeyPin = Константы.ПарольДоступаКЗакрытомуКлючу.Получить();
			Крипто.TSAAddress = "http://qs.cryptopro.ru/tsp/tsp.srf";
			ДанныеДляПодписи = СоздатьCOMОбъектCAdESCOM("CadesSignedData"); 
			ДанныеДляПодписи.ContentEncoding = 1;
			ДанныеДляПодписи.Content = ПолучитьBase64СтрокуИзДвоичныхДанных(ПодписываемыеДвоичныеДанные);
			//ДанныеДляПодписи.ContentEncoding = 1;
			//ДанныеДляПодписи.Content = ПодписываемыеДвоичныеДанные;
			ТипПодписи = 5;	// CADES-T 
			ВидПодписиОтдельная = Истина;
			КодировкаПодписи = 1;	// _двоичная кодировка CAPICOM _
			Подпись = ДанныеДляПодписи.SignCades(Крипто, ТипПодписи, ВидПодписиОтдельная, КодировкаПодписи); 
			
		КонецЕсли;
		
	Исключение
		
		ОписаниеОшибки = "Подпись файла УКЭП. " + ОписаниеОшибки();
		
	КонецПопытки;
	
	Возврат Подпись;
	
КонецФункции

Функция СоздатьCOMОбъектCAdESCOM(ИмяКласса)
	
	Попытка
		
		Возврат Новый COMОбъект("CAdESCOM." + ИмяКласса);
		
	Исключение
		
		ВызватьИсключение ОписаниеОшибки() + Символы.ПС + Символы.ПС + 
			"Не удалось создать COM-Объект ""CAdESCOM." + ИмяКласса + Символы.ПС + Символы.ПС + 
			"Возможные причины:" + Символы.ПС +
			"1. Не установлен КРИПТО-ПРО" + Символы.ПС +
			"2. Не установлена компонента CAdESCOM" + Символы.ПС +
			"3. Используется операционная система, отличная от Microsoft Windows";
		
	КонецПопытки
	
КонецФункции

Функция ПолучитьСертификатПоОтпечатку(Знач Отпечаток)
	
	Store = СоздатьCOMОбъектCAdESCOM("Store");
	Store.Open(2, "My", 0);
	Certificates = Store.Certificates.Find(0, Отпечаток);
	Если Certificates.Count() <> 0 Тогда
		Certificate = Certificates.Item(1);
	Иначе
		ВызватьИсключение "Сертификат не найден";
	КонецЕсли;
	Store.Close();
	
	Возврат Certificate;
	
КонецФункции
Offline Андрей *  
#31 Оставлено : 29 сентября 2021 г. 14:31:03(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
ДанныеДляПодписи.ContentEncoding = 1;
ДанныеДляПодписи.Content = СокрЛП(ПолучитьBase64СтрокуИзДвоичныхДанных(ПодписываемыеДвоичныеДанные));

При использовании СокрЛП есть сбой?
Техническую поддержку оказываем тут
Наша база знаний
Offline NAlexV  
#32 Оставлено : 29 сентября 2021 г. 14:42:32(UTC)
NAlexV

Статус: Участник

Группы: Участники
Зарегистрирован: 28.09.2021(UTC)
Сообщений: 18
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Автор: Андрей * Перейти к цитате
ДанныеДляПодписи.ContentEncoding = 1;
ДанныеДляПодписи.Content = СокрЛП(ПолучитьBase64СтрокуИзДвоичныхДанных(ПодписываемыеДвоичныеДанные));

При использовании СокрЛП есть сбой?


Функция 1С СокрЛП (сокращение лишних пробелов) используется для удаления обобщенных пробельных символов в начале и в конце строки, передаваемой в качестве параметра - возвращается строка без пробелов в начале и конце строки. В моем случае никаких лишних пробелов нет т.к. использую функцию, которая конвертирует бинарник (двоичные данные) в строку в кодировке Base64, поэтому я не использую вызов СокрЛП().
В том-то и дело, что строка, закодированная в Base64 COM объектом принимается, а вот бинарник без перекодировки в Base64 не принимается COM объектом.

Отредактировано пользователем 29 сентября 2021 г. 14:43:57(UTC)  | Причина: Исправлена опечатка

Offline Андрей *  
#33 Оставлено : 29 сентября 2021 г. 14:45:34(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
всё понятно,
бинарный файл не принимает.

Отредактировано пользователем 29 сентября 2021 г. 14:47:01(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей *  
#34 Оставлено : 29 сентября 2021 г. 14:50:25(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
Цитата:

//ДанныеДляПодписи.ContentEncoding = 1;
//ДанныеДляПодписи.Content = ПодписываемыеДвоичныеДанные;


вот это смущает..
Вы точно проверили правильно?


ДанныеДляПодписи.ContentEncoding = 0;
ДанныеДляПодписи.Content = ПодписываемыеДвоичныеДанные;
Техническую поддержку оказываем тут
Наша база знаний
Offline NAlexV  
#35 Оставлено : 29 сентября 2021 г. 14:53:28(UTC)
NAlexV

Статус: Участник

Группы: Участники
Зарегистрирован: 28.09.2021(UTC)
Сообщений: 18
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Автор: Андрей * Перейти к цитате
всё понятно,
бинарный файл не принимает.


Да, именно так, а нужно подписать бинарник.
Offline Андрей *  
#36 Оставлено : 29 сентября 2021 г. 14:54:20(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
Цитата:
на этой строке возникает ошибка кодировки подписываемых данных - "Ошибка при установке значения атрибута контекста (Content): Типы не совпадают (0)", причем как ContentEncoding = 0 так и с ContentEncoding = 1.



Я не читал исправления текста выше (38 минут назад)...
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей *  
#37 Оставлено : 29 сентября 2021 г. 14:55:28(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
Автор: NAlexV Перейти к цитате
Автор: Андрей * Перейти к цитате
всё понятно,
бинарный файл не принимает.


Да, именно так, а нужно подписать бинарник.


Он и будет подписан. Кодируете в base64, указаваете перед присваиванием, что закодировано - внутри будет декодировано и подписано бинарное представление.
Техническую поддержку оказываем тут
Наша база знаний
Offline NAlexV  
#38 Оставлено : 29 сентября 2021 г. 15:29:43(UTC)
NAlexV

Статус: Участник

Группы: Участники
Зарегистрирован: 28.09.2021(UTC)
Сообщений: 18
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Автор: Андрей * Перейти к цитате
Автор: NAlexV Перейти к цитате
Автор: Андрей * Перейти к цитате
всё понятно,
бинарный файл не принимает.


Да, именно так, а нужно подписать бинарник.


Он и будет подписан. Кодируете в base64, указываете перед присваиванием, что закодировано - внутри будет декодировано и подписано бинарное представление.

Понятно, значит я не понял семантику значения CADESCOM_BASE64_TO_BINARY перечисления CADESCOM_CONTENT_ENCODING_TYPE. Получается, что смысл значения - подписать бинарник, закодированный в Base64. :)
Спасибо.
Offline NAlexV  
#39 Оставлено : 29 сентября 2021 г. 17:56:58(UTC)
NAlexV

Статус: Участник

Группы: Участники
Зарегистрирован: 28.09.2021(UTC)
Сообщений: 18
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Автор: Андрей * Перейти к цитате


Я так понимаю, что эта статья устарела т.к. в ней упоминается перечисление CAPICOM_ENCODING_TYPE, а в документации перечисление CADESCOM_CONTENT_ENCODING_TYPE
Offline Андрей *  
#40 Оставлено : 29 сентября 2021 г. 21:59:45(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 10,664
Мужчина
Российская Федерация

Сказал «Спасибо»: 393 раз
Поблагодарили: 1612 раз в 1238 постах
Автор: NAlexV Перейти к цитате

Я так понимаю, что эта статья устарела т.к. в ней упоминается перечисление CAPICOM_ENCODING_TYPE, а в документации перечисление CADESCOM_CONTENT_ENCODING_TYPE



Там в первых двух предложениях объяснено:
Цитата:

Ниже рассматриваются особенности представления данных при работе с объектом CAPICOM.SignedData. Аналогичное поведение характерно для объекта CadesSignedData.

Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
4 Страницы<1234>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.