Статус: Участник
Группы: Участники
Зарегистрирован: 03.07.2023(UTC) Сообщений: 16 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Москва Сказал(а) «Спасибо»: 2 раз
|
Автор: TolikTipaTut1 ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Есть спецификация, rfc 5126. В ней прописано, как создать несколько несколько эп в одном файле. Просто взять и скрепить несколько эп в одном файле не получится. Смотрите в сторону addsign По этой спецификации можно создать несколько ЭП в открепленном файле, как я понимаю. Верно? А получить файл с прикрепленными ЭП можно только повторив процедуру подписания, но уже в формате прикрепленных подписей. Так?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 05.07.2018(UTC) Сообщений: 467
Сказал(а) «Спасибо»: 43 раз Поблагодарили: 69 раз в 61 постах
|
Автор: ИгорьПур ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Спасибо за rfc. Иными словами, без повторной процедуры подписания нет методов получения стандартного файла с уже прикрпленными подписями, который бы сформировался из документа и его отерепленных подписей? У меня начальство уверено, что можно. А я вот не уверен. Вопрос сводится к аутентифицированным атрибутам. Иными словами, может вами быть подписано не то, что требует спецификация. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 05.07.2018(UTC) Сообщений: 467
Сказал(а) «Спасибо»: 43 раз Поблагодарили: 69 раз в 61 постах
|
Автор: ИгорьПур ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Автор: TolikTipaTut1 ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Есть спецификация, rfc 5126. В ней прописано, как создать несколько несколько эп в одном файле. Просто взять и скрепить несколько эп в одном файле не получится. Смотрите в сторону addsign По этой спецификации можно создать несколько ЭП в открепленном файле, как я понимаю. Верно? А получить файл с прикрепленными ЭП можно только повторив процедуру подписания, но уже в формате прикрепленных подписей. Так? Почему вы не хотите сразу прикрепленные делать? Экономия трафика? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 03.07.2023(UTC) Сообщений: 16 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Москва Сказал(а) «Спасибо»: 2 раз
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 03.07.2023(UTC) Сообщений: 16 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Москва Сказал(а) «Спасибо»: 2 раз
|
Автор: TolikTipaTut1 ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Автор: ИгорьПур ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Автор: TolikTipaTut1 ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Есть спецификация, rfc 5126. В ней прописано, как создать несколько несколько эп в одном файле. Просто взять и скрепить несколько эп в одном файле не получится. Смотрите в сторону addsign По этой спецификации можно создать несколько ЭП в открепленном файле, как я понимаю. Верно? А получить файл с прикрепленными ЭП можно только повторив процедуру подписания, но уже в формате прикрепленных подписей. Так? Почему вы не хотите сразу прикрепленные делать? Экономия трафика? Потому, что разработчики модуля подписания документации реализовали его только в таком виде. Начальство хочет его применять, но экспертные органы требуют документы в формате прикрепленных ЭП. Вот и встала задача сделать из одного другое. Я сегодня до хрипоты объяснял, что не получится, что слепить аутентичный файл из этого набора нельзя. Нет, говорят, если из файла м прикрепленными ЭП можно их выдернуть и сохранить отдельн, то почему нельзя сделать обратную задачу. Отредактировано пользователем 4 июля 2023 г. 0:24:02(UTC)
| Причина: Не указана
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 05.07.2018(UTC) Сообщений: 467
Сказал(а) «Спасибо»: 43 раз Поблагодарили: 69 раз в 61 постах
|
Поэкспериментировать, конечно, можно со всем этим. Попытаться извлечь секцию SignerInfo из одной подписи и вставить ее в другую... |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 03.07.2023(UTC) Сообщений: 16 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Москва Сказал(а) «Спасибо»: 2 раз
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,101 ![Мужчина Мужчина](/forum2/Themes/soclean/male.gif) ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Сказал «Спасибо»: 529 раз Поблагодарили: 2162 раз в 1687 постах
|
Автор: ИгорьПур ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) экспертные органы требуют документы в формате прикрепленных ЭП А какие именно органы и на какой ФЗ \ документ с требованиями они ссылаются? Например, есть Приказ Судебного департамента при Верховном Суде РФ от 27.12.2016 N 251 (ред. от 17.11.2021) "Об утверждении Порядка подачи в федеральные суды общей юрисдикции документов в электронном виде, в том числе в форме электронного документа" , в нем явно прописано: Электронная подпись должна содержаться в отдельном файле (отсоединенная электронная подпись)
2.3.5. Электронный документ должен быть подписан усиленной квалифицированной электронной подписью.
Порядок подачи документов не предусматривает подачу электронных документов, подписанных простой электронной подписью или усиленной неквалифицированной электронной подписью.
Электронные подписи, которыми подписаны обращения в суд и прилагаемые к ним документы, должны соответствовать требованиям усиленной квалифицированной электронной подписи, установленным законодательством Российской Федерации.
Электронная подпись должна содержаться в отдельном файле (отсоединенная электронная подпись).
При подписании документа несколькими лицами каждая электронная подпись должна содержаться в отдельном файле.
Порядок подачи документов не предусматривает подачи электронных документов, подписанных присоединенными электронными подписями.
2.3.6. Электронный документ должен быть подписан электронной подписью лица, которое указано в тексте электронного документа как лицо, его подписавшее.
Не допускается представление в суд электронных документов, подписанных электронной подписью лица, которое не указано в тексте электронного документа как лицо, его подписавшее.
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 03.07.2023(UTC) Сообщений: 16 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Москва Сказал(а) «Спасибо»: 2 раз
|
Строительная экспериза. Главгосэкспертиза, Мосгосэкспертиза. Они принимают проектную документацию, подписанную ЭП только в виде прикрепленных ЭП.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 05.07.2018(UTC) Сообщений: 467
Сказал(а) «Спасибо»: 43 раз Поблагодарили: 69 раз в 61 постах
|
ну я сделал походу что-то вроде proof of concept. работает. Требования: PS 7.3.5, BouncyCastle >2.0 Архив с исходниками на гугл диске. Ссылка: https://drive.google.com...mHFdDvo/view?usp=sharingПруфы: ![](/forum2/Themes/soclean/icon_file.gif) Screenshot 2023-07-04 014925.png (73kb) загружен 34 раз(а).Код:Add-Type -Path .\BouncyCastle.Cryptography.dll
.\cryptcp.x64.exe -sign -detached -cadesbes -thumbprint "f5a05f070645c79e229406385528892b28d0681c" .\tbs.pdf .\tbs.pdf.sig1.sig -der -cert
.\cryptcp.x64.exe -sign -detached -cadesbes -thumbprint "328300369c82b4da4629eadd259e7142752eb5fd" .\tbs.pdf .\tbs.pdf.sig2.sig -der -cert
$cades_signature1 = [Org.BouncyCastle.Cms.CmsSignedData]::new((Get-Content -AsByteStream -Path .\tbs.pdf.sig1.sig))
$cades_signature2 = [Org.BouncyCastle.Cms.CmsSignedData]::new((Get-Content -AsByteStream -Path .\tbs.pdf.sig2.sig))
$newcmssigndata = [Org.BouncyCastle.Cms.CmsSignedDataGenerator]::new()
$newcmssigndata.UseDerForCerts = $true
$signers = [System.Collections.Generic.List[Org.BouncyCastle.Cms.SignerInformation]]::new()
$signers.Add($cades_signature1.GetSignerInfos().GetSigners()[0])
$signers.Add($cades_signature2.GetSignerInfos().GetSigners()[0])
$certlist = [System.Collections.Generic.List[Org.BouncyCastle.X509.X509Certificate]]::new()
$certlist.Add(
($cades_signature1.GetCertificates().EnumerateMatches($cades_signature1.GetSignerInfos().GetSigners()[0].SignerID) | Select-Object -Index 0)
)
$certlist.Add(
($cades_signature2.GetCertificates().EnumerateMatches($cades_signature2.GetSignerInfos().GetSigners()[0].SignerID) | Select-Object -Index 0)
)
$certStore = [Org.BouncyCastle.Utilities.Collections.CollectionUtilities]::CreateStore($certlist)
$newcmssigndata.AddCertificates($certStore)
$newcmssigndata.AddSigners(
[Org.BouncyCastle.Cms.SignerInformationStore]::new(
$signers
)
)
$newcms = $newcmssigndata.Generate([Org.BouncyCastle.Cms.CmsProcessableByteArray]::new((Get-Content -AsByteStream -Path .\tbs.pdf)), $true)
0..($newcms.GetSignerInfos().GetSigners().Count-1) | ForEach-Object {
$cert = ($newcms.GetCertificates().EnumerateMatches($newcms.GetSignerInfos().GetSigners()[$_].SignerID) | Select-Object -Index 0)
$newcms.GetSignerInfos().GetSigners()[$_].Verify($cert[0])
}
$bb = $newcms.GetEncoded()
Set-Content -AsByteStream -Path newsig.sig -Value $bb
Отредактировано пользователем 4 июля 2023 г. 2:11:24(UTC)
| Причина: Не указана |
|
![thanks](/forum2/Themes/soclean/heart_small.png) 2 пользователей поблагодарили TolikTipaTut1 за этот пост.
|
nickm оставлено 04.07.2023(UTC), ИгорьПур оставлено 04.07.2023(UTC)
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close