Статус: Участник
Группы: Участники
Зарегистрирован: 12.07.2016(UTC) Сообщений: 17  Откуда: Липецк Сказал(а) «Спасибо»: 8 раз
|
Здравствуйте! Автор: Андрей Писарев  Автор: vovick  Подниму ветку. Время идет, CAPICOM давно скорее мертв чем жив, не говоря уже об отсутствии версии х64. Все-таки, чем современным пользоваться в скриптах для подписания документов? Наставьте на путь истинный. Если можно, с примером. Интересует главным образом подписание файлов для электронного документооборота (ЭДО). На капикоме все работает, но уже сейчас процесс его скачивания и установки на новые системы вызывает некоторую озабоченность. Здравствуйте. Ответ был дан в начале. Ничего не изменилось. Так уперся же в ошибку, по которой никто не дал никаких комментариев. Вот здесь я об этом писал. На днях мне кто-то из участников в личку написал, спрашивал, не удалось ли решить - у него та же проблема при подписании Цитата:URL-адрес не использует поддерживаемый протокол Код: 80072EE6 Как я понял, проблема связана со штампом времени. Но самое смешное, что мне-то этот штамп нафиг не нужен (вроде бы), т.к. у меня используется старая ЭЦП, не CADES! А вот как этот плагин заставить со старыми подписями работать - непонятно. Я нашел в справке по вашей ссылке пример, подходящий под мой случай, но он, как я понимаю, для CADES подписи. Там вводится штамп времени. Я тупо скопировал из примера Цитата:Signer.TSAAddress = "http://www.cryptopro.ru/tsp/tsp.srf" но не знаю, корректно ли так делать и насколько правильно дергать сервис криптопро своими запросами штампов. Как мне кажется, в моем случае это вообще не должно быть нужно, но как узнать точно? Прошу помощи, если это возможно. Отредактировано пользователем 27 октября 2018 г. 18:29:51(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,606   Сказал «Спасибо»: 565 раз Поблагодарили: 2280 раз в 1783 постах
|
Все ЭП сейчас CADES. Обычная, без TSP\OCSP - CADES BES с TSP - CADES-T TSP+OCSP - CAdES-X Long Type 1 и т.п.
На этой странице получается создать CADES-T? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 12.07.2016(UTC) Сообщений: 17  Откуда: Липецк Сказал(а) «Спасибо»: 8 раз
|
Скрин. Нет, опять ошибка, теперь уже другая. Хотя вообще плагин работает, на сайте ЭДО-провайдера успешно получается подписывать сообщения с его помощью. Сайт https://www.cryptopro.ru в список разрешенных для работы плагина внес. Отредактировано пользователем 28 октября 2018 г. 9:04:20(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,606   Сказал «Спасибо»: 565 раз Поблагодарили: 2280 раз в 1783 постах
|
Автор: vovick  Скрин. Нет, опять ошибка, теперь уже другая. Хотя вообще плагин работает, на сайте ЭДО-провайдера успешно получается подписывать сообщения с его помощью. Сайт https://www.cryptopro.ru в список разрешенных для работы плагина внес. Посмотрите в КриптоПРО PKI статус лицензий на продукты (прощелкайте каждый) |
|
 1 пользователь поблагодарил Андрей * за этот пост.
|
vovick оставлено 28.10.2018(UTC)
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 12.07.2016(UTC) Сообщений: 17  Откуда: Липецк Сказал(а) «Спасибо»: 8 раз
|
У меня есть только клиентская лицензия на КриптоПро CSP. Этого недостаточно? Начинает возникать ощущение, что нет, потому что вроде как нужен TSP Client, а он, как я понял, лицензируется отдельно (?). Но тогда каким образом люди покупают только CryptoPro CSP и спокойно подписывают документы? ...Обновил плагин до последней версии, теперь сообщение более определенное: Не удалось создать подпись из-за ошибки: Лицензия на КриптоПро TSP Client истекла или не была введена. Сие значит, что я не могу применять плагин, пока не куплю эту лицензию вдобавок к лицензии на КриптоПро CSP? Чтобы не терять времени, подниму сейчас виртуалку, на ней будет доступен трехмесячный триал. Поэкспериментируем там. Отредактировано пользователем 28 октября 2018 г. 13:23:23(UTC)
| Причина: Не указана
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 12.07.2016(UTC) Сообщений: 17  Откуда: Липецк Сказал(а) «Спасибо»: 8 раз
|
На виртуалке получилось прогнать тестовую страничку. Насколько я понял, в продуктиве службу времени надо использовать не вашу тестовую, а ту, которую дает удостоверяющий центр, т.е. в моем случае Калуга-Астрал. Ее ссылку и вписал, после этого все получилось. Теперь попробую вернуться к CADESCOM и подписанию файла. UPD: на свежеустановленном триале скрипт отработал! Удалось получить подпись файла. Цитата:const CURRENT_USER_STORE = 2 const MY_STORE = "My" const STORE_OPEN_READ_ONLY = 0 const CAPICOM_CERTIFICATE_FIND_SHA1_HASH = 0
Set Store = CreateObject ("CADESCOM.Store") Store.Open CURRENT_USER_STORE, MY_STORE, STORE_OPEN_READ_ONLY Set Certs = Store.Certificates.Find (CAPICOM_CERTIFICATE_FIND_SHA1_HASH, "0d1065123d0b6295465511ba838ba2ca41cabb10") MsgBox (Certs.Count) if Certs.Count > 0 Then
FileName = "ON_SCHFDOPPR_2LDCF32DD15-2299-4432-B3B3-4E1911F295AC_2LDA6665F40-EC20-4463-A0DA-8B74A6CA00AA_20181028_6dd14003-cd82-4faa-a3e5-825f6fa11396.xml"
Set Cert = Certs.Item (1) Set FileIn = CreateObject ("ADODB.Stream") FileIn.Type = 1 FileIn.Mode = 3 FileIn.Open () FileIn.LoadFromFile (FileName) BinaryIn = FileIn.Read (-1) Set Signer = CreateObject ("CADESCOM.CpSigner") Signer.Certificate = Cert Signer.TSAAddress = "http://ocsp.keydisk.ru/TSP/tsp.srf" Signer.Options = 2 Set SignedData = CreateObject ("CADESCOM.CadesSignedData") SignedData.Content = BinaryIn Base64Out = SignedData.Sign (Signer, True, 0) Set FileOut = CreateObject ("ADODB.Stream") FileOut.Type = 2 FileOut.Charset = "US-ASCII" FileOut.Mode = 3 FileOut.Open () FileOut.WriteText (Base64Out) FileOut.SaveToFile FileName + ".bin.1", 2 FileOut.Close () FileIn.Close () End if
Store = Unassigned Итак, в сухом остатке: 1. Применяем службу штампов времени издателя ЭЦП, т.е. в моем случае это ссылка http://ocsp.keydisk.ru/TSP/tsp.srf;2. Поскольку используются штампы времени, выходит что нужна лицензия CryptoPro TSP Client. Можно ли без этого обойтись? Вопрос пока открыт. Отредактировано пользователем 28 октября 2018 г. 15:12:01(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,606   Сказал «Спасибо»: 565 раз Поблагодарили: 2280 раз в 1783 постах
|
Требования к конфигурацииЦитата: ... Должена быть установлена лицензия на КриптоПро TSP Client. ...
Цитата: Но тогда каким образом люди покупают только CryptoPro CSP и спокойно подписывают документы?
Действует триальный период на TSP Client либо он не используется при подписании (формируют CADESBES) |
|
 1 пользователь поблагодарил Андрей * за этот пост.
|
vovick оставлено 28.10.2018(UTC)
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 12.07.2016(UTC) Сообщений: 17  Откуда: Липецк Сказал(а) «Спасибо»: 8 раз
|
Цитата: Но тогда каким образом люди покупают только CryptoPro CSP и спокойно подписывают документы?
Действует триальный период на TSP Client либо он не используется при подписании (формируют CADESBES) Вот как... А каким образом должен быть изменен код для такого варианта подписи? Вряд ли это триал, потому что у меня через сайт все работало, хотя была лицензия только на CSP, а триалы на все остальное должны были давно истечь. UPD: сам нашел ответ на вопрос: Цитата:const CADES_BES = 1 const CAPICOM_ENCODE_BASE64 = 0 ... Base64Out = SignedData.SignCades (Signer, CADES_BES, True, CAPICOM_ENCODE_BASE64) Скорее всего, это все вопросы. Огромное спасибо! Отредактировано пользователем 28 октября 2018 г. 16:12:28(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,606   Сказал «Спасибо»: 565 раз Поблагодарили: 2280 раз в 1783 постах
|
|
|
 1 пользователь поблагодарил Андрей * за этот пост.
|
vovick оставлено 28.10.2018(UTC)
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 12.07.2016(UTC) Сообщений: 17  Откуда: Липецк Сказал(а) «Спасибо»: 8 раз
|
Да, совершенно верно, использовалась подпись CADES BES. Когда я так сделал, все подписалось отлично, подпись была воспринята сервисом как верная. Еще маленький вопрос: правильно ли я понимаю, что рантайм (непосредственно объект CADESCOM и все необходимые библиотеки для его работы) обеспечивает именно установка плагина? Сам CryptoPro CSP необходим, но недостаточен для того чтобы это все работало?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close