Статус: Новичок
Группы: Участники
Зарегистрирован: 17.06.2021(UTC) Сообщений: 2 Откуда: Москва
|
добрый день, уважаемые участники Помогите, пожалуйста с решение "проблемы". Задача - необходимо подписать ответ системы неким сертификатом в виде PKCS7. Для решения задачи используется JCP и буквально пример из SDK - CAdES\PKCS7Example.java подписывает превосходно, проверяет и вынимает контент безо всяких проблем. Однако - есть набор клиентов, которые не утруждают себя валидацией подписанного документа и вынимают payload варварским способом - отрезая детали PKCS7 сообщения. Однако - в данной имплементации подписи, payload нарезан на блоки в 1000 байт в PKCS7 сообщении: pkcs7-1000blosk.png (22kb) загружен 10 раз(а).наличие PKCS7 идентификаторов блоков внутри payload - ломает парсинг содержимого ответа на стороне клиентов-"варваров". подскажите, пожалуйста - как в данном подходе к формированию подписи (взятый пример) поменять механизм подписи, чтобы он клал payload как один большой OCTET STRING по полной длине содержимого? например вот так pkcs7-long.png (8kb) загружен 8 раз(а).Возможно, пример взят не подходящий? Очень нужна ваша помошь Спасибо
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,964 Откуда: Крипто-Про Сказал(а) «Спасибо»: 20 раз Поблагодарили: 704 раз в 665 постах
|
Здравствуйте. Скорее всего, если код основан на примере PKCS7Example, то есть классе bouncycastle - CMSSignedDataGenerator, получить один большой octet sting не получится, т.к. CMSSignedDataGenerator кладет данные (encapsulated content) в случае совмещенной подписи в саму подпись, используя BEROctetString с размером буфера 1000. Однако поточная реализация CMSSignedDataStreamGenerator из BC как будто содержит метод setBufferSize(int size), могущий повлиять на размер буфера. Либо полностью переписывать пример, используя, допустим, пример CMSSign (ф. createCMSEx).
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 17.06.2021(UTC) Сообщений: 2 Откуда: Москва
|
добрый день
Мы поискали примеры и нашли среди них тот, что управляет размером буфера, на основании которого создается OCTETString Все в итоге получилось как надо
Спасибо
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close