logo
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Роман кислухин  
#1 Оставлено : 28 июля 2017 г. 19:34:07(UTC)
Роман кислухин

Статус: Активный участник

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

Добрый день

Налаживаем обмен с банками, и с несколькими из них такая проблема. Они утверждают, что формируют подпись и метку времени следующим вызовом:
signature = csd.SignCades(cps, CAdESCOM.CADESCOM_CADES_TYPE.CADESCOM_CADES_T, true, CAdESCOM.CAPICOM_ENCODING_TYPE.CAPICOM_ENCODE_BASE64);
То есть сами не формируют сообщение.
Однако мы при проверке подписи через криптоапи, а точнее при проверке подписи метки времени получаем следующую ошибку (cryptVerifyMessageSignature):
Объект или свойство не найдено. (0x80092004)
Мы проанализировали ASN.1, судя по всему, сертификат, которым подписана метка времени, добавлен каким-то нестандартным образом. И наверное КриптоПро не может его найти в этом сообщении.
Подпись метки времени я вытащил из сообщения и прикладываю.
timestamp.p7s.zip (2kb) загружен 4 раз(а).
Offline Роман кислухин  
#2 Оставлено : 1 августа 2017 г. 11:20:25(UTC)
Роман кислухин

Статус: Активный участник

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

Тут http://dss.cryptopro.ru/Verify/Verify/ проверка проходит, а у нас нет. Так в чем же причина?
Offline Роман кислухин  
#3 Оставлено : 1 августа 2017 г. 11:22:03(UTC)
Роман кислухин

Статус: Активный участник

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

Вот целиком все сообщение. message.zip (4kb) загружен 11 раз(а).
Offline cross  
#4 Оставлено : 14 августа 2017 г. 12:57:13(UTC)
cross


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

Группы: Администраторы, Участники
Зарегистрирован: 24.11.2009(UTC)
Сообщений: 689
Откуда: Crypto-Pro

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 104 раз в 95 постах
Т.к. вы создаете CAdES подпись, сертификат службы штампов времени был помещен в не подписанный атрибут CertificateValues. Для проверки вам нужно достать его самим и подать на вход CryptVerifyMessageSignature().
Анатолий Беляев (cross на cryptopro.ru)
Offline Роман кислухин  
#5 Оставлено : 14 августа 2017 г. 14:56:03(UTC)
Роман кислухин

Статус: Активный участник

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

А почему в данном случае отличается способ добавления сертификата от случая с обычной подписью? У нас сервис меток времени делает это стандартным способом и проверка проходит. А здесь сертификат добавляется в другую цепочку. И проблема не со всеми контрагентаими, а видимо только с теми, кто использует этот API.

Отредактировано пользователем 14 августа 2017 г. 15:00:10(UTC)  | Причина: Не указана

Offline cross  
#6 Оставлено : 15 августа 2017 г. 13:25:56(UTC)
cross


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

Группы: Администраторы, Участники
Зарегистрирован: 24.11.2009(UTC)
Сообщений: 689
Откуда: Crypto-Pro

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 104 раз в 95 постах
так требует стандарт на CAdES подпись. Далее не подписанные атрибуты с доказательствами могут быть заверены еще одним штампом.

Отредактировано пользователем 15 августа 2017 г. 13:29:15(UTC)  | Причина: Не указана

Анатолий Беляев (cross на cryptopro.ru)
Offline Роман кислухин  
#7 Оставлено : 29 августа 2017 г. 18:55:01(UTC)
Роман кислухин

Статус: Активный участник

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

Если речь идет о CAdES-C, то там добавляются идентификаторы сертификатов, используемых для проверки (за исключением сертификата подписанта). А здесь у нас значение сертификата, что как-бы намекает на CAdES-X, но сертификат один, а не все. Причем при подписи явно указывается тип CAdES-T. Какой формат подписи тогда реально используется, где про него прочитать и как его проверять?
Offline cross  
#8 Оставлено : 13 сентября 2017 г. 12:42:50(UTC)
cross


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

Группы: Администраторы, Участники
Зарегистрирован: 24.11.2009(UTC)
Сообщений: 689
Откуда: Crypto-Pro

Сказал(а) «Спасибо»: 3 раз
Поблагодарили: 104 раз в 95 постах
При создании CADES-T мы сразу делаем задел для создания X Long Type 1, и складываем доказательства для проверки штампа в расширение которое требует X Long Type 1
Анатолий Беляев (cross на cryptopro.ru)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.