Статус: Новичок
Группы: Участники
Зарегистрирован: 30.08.2023(UTC) Сообщений: 1  Откуда: Москва Сказал(а) «Спасибо»: 2 раз
|
Привет! Подписываю PDF файл через cptools (Инструменты Крипто Про) совмещенной подписью, то есть на выходе имею ту же PDF, но обернутую в подпись. Подскажите плиз, есть ли возможность понять, что файл был подписан ЭЦП без установки специального софта? То есть сама валидность подписи не важна, а важно понять факт того, что файл был подписан какой-либо ЭЦП. Что удалось понять самому: 1. Если открыть подписанный ЭЦП файл на редактирование в любом текстовом редакторе, то где-то в конце файла можно увидеть некоторую полезную информацию о подписи: (ФИО владельца ЭЦП, наименование УЦ и тд):  Screenshot 2023-08-30 at 21.31.48.png (399kb) загружен 4 раз(а).2. PDF с подписями имеет одинаковые стартовые биты: 3080 0609 2a86 4886 f70d 0107 02a0 8030 8002 0101Далее идет директива %PDF-1.3 и видимо само содержимое PDFки. Может есть знающие люди, кто подскажет куда копать, чтобы по каким-то последовательностям байтов можно было с уверенностью сказать, что файл точно имеет подпись? Файлы для тестов во вложении:  signed_test.pdf (70kb) загружен 2 раз(а). test.pdf (68kb) загружен 1 раз(а).
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,664   Сказал «Спасибо»: 571 раз Поблагодарили: 2297 раз в 1798 постах
|
Здравствуйте. 1. После подписания - у итогового файла должно быть другое расширение, например, .sig 2. Подпись - CMS - ASN.1 - соответственно, смотреть первые байты 30 = SEQUENCE - можно по первому байту уже определить, что это не pdf. сама структура: Цитата: 0000 30 NDEF: SEQUENCE { 0002 06 9: OBJECT IDENTIFIER signedData (1 2 840 113549 1 7 2) : (PKCS #7) 000D A0 NDEF: [0] { 000F 30 NDEF: SEQUENCE { 0011 02 1: INTEGER 1 0014 31 C: SET { 0016 30 A: SEQUENCE { 0018 06 8: OBJECT IDENTIFIER '1 2 643 7 1 1 2 2' : } : } 0022 30 NDEF: SEQUENCE { 0024 06 9: OBJECT IDENTIFIER data (1 2 840 113549 1 7 1) : (PKCS #7) 002F A0 NDEF: [0] { 0031 24 NDEF: OCTET STRING { 0033 04 10E87: OCTET STRING : 25 50 44 46 2D 31 2E 33 %PDF-1.3 : 0A 25 C4 E5 F2 E5 EB A7 .%...... : F3 A0 D0 C4 C6 0A 33 20 ......3 : 30 20 6F 62 6A 0A 3C 3C 0 obj.<<
|
|
 1 пользователь поблагодарил Андрей * за этот пост.
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,664   Сказал «Спасибо»: 571 раз Поблагодарили: 2297 раз в 1798 постах
|
Автор: user905  2. PDF с подписями имеет одинаковые стартовые биты: 3080 0609 2a86 4886 f70d 0107 02a0 8030 8002 0101 Далее идет директива %PDF-1.3 и видимо само содержимое PDFки. это частный случай. 30 - последовательность 80 - размер не указан 06 - oid с его размером и значением.. ... например у меня, если указываю размер структуры (+ свои наборы сертифитов\атрибутов) 30 83 01 2C 37 = размер указан 06 09 2A 86 48 86 F7 0D 01 07 02 = OBJECT IDENTIFIER signedData (1 2 840 113549 1 7 2) Цитата: 0000 30 12C37: SEQUENCE { 0005 06 9: OBJECT IDENTIFIER signedData (1 2 840 113549 1 7 2) : (PKCS #7) 0010 A0 12C27: [0] { 0015 30 12C22: SEQUENCE { 001A 02 1: INTEGER 1 001D 31 E: SET { 001F 30 C: SEQUENCE { 0021 06 8: OBJECT IDENTIFIER '1 2 643 7 1 1 2 2' 002B 05 0: NULL : } : } 002D 30 10EA0: SEQUENCE { 0032 06 9: OBJECT IDENTIFIER data (1 2 840 113549 1 7 1) : (PKCS #7) 003D A0 10E90: [0] { 0042 24 NDEF: OCTET STRING { 0044 04 10E87: OCTET STRING : 25 50 44 46 2D 31 2E 33 %PDF-1.3
 Snimok ehkrana ot 2023-08-31 00-23-50.png (69kb) загружен 5 раз(а). Snimok ehkrana ot 2023-08-31 00-22-21.png (130kb) загружен 4 раз(а). |
|
 1 пользователь поблагодарил Андрей * за этот пост.
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close