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

Уведомление

Icon
Error

3 Страницы123>
Опции
К последнему сообщению К первому непрочитанному
Offline Strong  
#1 Оставлено : 19 сентября 2008 г. 20:37:20(UTC)
Strong

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

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

Подскажите, пожалуйста, существует ли какой-либо способ при помощи CryptoPro PDF осуществлять потоковую подпись PDF файлов. Имеется ввиду автоматическая подпись множества PDF файлов. Интересует прежде всего, конечно, возможность разработки собственной программы для реализации этой функции.
Offline Павел Смирнов  
#2 Оставлено : 22 сентября 2008 г. 15:03:58(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
В настоящее время уже реализована возможность подписи документов с помощью JavaScript в самих приложениях Adobe без участия графического интерфейса пользователя. В скором времени будет подготовлен пример использования этой возможности.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Strong  
#3 Оставлено : 22 сентября 2008 г. 16:21:50(UTC)
Strong

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

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

Если Вас не затруднит, выложите, пожалуйста, пример в эту ветку тоже
Offline Konstantin  
#4 Оставлено : 24 сентября 2008 г. 17:57:07(UTC)
Konstantin

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

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

Сказал «Спасибо»: 1 раз
Пример добавления подписи с помощью JavaScript:

var f = theDoc.addField ('invisible signature 1', 'signature', 0, [0,0,0,0]);
var e = security.getHandler('CryptoPro PDF'); /*стандартный провайдер 'Adobe.PPKLite'*/
var c = security.importFromFile({cType:'Certificate', cDIPath:'/c/mycert.cer', bUI:false});
e.login({oParams:{oEndUserSignCert:c}});
var s = { reason: 'No reason', location: 'Moscow'};
f.signatureSign({oSig: e, oInfo: s, bUI: false });

Документация по использованию JavaScript в Adobe Acrobat:
http://www.adobe.com/dev.../acrobat/javascript.html

Имеется уже готовый продукт CosMassSign (http://www.cos.ru) для пакетного подписания PDF файлов с помощью КриптоПро PDF.

Отредактировано пользователем 24 сентября 2008 г. 17:58:00(UTC)  | Причина: Не указана

Offline Евгений А. Быков  
#5 Оставлено : 25 сентября 2008 г. 21:00:03(UTC)
Евгений А. Быков

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

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

Добрый день,
я разбираюсь с похожей проблемой (нужно подписать PDF из ASP.NET приложения) - возник вопрос - судя по скрипту, если его использовать и адаптировать под веб-приложение: используется *.cer файл, в котором может находиться только открытый ключ. Для подписи же используется закрытый ключ, а открытый - для проверки подписи. Не могли бы Вы пояснить реализацию ЭЦП в данном случае?
И ещё один вопрос - не нашёл на сайте продукта CosMassSign (http://www.cos.ru), он входит в какой-то из предлагаемых пакетов?
Спасибо
Offline Павел Смирнов  
#6 Оставлено : 28 октября 2008 г. 13:32:28(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Евгений А. Быков написал:
я разбираюсь с похожей проблемой (нужно подписать PDF из ASP.NET приложения) - возник вопрос - судя по скрипту, если его использовать и адаптировать под веб-приложение: используется *.cer файл, в котором может находиться только открытый ключ. Для подписи же используется закрытый ключ, а открытый - для проверки подписи. Не могли бы Вы пояснить реализацию ЭЦП в данном случае?
И ещё один вопрос - не нашёл на сайте продукта CosMassSign (http://www.cos.ru), он входит в какой-то из предлагаемых пакетов?
Спасибо


К сожалению, разработчики CosMassSign не захотели помочь вам и ответить на запрос.

Тогда я отвечу по поводу открытого/закрытого ключей. Функция CryptAcquireCertificatePrivateKey() может многое. Например, если подать ей сертификат без ключа, то она сама поищет этот сертификат в хранилище Личные текущего пользователя и если найдёт его там установленным со ссылкой на закрытый ключ, то будет открыт криптопровайдер с этим закрытым ключом. Кроме того, функции CryptoAPI работы с сообщениями при использовании ключей создают так называемые идентификаторы ключей, которые также хранят ссылки на соответствующие закрытые ключи. Таким образом, один раз подав в функцию, например, CryptSignMessage() сертификат со ссылкой на закрытый ключ, вы можете все следующие разы звать её с этим же сертификатом без ссылки на закрытый ключ, и она будет корректно работать.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Strong  
#7 Оставлено : 6 ноября 2008 г. 17:19:53(UTC)
Strong

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

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

Указанный пример, как я понял, встраивается в Acrobat и выполняет подпись по нажатию на кнопку или пункт меню?

А все-таки есть ли способ вызывать подпись из собственного приложения, например, используя ActiveX? Если есть такая информация, поделитесь, пожалуйста!

А где взять CosMassSign? на сайте нет ни малейшего намека на его существование.
Offline Павел Смирнов  
#8 Оставлено : 7 ноября 2008 г. 11:57:28(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Скрипты в Acrobat можно выполнять по-разному. Наверно, можно написать скрипт, перебирающий файлы PDF по заданному правилу и подписывающий их.

Если хочется совсем извне это автоматизировать, надо воспользоваться возможностями межпроцессной автоматизации Acrobat/Reader (IAC). В Adobe Acrobat 9.0 SDK есть пример выполнения открывания документа в Acrobat и выполнения скрипта из приложения VB.NET - BasicIacJsoVB.

P.S. Про CosMassSign пока дополнительной информации нет.
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Strong  
#9 Оставлено : 7 ноября 2008 г. 14:46:47(UTC)
Strong

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

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

Спасибо! Примеры в SDK нашел!

Наберусь наглости и задам еще вопрос:

Когда я подписываю PDF штатными средствами Акробата, то при просмотре подписанного файла в Adobe Reader 8 вверху (над самим документом) появляется поле, в котором есть сведения о подписи.

Когда, подписываю скриптом (который указан в этой ветке выше), это поле не появляется, хоть убей! В SDK по этому поводу ничего вразумительного пока не нашел. Не знаете как решить эту проблему?
Offline Strong  
#10 Оставлено : 7 ноября 2008 г. 16:59:12(UTC)
Strong

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

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

Ура! и с этим разобрался. Новая проблема:

Статус подписи у подписанного документа: The certificate is untrusted.

Почему? Ведь сертификат центра сертификации добавлен в хранилище "Доверенные центры сертификации"
Offline Павел Смирнов  
#11 Оставлено : 7 ноября 2008 г. 17:14:46(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
А в чём было дело с невидимой подписью?

А если тем же сертификатом подписать ручками (не с помощью скрипта), то подпись корректно проверяется?
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Strong  
#12 Оставлено : 7 ноября 2008 г. 19:37:45(UTC)
Strong

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

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

С невидимой подписью нужно просто было указать, что эта подпись используется для сертификации документа. Вот что выудил из SDK:

f.signatureSetSeedValue({
mdp: "defaultAndComments",
legalAttestations: ["Trust me and be at ease.",
"You can surely trust the author."],
//reasons: ["This is a reason", "This is a better reason"],
flags: 8
});

А вот насчет "The certificate is untrusted" - что штатными средствами подписываю, что скриптом - одно и тоже.
Offline Konstantin  
#13 Оставлено : 8 ноября 2008 г. 21:52:36(UTC)
Konstantin

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

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

Сказал «Спасибо»: 1 раз
А ЭЦП обычная или усовершенствованная?
Сертификат не отозван, вся цепочка сертификатов установлена, срок действия не истек? Может не смог проверить отзыв. К сожелению подробная информация не отображается в интерфейсе :( ...пока.


В AReader 8 поле вверху появляется только при сертификации, а не просто подписи. А в AReader 9 поле появляется и на обычную подпись.
Offline Konstantin  
#14 Оставлено : 8 ноября 2008 г. 21:55:33(UTC)
Konstantin

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

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

Сказал «Спасибо»: 1 раз
Процесс оформления CosMassSign как продукта немного затянулся.
Offline Strong  
#15 Оставлено : 10 ноября 2008 г. 12:13:19(UTC)
Strong

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

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

>А ЭЦП обычная или усовершенствованная?

А где это посмотреть? Какой параметр?

Сроки действия не истекли. Собственно, цепочка состоит из двух сертификатов: моего и центра сертификации. Оба сертификата действительные.
Offline Konstantin  
#16 Оставлено : 10 ноября 2008 г. 17:18:37(UTC)
Konstantin

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

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

Сказал «Спасибо»: 1 раз
УЭЦП = CAdES = CMS Advanced Electronic Signatures.
В Адобовском интерфейсе подписания это галочка под списком сертификатов. Если через скрипт, то необходимо указать f.signatureSign({oInfo: {timeStamp: "http://www.cryptopro.ru/tsp/"}}); //пример для тестового сервера штампов времени КриптоПро.

Версия плагина 1.04.0016? (Help - About third-party plug-ins - CryptoPro PDF) Если да, то можно прислать какой-нибудь документ подписанный Вашим сертификатом на kowak@cos.ru?
Offline Павел Смирнов  
#17 Оставлено : 10 ноября 2008 г. 18:15:52(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Проверьте сертификат, использованный для подписи, например, с помощью certutil:
Код:
certutil -verify mycer.cer
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Strong  
#18 Оставлено : 13 ноября 2008 г. 13:14:05(UTC)
Strong

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

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

Так, спасибо за советы, но я, к сожалению, ничего не понял:

УЭЦП = CAdES = CMS Advanced Electronic Signatures - это что?, в какой программе?

certutil -verify mycer.cer - где взять эту certutil?

Я использую вот что:

1. CryptoPro CSP 2.0
2. CryptoPro PDF 1.04.0014

В Adobe Acrobat в CertificateViewer на вкладке Revocation написано следующее:

The selected certificate does not chain up to a trusted root certificate (see the Trust Tab for details). The result is that revocation checks were not performed on this certificate.

Однако, цепочка состоит из двух сертификатов: моего и центра сертификации. Мой сертификат помещен в хранилище "Личные", а сертификат цента - в хранилище "Доверенные корневые центры сертификации".

Оба сертификата действительны.
Offline Павел Смирнов  
#19 Оставлено : 13 ноября 2008 г. 13:56:00(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Adobe не умеет самостоятельно проверять сертификаты с ключами ГОСТ Р 34.10-2001. Для просмотра информации о подписи пользуйтесь кнопкой Show Certificate в свойствах подписи. Эта кнопка вызывает стандартное окно показа сертификатов Windows. Или у вас не так?
Техническую поддержку оказываем тут.
Наша база знаний.
Offline Strong  
#20 Оставлено : 14 ноября 2008 г. 12:20:11(UTC)
Strong

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

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

Так то оно, так. Только вот надпись "Действительность сертификации документа НЕИЗВЕСТНА. Не удалось проверить авторство" будет смущать клиентов. Получается, что придется так все оставлять? А пользователям давать инструкцию по проверке сертификата?
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
3 Страницы123>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.