Статус: Новичок
Группы: Участники
Зарегистрирован: 30.05.2018(UTC) Сообщений: 6 Поблагодарили: 1 раз в 1 постах
|
Доброго времени суток. Есть ваш сайт https://www.justsign.me/verifyqca/Verify/. На него загружаем файл document_8_.xml.sig (306kb) загружен 17 раз(а).. Формат подписи определяется как CMS (это присоединенная подпись): "Определён формат подписи: Подпись в формате CMS". После этого можно нажать на кнопочку "Снять и проверить" После этого мы скачиваем зашифрованный файл и видим данные подписи. Для этого нет необходимости указывать сертификаты с ключами получателя или отправителя, оно просто берет и расшифровывается. Как с помощью java апи получить расшифрованный файл, при этом данные подписи не нужны, сертификатов отправителя (который шифровал) у нас нет и быть не может, заказчик такой информации не предоставляет? Очень нужна помощь. хотя бы ткните носом куда в примерах смотреть (во всех примерах, которые я посмотрел по CAdES, CMS_samples, cmsutil) - везде нужны ключи и сертификаты...
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,484 Сказал «Спасибо»: 553 раз Поблагодарили: 2245 раз в 1751 постах
|
Здравствуйте.
Это не зашифрованный файл.
Это CMS - данные (в данном случае xml) + электронная подпись.
(-----BEGIN CMS----- данные CMS в base64 --)
Вам необходимо проверить ЭП и извлечь исходные данные в файл.
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 30.05.2018(UTC) Сообщений: 6 Поблагодарили: 1 раз в 1 постах
|
А для того чтобы извлечь исходные данные в файл что нужно сделать? Просто сконвертировать из base64 в байты и сохранить в файл?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,484 Сказал «Спасибо»: 553 раз Поблагодарили: 2245 раз в 1751 постах
|
Автор: TheElvenPath А для того чтобы извлечь исходные данные в файл что нужно сделать? Просто сконвертировать из base64 в байты и сохранить в файл? Посмотрите здесь. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 30.05.2018(UTC) Сообщений: 6 Поблагодарили: 1 раз в 1 постах
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 30.05.2018(UTC) Сообщений: 6 Поблагодарили: 1 раз в 1 постах
|
Сделал вот так: Код:
final byte[] cmsBase = Array.readFile(file);
CMSSignedData cmsSignedData = new CMSSignedData(Base64.decode(cmsBase));
System.out.println(new String((byte[])cmsSignedData.getSignedContent().getContent()));
Но так работает только в том случае если в начале и конце файла нет -----BEGIN CMS----- и -----END CMS----- соответственно. Проверял удаляя вручную. Есть ли уже написанные инструменты для обрезания этого дела? Или нужно свой велосипед писать?
|
1 пользователь поблагодарил TheElvenPath за этот пост.
|
dirt оставлено 01.12.2023(UTC)
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 22.09.2016(UTC) Сообщений: 4 Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
Тоже интересует этот вопрос
|
1 пользователь поблагодарил Noxlen за этот пост.
|
dirt оставлено 01.12.2023(UTC)
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close