| 
	Статус: Участник
 Группы: Участники
 Зарегистрирован: 09.11.2020(UTC) Сообщений: 10  Откуда: СПБСказал(а) «Спасибо»: 3 раз
 | 
            
		      
                Добрый день. Сразу скажу, что в сертификатах, подписях, шифровании я - нуб. Поэтому, возможно, элементарная скорее всего задача ставит меня третий день в тупик. Поэтому пишу сюда - вдруг кто поможет. Для работы с API "Честный знак" требуется токен. Чтобы его получить, необходимо "подписать" строку, которую он выдает при отправке запроса на авторизацию, а затем отправить ее в тебе запроса POST обратно. Тогда вернётся токен и можно будет некоторое время использовать его API. Проблема именно в "подписании" этой строки програмно (не через плагин браузера). Работать в результате должно на виндовом сервере, сейчас разработку веду под Win10. Сертификат присутствует, через плагин браузера строка авторизации подписывается и затем воспринимается API ЧЗ. Т.е. тут всё ок. Путем гугления и изучения сайта Крипто-Про я набрел на руководство разработчика - http://cpdn.cryptopro.ru Оттуда я пробовал сначала примеры из "КриптоПро ЭЦП (Интерфейс COM)". Но не продвинулся из-за ошибки (при присвоении объекту CAdESCOM.CPSigner свойства Certificate ошибка "Член группы не найден. (Исключение из HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND)" Затем я пробовал собрать программу на примерах из "КриптоПро.NET". Там строка как-то подписывается, но результат на выходе очень сильно отличается от того, что возвращает браузер... Направьте меня плз, в какую сторону мне копать, чтобы получить наконец от ЧЗ токен. Я просмотрел "по-диагонали" этот форум, но есть сообщения, которые датируются 12-летней давностью, 5-летней... Не понятно, какой API сейчас актуальный, актуальны ли примеры из документации разработчика. Спасибо! | 
    | 
             | 
            
         | 
    |  | 
        
        
        
            
        
            
            
    | 
	Статус: Сотрудник
 Группы: Участники
 Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,974  Сказал «Спасибо»: 605 разПоблагодарили: 2347 раз в 1843 постах
 
 | 
            
		      
                Здравствуйте. Автор: dmyudin   Затем я пробовал собрать программу на примерах из "КриптоПро.NET". Там строка как-то подписывается, но результат на выходе очень сильно отличается от того, что возвращает браузер...
 И не проверили, принимает ли ЧЗ такой вариант...? Разница - из-за цепочки сертификатов, к примеру, если речь о размере. И всегда будет разная подпись для одного и того же набора байт на подпись - это специфика ГОСТ-а. | 
|  | 
    | 
             | 
            
         | 
    |  | 
        
        
        
    
        
            
            
    | 
	Статус: Участник
 Группы: Участники
 Зарегистрирован: 09.11.2020(UTC) Сообщений: 10  Откуда: СПБСказал(а) «Спасибо»: 3 раз
 | 
            
		      
                Не проверял. Слишком разные наборы символов. Плагин возвращает набор строк, состоящих из латинских символов.   plugin_sign.png (36kb) загружен 27 раз(а). Программа на NET возвращает кириллицу вперемешку с знаками вопроса и проч.   program_sign.png (28kb) загружен 27 раз(а). | 
    | 
             | 
            
         | 
    |  | 
        
        
        
            
        
            
            
    | 
	Статус: Сотрудник
 Группы: Участники
 Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,974  Сказал «Спасибо»: 605 разПоблагодарили: 2347 раз в 1843 постах
 
 | 
            
		      
                Автор: dmyudin  Не проверял. Слишком разные наборы символов. Плагин возвращает набор строк, состоящих из латинских символов.   plugin_sign.png (36kb) загружен 27 раз(а). Программа на NET возвращает кириллицу вперемешку с знаками вопроса и проч.   program_sign.png (28kb) загружен 27 раз(а). Плагин дополнительно кодирует ЭП в base64. | 
|  | 
    | 
             | 
            
         | 
    |  | 
        
        
        
    
        
            
            
    | 
	Статус: Участник
 Группы: Участники
 Зарегистрирован: 09.11.2020(UTC) Сообщений: 10  Откуда: СПБСказал(а) «Спасибо»: 3 раз
 | 
            
		      
                То есть путь через КриптоПро.Net правильный и я просто забыл закодировать в base64? | 
    | 
             | 
            
         | 
    |  | 
        
        
        
            
        
            
            
    | 
	Статус: Сотрудник
 Группы: Участники
 Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,974  Сказал «Спасибо»: 605 разПоблагодарили: 2347 раз в 1843 постах
 
 | 
            
		      
                Автор: dmyudin  То есть путь через КриптоПро.Net правильный и я просто забыл закодировать в base64? Предлагаю закодировать и отправить, в API от ЧЗ есть подробности про формат, который ожидает сервис (DER\BASE64, присоединенная\отсоединенная). | 
|  | 
    | 
              1 пользователь поблагодарил Андрей * за этот пост. |  | 
    |  | 
        
        
        
    
        
            
            
    | 
	Статус: Участник
 Группы: Участники
 Зарегистрирован: 09.11.2020(UTC) Сообщений: 10  Откуда: СПБСказал(а) «Спасибо»: 3 раз
 | 
            
		      
                Спасибо. Это сработало.Значит КриптоПро.NET - это правильный путь.
 | 
    | 
             | 
            
         | 
    |  | 
        
        
        
            
        
            
            
    | 
	Статус: Новичок
 Группы: Участники
 Зарегистрирован: 24.12.2020(UTC) Сообщений: 3 Сказал(а) «Спасибо»: 1 раз
 | 
            
		      
                Добрый день, подскажите какие варианты возможны при получении токена доступа в честный знак. Нужно получить у них список документов. Может у кого то есть готовое решение на Delphi? Не понимаю через что и как я должен подписать запрос | 
    | 
             | 
            
         | 
    |  | 
        
        
        
    
        
            
            
    | 
	Статус: Сотрудник
 Группы: Участники
 Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,974  Сказал «Спасибо»: 605 разПоблагодарили: 2347 раз в 1843 постах
 
 | 
            
		      
                Автор: Алексей Волгоград  Добрый день, подскажите какие варианты возможны при получении токена доступа в честный знак. Нужно получить у них список документов. Может у кого то есть готовое решение на Delphi? Не понимаю через что и как я должен подписать запрос Варианты:CAdESCOM  (установить, если нет),  CAPICOM (если нет в ОС - установить),  MS CryptoAPI 2.0  Через COM-интерфейсы - самый быстрый вариант реализации, импортировать и получить описание. | 
|  | 
    | 
             | 
            
         | 
    |  | 
        
        
        
            
        
            
            
    | 
	Статус: Новичок
 Группы: Участники
 Зарегистрирован: 24.12.2020(UTC) Сообщений: 3 Сказал(а) «Спасибо»: 1 раз
 | 
            
		      
                А чисто случайно нет примера на Delphi? | 
    | 
             | 
            
         | 
    |  | 
        
        
        
    
	                           
	
    
        Быстрый переход
         
	
    
    Вы не можете создавать новые темы в этом форуме.
	
	Вы не можете отвечать в этом форуме.
	
	Вы не можете удалять Ваши сообщения в этом форуме.
	
	Вы не можете редактировать Ваши сообщения в этом форуме.
	
	Вы не можете создавать опросы в этом форуме.
	
	Вы не можете голосовать в этом форуме.
	
	
    
    
        Important Information:
        The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
        
        
More Details
        Close