Кваліфікований електронний підпис може бути створений як всередині документа (внутрішній підпис), так і у вигляді окремого файлу (зовнішній підпис). Обидві форми забезпечують однаковий рівень безпеки, але технічно і практично відрізняються у використанні.
W першої частини У цій статті ми детально описали відмінності між внутрішніми та зовнішніми підписами на прикладі форматів PAdES та XAdES. Однак зараз ми розглянемо ще один формат - CAdES - і надамо практичні поради щодо того, коли краще використовувати зовнішній підпис, а коли - внутрішній.
Формат CAdES - підпис CMS/PKCS#7 (внутрішній або зовнішній)
CAdES (CMS Advanced Electronic Signature) - ще один формат кваліфікованого підпису, заснований на стандарті Cryptographic Message Syntax (PKCS#7).
На практиці CAdES зазвичай має форму криптографічний конверт з розширенням .p7m, .p7s або .sig, який містить дані, що підписуються, або посилання на них. Цей формат є універсальним з точки зору типів файлів - він дозволяє підписувати будь-які двійкові дані: текстові документи (DOC/XLS), зображення, PDF-файли, ZIP-архіви і навіть великі масиви даних або виконуваних файлів. Завдяки такій універсальності CAdES іноді використовується для комунікації між ІТ-системами та в бізнес-рішеннях, що вимагають підписання нестандартних файлів.
У випадку CAdES ми можемо мати справу з внутрішнім (об'ємним) підписом - у цьому випадку створюється один файл .p7m, який містить оригінал документа разом з підписом. Такий файл є цілісним і його легко завантажити як єдине ціле, але для його відкриття потрібне спеціальне програмне забезпечення (пересічний користувач не зможе відкрити файл .p7m без спеціальної програми). Крім того, CAdES може діяти як зовнішній підпис - в цьому випадку оригінальний файл залишається незмінним, а файл підпису (наприклад, з розширенням .p7s або .sig) генерується окремо, подібно до XAdES. Обидва методи сумісні з eIDASВибір залежить від ваших потреб. Багато програм для створення підписів (наприклад, Certum) дозволяють вибрати "зовнішній підпис" або "внутрішній підпис" у форматі CAdES.
Переваги формату CAdES
- Будь-який тип файлу - CAdES можна використовувати для підписання практично будь-якого типу електронних даних. Це найкращий вибір, якщо нам потрібно підписати файл, який не може бути легко покритий іншим форматом (наприклад, нестандартний двійковий формат).
- Одне розширення для різних даних - файл підпису .p7m може містити документ будь-якого формату, що полегшує стандартизацію. Незалежно від того, підписуєте ви PDF чи AVI - результатом буде .p7m.
- Компактний підпис - CAdES генерує відносно невеликий обсяг даних. Розмір підпису (незалежно від розміру оригіналу) зазвичай становить кілька кілобайт. Він не займає багато пам'яті та швидко перевіряється завдяки визначеній двійковій структурі підпису.
- Популярність у системах - хоча кінцеві користувачі рідше свідомо обирають CAdES, формат широко використовується всередині додатків і сервісів (наприклад, для підписання пакетів даних, електронних рахунків-фактур, комунікацій між серверами). Його переваги цінують автоматизовані рішення - наприклад, підписання та перевірку великої кількості табличних файлів можна ефективно реалізувати саме в CAdES.
Обмеження формату CAdES
- Вимагає спеціального програмного забезпечення для читання - особа, яка отримує файл .p7m, не зможе переглянути його вміст без використання спеціальної програми для перевірки підпису. Для непідготовленого одержувача це може збити з пантелику - файл з підписом не буде відкриватися як звичайний документ, викликаючи питання "як мені підписати/прочитати це?". Необхідно скористатися інструментом перевірки (наприклад, програмою постачальника підписів).
- Відсутність видимої печатки в документі - підпис CAdES повністю відокремлений від змісту документа і не містить графічного представлення підпису в самому змісті (ви не можете побачити "підпис" на роздруківці або в попередньому перегляді файлу). Якщо вам потрібен візуальний ефект підпису на документі, CAdES цього не забезпечить.
- Труднощі з множинними підписами - у сценарії, коли кілька людей повинні підписати один і той самий документ, внутрішній варіант CAdES генерує явище "матриці". Це означає, що кожен наступний підпис створює новий файл .p7m, який містить попередній підписаний файл всередині - вкладений конверти підписи. Як наслідок, робота з декількома підписами в одному документі стає громіздкою (послідовні шари підписів). Це не є проблемою у форматах XAdES або PAdES, де підписи можна додавати без обертання файлу в додаткові шари.
- Менш популярний серед користувачів - більшість людей асоціюють підписання PDF (PAdES) або, можливо, файлів .xml з підписанням (XAdES). CAdES у форматі .p7s/.p7m менш інтуїтивно зрозумілий для пересічного користувача. Як наслідок, якщо ви надішлете контрагенту підписаний документ у форматі CAdES, він може не знати, як його відкрити або перевірити - іноді необхідна інструкція. Тому CAdES частіше використовується в усталених ділових відносинах або в системах, де сторони знають, як працювати з таким підписом.
Коли використовувати внутрішній підпис, а коли зовнішній?
Вибір між внутрішнім і зовнішнім підписом залежить від контексту використання документа та вимог одержувача. Нижче наведено кілька практичних порад:
- Документи для людей (наприклад, контракти, листи у форматі PDF) - Якщо ви надсилаєте підписаний документ людині, яка має просто прочитати його і переконатися в його автентичності, найкраще підійде внутрішній підпис у форматі PAdES. Одержувач отримує один PDF-файл, який він або вона може легко відкрити, і програма (наприклад, Acrobat Reader) одразу покаже інформацію про дійсність підпису. Це найпростіший спосіб підписати документ у бізнесі та адмініструванні. Зовнішній підпис у цьому випадку міг би лише ускладнити ситуацію (довелося б прикріплювати два файли та пояснювати, як їх перевірити).
- Документи у форматах, відмінних від PDF - Якщо нам потрібно підписати файл, який не є PDF, у нас є вибір між XAdES і CAdES. Тут рішення внутрішнє чи зовнішнє залежить від обставин. Якщо документ має надійти в офіс або систему, яка вимагає певного формату (наприклад, багато платформ електронного уряду приймають підписи XAdES лише у вигляді окремого файлу для XML), то ми використовуємо зовнішній підпис XAdES, якщо це необхідно. З іншого боку, підписуючи, наприклад, файл Word для внутрішнього використання в компанії, можна використовувати внутрішній CAdES - буде створено файл .p7m, що містить документ, який колеги перевірять у своєму програмному забезпеченні. Однак, якщо одержувач такого файлу може мати труднощі з відкриттям .p7m, альтернативою може бути зовнішній підпис (окремий .sig) і залишення оригінального DOCX - але знову ж таки, вам потрібно переконатися, що ці дві частини не розділені.
- Великі файли - коли мова йде про великий документи (посилання) (десятки МБ), часто рекомендується використовувати зовнішній підпис. Чому? Тому що з внутрішнім підписом створюється новий файл, який містить весь оригінал плюс підпис, що подвоює обсяг даних для передачі та зберігання. З іншого боку, зовнішній підпис має крихітний розмір (порядку кількох/десятків кБ) і може передаватися окремо. На практиці постачальники вказують, що зовнішній підпис краще справляється з файлами, розмір яких перевищує ~25 МБ. Для файлів такого розміру внутрішній підпис може бути проблематичним (наприклад, він не впишеться в ліміт вкладень в електронному листі або платформа відмовиться приймати занадто великий файл). Використовуючи зовнішній підпис, ми передаємо великий оригінальний файл без змін, а підпис - окремим невеликим файлом, що іноді є практичним рішенням.
- Формальні та системні вимоги - Завжди корисно перевірити, які формати і типи підписів приймаються одержувачем або системою, до якої ви надсилаєте документ. Деякі установи прямо вказують, що, наприклад, PDF-документи повинні бути підписані за допомогою PAdES, а XML-форми - зовнішнім підписом XAdES (окремий файл) або вимагають певного стандарту (наприклад, ASiC). У таких ситуаціях рішення накладається вимогами заздалегідь. На щастя, більшість програм для електронного підпису дозволяють легко перемикати формат і тип підпису за потреби - просто виберіть відповідні опції перед підписанням.
Підсумовуючи, внутрішній підпис добре працює там, де ми цінуємо зручність і читабельність одного файлу (переважно PDF/PadES для типових документів), тоді як зовнішній підпис незамінний у сценаріях, що вимагають гнучкості - з різними форматами файлів, автоматизованою обробкою даних або дуже великими вкладеннями. Однак, незалежно від обраного методу, обидва типи підпису гарантують однакові рівень безпеки та юридичної чинності, що забезпечується кваліфікованим сертифікатом.
Дуже важливо, щоб одержувач міг перевірити підпис - тому завжди надавайте всі необхідні файли та інструкції при використанні менш очевидних форм (наприклад, .xades або .p7m). Знаючи це, ми можемо свідомо вибрати формат і тип підпису, які найкраще підходять для конкретної ситуації, забезпечуючи як зручність, так і відповідність вимогам.
Кваліфіковані підписи SimplySign та Certum Mini
Якщо у вас виникли запитання, будь ласка, зв'яжіться з нами
Ми відповімо на ваші запитання, підберемо зручний для вас час та консультанта в одному з наших відділень по всій Польщі.
Ви також можете написати нам на електронну пошту [email protected].