|
v7: Работа с CAPICOM - выбор сертификата и подпись. | ☑ | ||
---|---|---|---|---|
0
brenli
11.02.20
✎
20:51
|
Всем привет.
Вторые сутки ломаю мозг по использованию библиотеки CAPICOM. Необходимо реализовать выбор сертификата из списка , и возможность подписать ЭЦП этого сертификата. Пытаюсь сделать следующее: OSertificats = СоздатьОбъект("CAPICOM.Certificates"); OSertificats.Select(,,1); //true bMultiSelect [in, optional] Boolean value that indicates whether the user can select more than one certificate. True indicates multiple certificates can be selected by using the CTRL or SHIFT key. The default value is false. При true выпадает пустой список. При false - выдает : Сертификаты недоступны, сертификаты не отвечают критериям. Пробовал использовать CURRENT_USER_STORE = 2; MY_STORE = "My"; STORE_OPEN_READ_ONLY = 0; Store = СоздатьОбъект("CAPICOM.Store"); Store.Open(CURRENT_USER_STORE, MY_STORE, STORE_OPEN_READ_ONLY); Вообще ничего не происходит. Подскажите у кого есть опыт по реализации таких задач. Спасибо |
|||
1
Garykom
гуру
11.02.20
✎
21:27
|
(0) https://www.cryptopro.ru/products/other/cryptcp
Приложение командной строки банальное, если не хочется чтобы окна мелькали то можно скрыть |
|||
2
MWWRuza
гуру
11.02.20
✎
21:33
|
(0)Ну, все правильно... А дальше:
Certs = Store.Certificates; Для Сч = 1 По Certs.Count Цикл ТекСерт = Certs.Item(Сч); Далее используйте: ТекСерт.Свойство,КотороеВамНужно... КонецЦикла; |
|||
3
Garykom
гуру
11.02.20
✎
21:47
|
https://ru.wikipedia.org/wiki/Component_Object_Model официальной устаревшая технология, лучше не использовать чтобы в ближайшем будущем не поиметь кучу трудностей, которые придется снова героически преодолевать.
|
|||
4
Garykom
гуру
11.02.20
✎
21:50
|
Вот уже IE (замена на Edge) с Microsoft Edge (на движок Chromium переходит где COM нету) того и дальше будет только хуже.
Так что забывайте уже о COM/OLE/ActiveX и используете другие методы, да старый древний запуск консольной утилиты/проги с параметрами по прежнему в строю. И будущее за веб-сервисами. |
|||
5
MWWRuza
гуру
11.02.20
✎
22:01
|
Ну, консольное приложение из (1), платное... Лецензируется отдельно от КриптоПро, и работает с ним в паре. Интересно, сколько стоит?
|
|||
6
Garykom
гуру
11.02.20
✎
22:10
|
(5) бесплатно, там устаревшая инфа в новых криптопро оно из коробки
|
|||
7
Garykom
гуру
11.02.20
✎
22:14
|
(6)+ Точнее не бесплатно а в комплекте с платным КриптоПро оно.
Никакой лицензии отдельной не запрашивает, может конечно я и ошибаюсь но фактически так. |
|||
8
Midrash
11.02.20
✎
22:16
|
(3) да, COM становится достоянием истории
|
|||
9
NorthWind
11.02.20
✎
22:16
|
(0) советую сразу перейти на CADESCOM из комплекта КриптоПро. Разницы по вызовам с CAPICOM практически нет, соместимость процентов 95. Но при этом CADESCOM поддерживается, в том числе и для новых виндов, а CAPICOM давно с поддержки снят и не понятно, с какого очередного релиза Win10 он крякнет. Может с любого свежего.
|
|||
10
brenli
11.02.20
✎
22:19
|
(9) CADESCOM отдельно покупать надо или в коробке со штатным крипто про идет?
Где то видел CADESCOM - 90 дней триал, а дальше лицензию надо. |
|||
11
NorthWind
11.02.20
✎
22:21
|
CADESCOM идет в составе браузерного плагина для CryptoPro. Скачивается все это дело с сайта CryptoPro бесплатно, само подцепляется к уже установленному CryptoPro автоматически и живет.
' ----------------------------------------------------------------------------------------- ' Поиск сертификата в хранилище ' Function GetSigningCert 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, CStr (CertSHA1Hash)) if Certs.Count > 0 Then Set GetSigningCert = Certs.Item (1) else Set GetSigningCert = Nothing end if Store = Unassgned End Function |
|||
12
NorthWind
11.02.20
✎
22:21
|
эта функа ищет сертификат по его SHA1-хэшу и возвращает. Функа на VBS. Другого нет - скрипт писал именно на нем
|
|||
13
NorthWind
11.02.20
✎
22:23
|
для капиком, собственно, все то же самое и тоже работает - изначально было на нем. Но я в конце концов с него ушел.
|
|||
14
Garykom
гуру
11.02.20
✎
22:23
|
Кстати прикол хотите?
Если разрабатывается приложение которое с шифрованием на продажу то https://www.cryptopro.ru/forum2/default.aspx?g=posts&t=9333 опс нужна "Лицензия ФСБ на криптографию и шифрование" |
|||
15
NorthWind
11.02.20
✎
22:29
|
Вот, если надо, формирование подписи отдельным файликом
' ----------------------------------------------------------------------------------------- ' Подписание файла. Подпись кладется по тому же пути, где находится исходный файл, с ' расширением bin ' Sub Sign (FileName, Cert, Prefix) SignFileName = GetBinFileName (FileName, Prefix) 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.Options = 2 Set SignedData = CreateObject ("CADESCOM.CadesSignedData") SignedData.Content = BinaryIn Base64Out = SignedData.SignCades (Signer, CADES_BES, True, CAPICOM_ENCODE_BASE64) Set FileOut = CreateObject ("ADODB.Stream") FileOut.Type = 2 FileOut.Charset = "US-ASCII" FileOut.Mode = 3 FileOut.Open () FileOut.WriteText (Base64Out) FileOut.SaveToFile SignFileName, 2 FileOut.Close () FileIn.Close () SignedData = Unassigned Signer = Unassigned FileIn = Unassigned FileOut = Unassigned End Sub |
|||
16
NorthWind
11.02.20
✎
22:32
|
(10) нет такого. Если у вас крипто-про куплен, то браузер плагин ставится без каких-либо дополнительных вопросов и в нем этот кадеском есть и работает. Уже он у меня работает не один год так, а не 90 дней... Там единственное что - для некоторых более сложных подписей чем CADES_BES, нужна служба штампов времени. Вот она да, приобретается отдельно. Но это еще вопрос, нужна она вам или нет.
|
|||
17
brenli
11.02.20
✎
22:39
|
(16) Вообще вся эта тема для работы с системой маркировки. Там вроде служба времени не нужна
|
|||
18
brenli
11.02.20
✎
22:39
|
спасибо господа за пищу для ума.
|
|||
19
NorthWind
11.02.20
✎
22:49
|
(4) браузеры браузерами, а на десктопе ком никуда не денется, пока жив сам по себе десктоп. Его и в х64 MS притащили, а значит, пока девать никуда не собираются.
|
|||
20
MWWRuza
гуру
11.02.20
✎
22:52
|
Это все хорошо... Вариантов несколько, кто как хочет, тот так и заморочится... Но, вот как-бы из v7 научиться с аппаратными криптопровайдерами работать... Типа, ЕГАИСовского Рутокен-ЭЦП 2.0... Пока, не нашел способов :-(
|
|||
21
NorthWind
11.02.20
✎
22:56
|
(20) читаю и не могу понять... А чем он принципиально отличается от любой другой смарт-карты, етокена того же?
|
|||
22
MWWRuza
гуру
11.02.20
✎
23:00
|
Принципиально - тем, что с ним не работает тот-же КриптоПро. У него на борту свой, встроенный криптопровайдер. Все операции по подписанию и шифрованию происходят "внутри", с неизвлекаемыми ключами...
|
|||
23
MWWRuza
гуру
11.02.20
✎
23:03
|
У обычных токенов, контейнер с ключами и сертификатами доступен "извне", их видит КриптоПро или VipNet, и с ними работает программно. Здесь свой "типаКриптоПро", внутри...
|
|||
24
MWWRuza
гуру
11.02.20
✎
23:07
|
Кроме того, сертификат вместе с ключами с обычного токена, можно скопировать например на другой токен, в папку на диске, в реестр наконец... С Рутокен ЭЦП 2.0 или устаревшей JaCarta, такой фокус не проходит, сертификат вытащить можно, но без закрытых ключей...
|
|||
25
Garykom
гуру
11.02.20
✎
23:10
|
||||
26
Garykom
гуру
11.02.20
✎
23:10
|
(24) При перегенерации все прекрасно вытаскивается наружу ))
|
|||
27
Garykom
гуру
11.02.20
✎
23:13
|
(25)+ pkcs11-tool — консольная утилита для управления токенами и смарт-картами и их содержимым через интерфейс PKCS#11.
https://github.com/OpenSC/OpenSC |
|||
28
vde69
11.02.20
✎
23:52
|
CAPICOM снята с поддержки лет уже как 10.... Зачем Вам то, что так сильно устарело?
полно опен проектов, тот-же гнус например очень даже хорошо работает с сертификатами (как эцп так и шифрование)... |
|||
29
MWWRuza
гуру
12.02.20
✎
00:38
|
Хм... Интересно... Просто заменой объекта:
Об = СоздатьОбъект("CAPICOM.Store"); на Об = СоздатьОбъект("CADESCOM.Store"); получение списка сертификатов работает :-) Дальше, пока не пробовал, надо будет на досуге заняться. |
|||
30
NorthWind
12.02.20
✎
08:19
|
(22) почитал. Насколько я понял, для работы с такими токенами у крипто-про раньше было специальное решение CryptoPro Рутокен CSP, но сейчас это уже неактуально, потому что пятерка работает с ними.
Посмотрите вот здесь https://www.cryptopro.ru/products/cryptopro-csp: "Носители с неизвлекаемыми ключами Многие пользователи хотят иметь возможность работать с неизвлекаемыми ключами, но при этом не обновлять токены до уровня ФКН. Специально для них в провайдер добавлена поддержка популярных ключевых носителей Рутокен ЭЦП 2.0, JaCarta-2 ГОСТ и InfoCrypt VPN-Key-TLS." |
|||
31
NorthWind
12.02.20
✎
08:20
|
||||
32
Сияющий в темноте
12.02.20
✎
08:45
|
К рутокену идет свой доайвер,который прекрасно с ним работает.
плюс в том,что криптопро покупать не надо. |
|||
33
NorthWind
12.02.20
✎
09:33
|
(32) у человека вопрос, через какое апи можно дергать механизм подписи этим ключом, например, из 1с 7.7. Желательно понятно и с примерами. Криптопро в данном случае хорош тем, что там есть сеть разработчиков, примеры и как работать с cadescom/capicom, многие худо-бедно знают.
|
|||
34
MWWRuza
гуру
12.02.20
✎
10:44
|
+(33)Да, именно так. Там, где он должен работать через свой драйвер - он работает, вообще без проблем, есть необходимый софт, плагины.
А вот как к нему из 7.7 достучаться, для меня пока загадка. Готовых примеров не нашел, а самому с предоставленным на сайте SDK разбираться - сложно, долго, и и самое главное, опыта не хватает... Да, и по большому счету - и если только ради интереса, экономически не выгодно, кому надо - могут себе позволить плюсом к ЕГАИСовской ЭЦП еще и КриптоПрошную, вместе с самим КриптоПро, не космических денег они стоят... Просто, было-бы удобно, один токен-одна ЭЦП на все, что связано с торговыми "извратами". |
|||
35
big
12.02.20
✎
10:56
|
(34) Если я правильно понял, то с КриптоПро идет бесплатная консольная утилита для подписи - csptest.exe и ею вполне таки можно пользоваться. Сам правда ещё не пробовал, просто читал мануал.
Или использование консольных утилит не подходит? |
|||
36
NorthWind
12.02.20
✎
11:37
|
(34) -> (30), криптопро уже умеет через свое апи работать с такими подписями. Правда, нужна версия 5, которая пока еще не у всех куплена, чаще всего у людей четверка.
|
|||
37
brenli
04.03.20
✎
15:49
|
Всем привет. До сих пор воюю с этими подписями .
СтрКода="function SignFile(FileName,Cert,OutFileName) |{ | InStream=new ActiveXObject(""ADODB.Stream""); | InStream.Type=1; // binary data | InStream.Mode=3; // read/write | InStream.Open(); | InStream.LoadFromFile(FileName); | InData=InStream.Read(-1); | | Signer=new ActiveXObject(""CAPICOM.Signer""); | Signer.Certificate=Cert; //| Signer.TSAAddress = ""http://www.cryptopro.ru/tsp/tsp.srf""; //| Signer.Options=2; // CAPICOM_CERTIFICATE_INCLUDE_END_ENTITY_ONLY | | SignedData=new ActiveXObject(""CAPICOM.SignedData""); | SignedData.Content=InData; //| SignedData.ContentEncoding =1; | | OutSignedData=SignedData.Sign(Signer,1,1); | | OutStream=new ActiveXObject(""ADODB.Stream""); | OutStream.CharSet=""utf-8""; | OutStream.Type=2; // text data | OutStream.Mode=3; // read/write | OutStream.Open(); | OutStream.WriteText(OutSignedData); | OutStream.SaveToFile(OutFileName,2); | OutStream.Close(); | | return(0); При выборе открепленной подписи выдает такую строку. Что не так? ????????????a?????a???????????????????x Пробовал юзать CadesCOM - выдает что не введена лицензия. Что еще можно сделать? (6) на сайте пишут что 5 версия требует лицензию. |
|||
38
brenli
04.03.20
✎
15:50
|
(37) + при подписании не открепленной подписью, подписывает корректно
|
|||
39
Garykom
гуру
04.03.20
✎
16:05
|
(37) (38) cryptcp.exe https://www.cryptopro.ru/sites/default/files/products/cryptcp/cryptcp_5.0.x.pdf
|
|||
40
NorthWind
04.03.20
✎
19:27
|
(37) Четверка с cadescom'ом из браузер-плагина 100% работает и ничего дополнительно не просит. Неоднократно ставил и проверял.
Насчет лицензирования пятерки точно сказать не могу, потому что использовать не пробовал. Может, разработчик и поменял что-то, хотя при гуглении "cadescom лицензия" ничего внятного найти не удается, из-за чего по вопросу возникают некоторые сомнения. Думаю, будь такая лицензия, продавайся она - наверняка были бы упоминания о ней самой и ее стоимости. "Выдает строку" - куда и в какой момент? Если мы посмотрим вот сюда https://docs.microsoft.com/en-us/windows/win32/seccrypto/signeddata-sign, то видно, что у этого метода третий параметр отвечает за формат подписи. Вы ставите 1. Расшифровка форматов вот здесь https://docs.microsoft.com/en-us/windows/win32/seccrypto/capicom-encoding-type, 1 - это CAPICOM_ENCODE_BINARY, бинарная последовательность. Семерка с такими данными работать самостоятельно не умеет. Может, лучше все же 0 - CAPICOM_ENCODE_BASE64? |
|||
41
NorthWind
04.03.20
✎
19:33
|
| OutStream.CharSet=""utf-8"";
и вот это имхо тоже зря, потому что опять же непонятно что с этим из-под 7.7 делать. Ну не умеет она юникоду ни в каком виде. Поставьте US-ASCII. |
|||
42
Сияющий в темноте
04.03.20
✎
19:48
|
(41)ну,если двоичный поток,то 7.7 прекрасно умеет utf-8,так как строки однобайтовые
а вот для Com-сервера строку можно передать только как bstr,а это unicode строка. лицензию требует не com-сервер,а само CryptoPro. |
|||
43
NorthWind
04.03.20
✎
21:29
|
(42) > лицензию требует не com-сервер,а само CryptoPro.
Тут нестыковка. Дело в том, что CAPICOM является такой же надстройкой над CryptoAPI, которое, в свою очередь, обращается к криптопровайдеру. Не будь рабочей лицензии (хотя бы триальной) на CryptoPro, отлуп был бы одинаковым у CaDESCOM, и у CAPICOM. Здесь же CAPICOM работает, а CaDESCOM нет. У CaDESCOM на самом деле есть специфика, о которой я писал в (16) - если в методе SignCades выбираются подписи, отличные от CADES_BES, то нужна служба штампов времени, а вот как раз она стоит дополнительных денег и без нее такие подписи использовать не получится. Возможно, (0) не разобрался досконально с параметрами и сделал вызов как раз на такую подпись, тем более что в примерах кода на https://cpdn.cryptopro.ru/ упорно приводят подписи со штампом времени. |
|||
44
brenli
05.03.20
✎
06:35
|
(42) Описание ошибки: CAdESCOM.CadesSignedData.1: Лицензия на КриптоПро TSP Client истекла или не была введена
|
|||
45
Garykom
гуру
05.03.20
✎
06:45
|
(44) У тебя ситуация (43) ты при подписи выбрал такие параметры что она пытается службу штампов времени заюзать
Простой поиск по твоей ошибке выходит на https://www.cryptopro.ru/forum2/default.aspx?g=posts&t=11690 https://www.cryptopro.ru/forum2/default.aspx?g=posts&t=5334 И там обрати внимание: "с усиленной квалифицированной электронной подписью <> усовершенствованная ЭЦП с усиленной квалифицированной = это на базе квалифицированного сертификата (63 ФЗ) а усовершенствованная ЭЦП = это ЭЦП, дополненная доказательствами времени подписания\статуса действия сертификата" |
|||
46
brenli
05.03.20
✎
07:14
|
(45) (43) Спасибо. Открепленная подпись заработала с CAPICOM ом.
Данные подписываются запрос отправляется, но с сигнатурой по прежнему что то не то. Документ на сайте ЧЗ не создается, хотя id документа возвращается. Длина сигнатуры при запросе через браузер - 9188 Длина сигнатуры при запросе через 1c - 7452 Что не так не понятно. Файл после подписания точно имеет открепленную подпись и не содержит данных, я проверил декодировав base64 полученный после подписания. С не открепленной - содержатся данные в моем случае xml, без открепленной данных нет. Далее это открепленную подпись преобразую в base64 и что то не так. Документ точно заполняется как надо. Если строкой передаю сигнатуру руками скопированную из запроса браузера, документы создаются. Что еще можно проверить. |
|||
47
brenli
05.03.20
✎
07:25
|
Как то не так получается открепленная подпись.
|
|||
48
Garykom
гуру
05.03.20
✎
07:44
|
(47) Не нужна открепленная )) Обычная подпись там. Точнее в МДЛП была обычная а не "открепленная" а какая у тебя маркировка хз.
|
|||
49
NorthWind
05.03.20
✎
07:57
|
(48) судя по тому что через браузер длинее - похоже на то что должна быть не открепленная.
ТС, а неоткрепленную не пробовал? Метод тыка - дело иногда полезное. |
|||
50
brenli
05.03.20
✎
08:07
|
(47) signature - открепленная УКЭП закодированный в base64. Документ необходимо подписывать до перевода его в base64. Тип строковый.
(49) Пробовал. Не проходит, нужна именно открепленная. Я декодировал то что идет через браузер и то что идет через 1с. ================================Через браузер============================================== 0⚧ *戆獁ذ⚔10*僇0 *戆獁㰂0℁ÂNmG릲}ev㓓0 *僇010 *戆獁 [email protected]0 URU10U77 Москва10Uг. Москва1.0,U %улица Тверская, дом 71,0*U #Минкомсвязь России10*僤 104770202670110*僃Ⴡ0077104743751,0*U#Минкомсвязь России0 180706121806Z 360701121806Z010 *戆獁 [email protected]0 URU10U77 Москва10Uг. Москва1.0,U %улица Тверская, дом 71,0*U #Минкомсвязь России10*僤 104770202670110*僃Ⴡ0077104743751,0*U#Минкомсвязь России0f0*僇0*僂#*僇C@u9*E繢彷�ꝶZq꽽X챆酡W읻H幊눙ꪩ뺵踱ʇ蓵嶶䊷�°⁾0ᵆ*僤pᨌ4ПАКМ «КриптоПро HSM» версии 2.0CПАК «Головной удостоверяющий центр»5Заключение № 149/3/2/2/23 от 02.03.20184Заключение № 149/7/6/105 от 27.06.20180?*僤o64ПАКМ «КриптоПро HSM» версии 2.00CU <0:0*僤q0*僤q0*僤q0*僤q0*僤q0U 0U0U0ﰝUᴫԌ砭6䣐ᾃ<놰 *僇A꺽⻬r븛렕Ʀ嬌K*=9yڙ⋯ල0ɮ銟aoħ`ឈ蓡Ud f~0⇒0⇿Â͌Ըn0 *僇010 *戆獁 [email protected]0 URU10U77 Москва10Uг. Москва1.0,U %улица Тверская, дом 71,0*U #Минкомсвязь России10*僤 104770202670110*僃Ⴡ0077104743751,0*U#Минкомсвязь России0 180731102852Z 330731102852Z0 1 0 *戆獁 [email protected]0*僤 110222501102010*僃Ⴡ00222511309210 URU1'0%U22 Алтайский край10UБарнаул1604U -пр-кт Строителей 117, пом 60100.U'Удостоверяющий центр1%0#U ООО "ЦИБ-Сервис"1%0#UООО "ЦИБ-Сервис"0f0*僇0*僂#*僇C@颬耢Aֈ셇息⾿楙2=ؓ鿒Ѯବ* {0x9B亟=똝ﺛ}穞や 0℆0U氝U]`Uߟo髥멊G楰 +ⷔSubCA0U00%U 00U 0*僤q0*僤q04*僤o+)КриптоПро CSP (версия 4.0)0 +ⷕ0U#⁜0⁘ԂTᴫԌ砭6䣐ᾃ<놡䂁(010 *戆獁 [email protected]0 URU10U77 Москва10Uг. Москва1.0,U %улица Тверская, дом 71,0*U #Минкомсвязь России10*僤 104770202670110*僃Ⴡ0077104743751,0*U#Минкомсвязь России␎mG릲}ev㓓0ᘆUᐰ፰-ૠ)槨ttp://reestr-pki.ru/cdp/guc_gost12.crl0-ૠ)槨ttp://company.rt.ru/cdp/guc_gost12.crl0-ૠ)槨ttp://rostelecom.ru/cdp/guc_gost12.crl0C+70503+0槨ttp://reestr-pki.ru/cdp/guc_gost12.crt0ᵆ*僤pᨌ4ПАКМ «КриптоПро HSM» версии 2.0CПАК «Головной удостоверяющий центр»5Заключение № 149/3/2/2/23 от 02.03.20184Заключение № 149/7/6/105 от 27.06.20180 *僇Aൌ3♶䕃ǬƋgoP븺H Yҡ陠X꧀WOݱ3봒�4誤티≡0≎Âd蝕룩C0ﶊ0 *僇0 1 0 *戆獁 [email protected]0*僤 110222501102010*僃Ⴡ00222511309210 URU1'0%U22 Алтайский край10UБарнаул1604U -пр-кт Строителей 117, пом 60100.U'Удостоверяющий центр1%0#U ООО "ЦИБ-Сервис"1%0#UООО "ЦИБ-Сервис"0 190214102028Z 200514091749Z0₾10*僃ፁ 4500007720100. *戆獁 !4522004773-450201001-4502011013301#0! *戆獁 [email protected]0*僃Ⴡ00452200477310*僤0534830204010*僤 1024501948305100.U'Генеральный Директор1907U 0АО "ШАДРИНСКИЙ ЗООВЕТСНАБ"1)0'U УЛ РАЙОННАЯ, ДОМ 1110UШадринск1/0-U&45 Курганская область10 URU1604U*-Александр Александрович10UБрюханов1907U0АО "ШАДРИНСКИЙ ЗООВЕТСНАБ"0f0*僇0*僂$*僇C@ݒ馔Ȅ渔ޜ\;vꚨ㒨ɨ㙊xᷠOᢦ"֜ꁍ꼚Iɣ>�37B縣ⅻ0ⅷ0UఽU604ᔺ[email protected]䜰10*僃ፁ 45000077200U 0 0*僤q0JU%C0A+*僂"+*僃㴆*僃*僃*僃0U#⁗0⁓ԝ`Uߟo髥멊G楡䂁(010 *戆獁 [email protected]0 URU10U77 Москва10Uг. Москва1.0,U %улица Тверская, дом 71,0*U #Минкомсвязь России10*僤 104770202670110*僃Ⴡ0077104743751,0*U#Минкомсвязь России⋀͌Ըn0ULdž?贶擐"0+U$0"ϲ0190214102027ZᏲ0200514091749Z0*僤p0+"КриптоПро CSP" (версия 4.0)S"Удостоверяющий центр "КриптоПро УЦ" версии 2.0OСертификат соответствия № СФ/124-3570 от 14.12.2018OСертификат соответствия № СФ/128-2983 от 18.11.20160#*僤o"КриптоПро CSP"0^*僂1S0Q0Ahttp://secret-net.ru/ucdocs/СКБ Контур и ДЗОČMg릺+滎찁ᆃUz0x0:ภ6洨ttp://cib-service.ru/files/cib-service-mid-2018.crl0:ภ6洨ttp://secret-net.net/files/cib-service-mid-2018.crl0ᔆ+ᇰᄰ@+0洨ttp://cib-service.ru/files/cib-service-mid-2018.crt0@+0洨ttp://secret-net.net/files/cib-service-mid-2018.cer0 *僇Ar쥣ij㳢[怪y$환嶪䵥娸շa梞D쯙禧,㬾猷뤘Ņ{ ꄗڅ砄1ℙ0ℕ0⁴0 1 0 *戆獁 [email protected]0*僤 110222501102010*僃Ⴡ00222511309210 URU1'0%U22 Алтайский край10UБарнаул1604U -пр-кт Строителей 117, пом 60100.U'Удостоверяющий центр1%0#U ООО "ЦИБ-Сервис"1%0#UООО "ЦИБ-Сервис"d蝕룩C0ﶊ0*僇80 *戆獁 1 *戆獁0 *戆獁 1 200305034154Z0/ *戆獁 1" z7罀쮂俖ฒ칋Y|am}ш=#ĺΰ⁋*戆獁 /1⁺0⁶000 *僇 룳zX什쀻ozw㘄ӠK"E䎉0H~0⁼0䂁c0 1 0 *戆獁 [email protected]0*僤 110222501102010*僃Ⴡ00222511309210 URU1'0%U22 Алтайский край10UБарнаул1604U -пр-кт Строителей 117, пом 60100.U'Удостоверяющий центр1%0#U ООО "ЦИБ-Сервис"1%0#UООО "ЦИБ-Сервис"d蝕룩C0ﶊ0*僇@^B@'Ι%U䦰疮핎浀gΩ췣ᎀYO�㷝悭˷㫷}ڋmꦓXDNj@ ========================================================================================================================== ====================================Через 1с=================================================== 0╏ *戆獁0╼10*僇0 *戆獁{0⇒0⇿Â͌Ըn0 *僇010 *戆獁 [email protected]0 URU10U77 Москва10Uг. Москва1.0,U %улица Тверская, дом 71,0*U #Минкомсвязь России10*僤 104770202670110*僃Ⴡ0077104743751,0*U#Минкомсвязь России0 180731102852Z 330731102852Z0 1 0 *戆獁 [email protected]0*僤 110222501102010*僃Ⴡ00222511309210 URU1'0%U22 Алтайский край10UБарнаул1604U -пр-кт Строителей 117, пом 60100.U'Удостоверяющий центр1%0#U ООО "ЦИБ-Сервис"1%0#UООО "ЦИБ-Сервис"0f0*僇0*僂#*僇C@颬耢Aֈ셇息⾿楙2=ؓ鿒Ѯବ* {0x9B亟=똝ﺛ}穞や 0℆0U氝U]`Uߟo髥멊G楰 +ⷔSubCA0U00%U 00U 0*僤q0*僤q04*僤o+)КриптоПро CSP (версия 4.0)0 +ⷕ0U#⁜0⁘ԂTᴫԌ砭6䣐ᾃ<놡䂁(010 *戆獁 [email protected]0 URU10U77 Москва10Uг. Москва1.0,U %улица Тверская, дом 71,0*U #Минкомсвязь России10*僤 104770202670110*僃Ⴡ0077104743751,0*U#Минкомсвязь России␎mG릲}ev㓓0ᘆUᐰ፰-ૠ)槨ttp://reestr-pki.ru/cdp/guc_gost12.crl0-ૠ)槨ttp://company.rt.ru/cdp/guc_gost12.crl0-ૠ)槨ttp://rostelecom.ru/cdp/guc_gost12.crl0C+70503+0槨ttp://reestr-pki.ru/cdp/guc_gost12.crt0ᵆ*僤pᨌ4ПАКМ «КриптоПро HSM» версии 2.0CПАК «Головной удостоверяющий центр»5Заключение № 149/3/2/2/23 от 02.03.20184Заключение № 149/7/6/105 от 27.06.20180 *僇Aൌ3♶䕃ǬƋgoP븺H Yҡ陠X꧀WOݱ3봒�4誤티≡0≎Âd蝕룩C0ﶊ0 *僇0 1 0 *戆獁 [email protected]0*僤 110222501102010*僃Ⴡ00222511309210 URU1'0%U22 Алтайский край10UБарнаул1604U -пр-кт Строителей 117, пом 60100.U'Удостоверяющий центр1%0#U ООО "ЦИБ-Сервис"1%0#UООО "ЦИБ-Сервис"0 190214102028Z 200514091749Z0₾10*僃ፁ 4500007720100. *戆獁 !4522004773-450201001-4502011013301#0! *戆獁 [email protected]0*僃Ⴡ00452200477310*僤0534830204010*僤 1024501948305100.U'Генеральный Директор1907U 0АО "ШАДРИНСКИЙ ЗООВЕТСНАБ"1)0'U УЛ РАЙОННАЯ, ДОМ 1110UШадринск1/0-U&45 Курганская область10 URU1604U*-Александр Александрович10UБрюханов1907U0АО "ШАДРИНСКИЙ ЗООВЕТСНАБ"0f0*僇0*僂$*僇C@ݒ馔Ȅ渔ޜ\;vꚨ㒨ɨ㙊xᷠOᢦ"֜ꁍ꼚Iɣ>�37B縣ⅻ0ⅷ0UఽU604ᔺ[email protected]䜰10*僃ፁ 45000077200U 0 0*僤q0JU%C0A+*僂"+*僃㴆*僃*僃*僃0U#⁗0⁓ԝ`Uߟo髥멊G楡䂁(010 *戆獁 [email protected]0 URU10U77 Москва10Uг. Москва1.0,U %улица Тверская, дом 71,0*U #Минкомсвязь России10*僤 104770202670110*僃Ⴡ0077104743751,0*U#Минкомсвязь России⋀͌Ըn0ULdž?贶擐"0+U$0"ϲ0190214102027ZᏲ0200514091749Z0*僤p0+"КриптоПро CSP" (версия 4.0)S"Удостоверяющий центр "КриптоПро УЦ" версии 2.0OСертификат соответствия № СФ/124-3570 от 14.12.2018OСертификат соответствия № СФ/128-2983 от 18.11.20160#*僤o"КриптоПро CSP"0^*僂1S0Q0Ahttp://secret-net.ru/ucdocs/СКБ Контур и ДЗОČMg릺+滎찁ᆃUz0x0:ภ6洨ttp://cib-service.ru/files/cib-service-mid-2018.crl0:ภ6洨ttp://secret-net.net/files/cib-service-mid-2018.crl0ᔆ+ᇰᄰ@+0洨ttp://cib-service.ru/files/cib-service-mid-2018.crt0@+0洨ttp://secret-net.net/files/cib-service-mid-2018.cer0 *僇Ar쥣ij㳢[怪y$환嶪䵥娸շa梞D쯙禧,㬾猷뤘Ņ{ ꄗڅ砄1ℙ0ℕ0⁴0 1 0 *戆獁 [email protected]0*僤 110222501102010*僃Ⴡ00222511309210 URU1'0%U22 Алтайский край10UБарнаул1604U -пр-кт Строителей 117, пом 60100.U'Удостоверяющий центр1%0#U ООО "ЦИБ-Сервис"1%0#UООО "ЦИБ-Сервис"d蝕룩C0ﶊ0*僇80 *戆獁 1 *戆獁0 *戆獁 1 200305033801Z0/ *戆獁 1" ⦾䀯G䖃m钸}ῂ-吁0⁋*戆獁 /1⁺0⁶000 *僇 룳zX什쀻ozw㘄ӠK"E䎉0H~0⁼0䂁c0 1 0 *戆獁 [email protected]0*僤 110222501102010*僃Ⴡ00222511309210 URU1'0%U22 Алтайский край10UБарнаул1604U -пр-кт Строителей 117, пом 60100.U'Удостоверяющий центр1%0#U ООО "ЦИБ-Сервис"1%0#UООО "ЦИБ-Сервис"d蝕룩C0ﶊ0*僇@Zٱ撻4诖含MuZ%눑^Xt`細㙾@Ch;j魸3ӳԳ=CA~D$ ========================================================================================================================== |
|||
51
NorthWind
05.03.20
✎
08:17
|
есть подозрение, что бинарник во втором случае покорежен в результате неправильного сохранения или преобразования.
Если вам ЭЦП нужна именно в бинарнике, ADODB.Stream лучше с adTypeBinary использовать. У вас как сделано? |
|||
52
Garykom
гуру
05.03.20
✎
08:21
|
(50) Блин сделай уже через csptest (которая в комплекте с криптопро) обычную подпись и проверь пройдет ли
https://www.cryptopro.ru/forum2/default.aspx?g=posts&t=16875 |
|||
53
Garykom
гуру
05.03.20
✎
08:23
|
(52)+ Хотя там есть вариант "заработало"
|
|||
54
brenli
05.03.20
✎
08:39
|
(51)
СтрКода="function SignFile(FileName,Cert,OutFileName) |{ | InStream=new ActiveXObject(""ADODB.Stream""); | InStream.Type=1; // binary data | InStream.Mode=3; // read/write | InStream.Open(); | InStream.LoadFromFile(FileName); | InData=InStream.Read(-1); | | Signer=new ActiveXObject(""CAPICOM.Signer""); | Signer.Certificate=Cert; //| Signer.TSAAddress = ""http://www.cryptopro.ru/tsp/tsp.srf"";; //| Signer.Options=2; // CAPICOM_CERTIFICATE_INCLUDE_END_ENTITY_ONLY | | SignedData=new ActiveXObject(""CAPICOM.SignedData""); | SignedData.Content=InData; //| SignedData.ContentEncoding =1; | | OutSignedData=SignedData.Sign(Signer,1,1); | | OutStream=new ActiveXObject(""ADODB.Stream""); | OutStream.CharSet=""utf-8""; | OutStream.Type=2; // text data | OutStream.Mode=3; // read/write | OutStream.Open(); | OutStream.WriteText(OutSignedData); | OutStream.SaveToFile(OutFileName,2); | OutStream.Close(); | | return(0); |
|||
55
NorthWind
05.03.20
✎
09:02
|
(54) ну смотрите. Вы формируете бинарник - OutSignedData=SignedData.Sign(Signer,1,1).
А далее записываете его как текст. OutStream=new ActiveXObject(""ADODB.Stream""); OutStream.CharSet=""utf-8""; OutStream.Type=2;// text data Как минимум вы при этом рискуете что ADO вам напихает переводов строки в файл, что, по-моему, и происходит. Файл будет покорежен. Вопрос - зачем? |
|||
56
brenli
05.03.20
✎
09:06
|
Все заработало отлично. Спасибо коллеги.
Во первых включил Signer.Options=2; Во вторых ответ открепленной подписи не нужно повторно заворачивать в base64, он и так уже в нем. Длина сигнатуры получается всеравно разная , но документы в ЦРПТ стали создаваться |
|||
57
Garykom
гуру
05.03.20
✎
09:10
|
(56) Блин скажи ты будешь каждому юзеру в 77 на каждое рабочее место КриптоПро ставить?
Короче не туда ты пошел с CAPICOM когда есть более вменяемые варианты и более удобные. |
|||
58
NorthWind
05.03.20
✎
09:14
|
Это уж он разберется сам, наверно. Вопросы использования ПО не входят в задачу в (0).
Я, например, просто бота написал который работает на одной машине и на него все сорят файлами, а он делает обмен. Крипто-про стоит только там. Но речь не про маркировку. |
|||
59
Garykom
гуру
05.03.20
✎
09:18
|
(58) Ну его решение задачи изначально сильно ограничено виндой и устаревшим COM/OLE/ActiveX
Лет дцать назад это было нормально но сейчас уже нет. |
|||
60
NorthWind
05.03.20
✎
09:24
|
(59) и семеркой тоже :) но весь вопрос в том что это не наша печаль. Задача, она вот такая - семерка, крипто-про, капиком.
Я это делал, поэтому могу что-то ответить. Насколько у них там некрофилы работают в ИТ - это к делу отношения не имеет. |
|||
61
brenli
05.03.20
✎
09:48
|
(57) Более удобные имеется ввиду cryptcp ?
|
|||
62
Krio77
10.05.20
✎
13:19
|
(61) уточните, пожалуйста, у Вас какая группа товаров маркируется?
а то у меня обувь и для создания документа в ЦРПТ, артибут есть signature и product_document вы упоминали что signature вам удалось как то получить но как из форума не понял, Signer.Options=2; это было проблема? |
|||
63
spock
10.05.20
✎
20:55
|
Чтобы ю.л. использовать cryptcp нужны лицензии на (на каждое р.м.):
- cryptcp = 675р - OCSP Client = 1800р - TSP Client = 1800р - КриптоПро CSP = 2700р Так что это не бесплатно. |
|||
64
spock
10.05.20
✎
20:57
|
+63 для винды, в nix'ах по другому)
|
|||
65
NorthWind
10.05.20
✎
21:43
|
(63) TSP нужна только для таких подписей, которые требуют штамп времени. Для наших госорганов обычно не требуется ничего круче чем CADES BES, во всяком случае не сталкивался с другими пока. OCSP - как я понимаю, штука тоже в основном для параноиков, которые боятся компрометации сертификата. Большинству не сильно надо. Что касается самой утилы, то мне тоже кажется что она лицензировалась, поэтому я обычно старался юзать CADESCOM, тем более что это и удобнее, ну и CryptoPro CSP - понятное дело, нужно. Как-то так.
|
|||
66
Krio77
12.05.20
✎
14:03
|
(62) Вопрос снят, все заработало! )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |