E-Sign Documents with Python

Введення до цифрового підпису документів

Електронні підписи революціонізували спосіб, яким бізнес та особисті користувачі обробляють документообіг. Закінчилися часи друку, підпису та сканування - тепер ви можете підписувати документи цифрово за допомогою кількох рядків коду Python!

Цей всебічний посібник проведе вас крок за кроком через створення електронних підписів для PDF, Word та Excel документів за допомогою GroupDocs.Signature for Python via .NET. Чи ви створюєте систему управління документами, автоматизуєте бізнес-процеси або створюєте безпечну платформу для підпису, цей посібник має все, що вам потрібно.

Розуміння електронних підписів та їх переваг

Електронний підпис - це не просто цифрове зображення підпису. Це безпечний метод перевірки автентичності документа та ідентичності підписанта. Основні переваги включають:

  • Юридична дійсність: визнана в більшості країн світу
  • Безпека: криптографічно захищена від змін
  • Ефективність: підписуйте документи онлайн миттєво з будь-якого місця
  • Слідкування: детальні аудитні стежки процесів підпису
  • Економія: вилучіть папер, друк та доставку
  • Інтеграція: легко вбудовується в існуючі потоки документів

🛠️ Налаштування середовища Python

Перед тим, як почати підписувати документи, вам потрібно правильно налаштувати середовище Python. Слідуйте цим простим крокам, щоб підготуватися:

  1. Встановити GroupDocs.Signature for Python via .NET
pip install groupdocs-signature-net
  1. Імпортувати необхідні модулі
# Імпортуйте основну бібліотеку GroupDocs.Signature
import groupdocs.signature as gs

# Імпортуйте опції для налаштування параметрів підпису
import groupdocs.signature.options as gso

# Імпортуйте параметри зовнішнього вигляду для настройки вигляду підписів
import groupdocs.signature.options.appearances as appearances

📝 Як підписувати PDF документи з Python

PDF - один із найпоширеніших форматів документів, які вимагають цифрових підписів. Нижче наведено повний приклад, який показує, як додати професійний електронний підпис до ваших PDF файлів з повними можливостями настройки.

# Ця функція демонструє, як додати цифровий підпис до PDF документа
# Підпис включає як цифровий сертифікат, так і візуальні елементи
def sign_pdf_document():
    # Визначте шляхи до файлів
    sample_file_path = "sample.pdf"         # Ваш вихідний PDF документ
    certificate_pfx = "MrSmithSignature.pfx"  # Файл цифрового сертифікату
    image_handwrite = "signature_handwrite.jpg"  # Необов'язкове зображення підпису від руки
    output_file_path = "signed.pdf"         # Куди зберегти підписаний документ

    # Відкрийте документ для підпису
    with gs.Signature(sample_file_path) as signature:
        # Налаштуйте параметри цифрового підпису
        options = gso.DigitalSignOptions(certificate_pfx)

        # Встановіть властивості зовнішнього вигляду
        options.image_file_path = image_handwrite  # Додайте зображення підпису від руки
        options.left = 450                         # X-позиція на сторінці
        options.top = 150                          # Y-позиція на сторінці
        options.page_number = 1                    # Яку сторінку підписати
        options.password = "1234567890"            # Пароль сертифікату

        # Додайте метадані до підпису
        options.appearance = appearances.DigitalSignatureAppearance(
            "John Smith",                          # Ім'я підписанта
            "Title",                               # Посада підписанта
            "jonny@test.com"                       # Електронна пошта підписанта
        )
        options.reason = "Document Approval"       # Чому документ підписується
        options.contact = "JohnSmith"              # Контактна інформація
        options.location = "Office1"               # Де відбулося підписання

        # Застосуйте підпис та збережіть документ
        result = signature.sign(output_file_path, options)

        # Виведіть повідомлення про успіх з двома окремими записами в журнал
        print(f"\nДжерельний документ успішно підписаний.")
        print(f"Загальна кількість застосованих підписів: {len(result.succeeded)}")
        print(f"Файл збережений за адресою {output_file_path}.")

Результат виводу:

Приклад професійного PDF цифрового підпису з перевіркою сертифікату та візуальним елементом підпису від руки

Додавання цифрових підписів до Excel файлів

Excel таблиці часто містять важливі фінансові дані, які вимагають аутентифікації. Ось як безпечно підписати Excel файли за допомогою Python для перевірки їх автентичності та запобігання несанкціонованим змінам.

# Ця функція демонструє, як цифрово підписати електронну таблицю
# Ідеально для фінансових документів, звітів та інших чутливих даних
def sign_excel_document():
    # Визначте шляхи до файлів
    sample_file_path = "sample.xlsx"        # Ваш вихідний Excel документ
    certificate_pfx = "MrSmithSignature.pfx"  # Файл цифрового сертифікату
    output_file_path = "signed.xlsx"        # Куди зберегти підписаний документ

    # Відкрийте Excel документ для підпису
    with gs.Signature(sample_file_path) as signature:
        # Налаштуйте параметри цифрового підпису з сертифікатом
        options = gso.DigitalSignOptions(certificate_pfx)

        # Встановіть позицію підпису в Excel документі
        options.left = 450                  # X-позиція на сторінці
        options.top = 150                   # Y-позиція на сторінці
        options.page_number = 1             # Який аркуш підписати (перший аркуш)
        options.password = "1234567890"     # Пароль сертифікату

        # Додайте інформацію про підписанта до метаданих підпису
        options.appearance = appearances.DigitalSignatureAppearance(
            "John Smith",                   # Ім'я підписанта
            "Title",                        # Посада підписанта
            "jonny@test.com"                # Електронна пошта підписанта
        )

        # Застосуйте підпис та збережіть документ
        result = signature.sign(output_file_path, options)

        # Виведіть повідомлення про успіх з двома окремими записами в журнал
        print(f"\nExcel документ успішно підписаний.")
        print(f"Загальна кількість застосованих підписів: {len(result.succeeded)}")
        print(f"Підписаний Excel файл збережений за адресою {output_file_path}.")

Реалізація штрих-кодних підписів для безпеки документів

Штрих-кодні підписи надають додатковий шар перевірки документів, дозволяючи швидко сканувати та перевіряти. Цей підхід особливо корисний для документів, які потрібно перевіряти в фізичних умовах.

# Ця функція додає підпис з штрих-кодом до документів
# Ідеально для документів інвентаризації, сертифікатів або відстеження документів
def add_barcode_signature():
    # Імпортуйте необхідні бібліотеки
    import groupdocs.signature as gs
    import groupdocs.signature.domain as gsd
    import groupdocs.signature.options as gso

    # Визначте шляхи до файлів
    sample_file_path = "sample.xlsx"        # Ваш вихідний документ
    output_file_path = "barcode_signed.xlsx"  # Куди зберегти підписаний документ

    # Відкрийте документ для підпису
    with gs.Signature(sample_file_path) as signature:
        # Створіть параметри штрих-кодного підпису з текстом для кодування
        options = gso.BarcodeSignOptions("GroupDocs.Signature")

        # Встановіть тип штрих-коду - CODE128 широко використовується та надійний
        options.encode_type = gsd.BarcodeTypes.CODE128

        # Налаштуйте зовнішній вигляд та позицію штрих-коду
        options.left = 50                   # X-позиція на сторінці
        options.top = 150                   # Y-позиція на сторінці
        options.width = 100                 # Ширина штрих-коду
        options.height = 50                 # Висота штрих-коду

        # Застосуйте підпис та збережіть документ
        result = signature.sign(output_file_path, options)

        # Виведіть повідомлення про успіх з двома окремими записами в журнал
        print(f"\nДокумент успішно підписаний штрих-кодом!")
        print(f"Загальна кількість застосованих підписів: {len(result.succeeded)}")
        print(f"Файл збережений за адресою {output_file_path}.")

Результат виводу:

Приклад штрих-кодного підпису для перевірки та валідації документів

Створення підписів QR-кодів для мобільної перевірки

QR-коди ідеально підходять для сценаріїв мобільної перевірки, дозволяючи будь-кому з смартфоном швидко перевірити автентичність документа або отримати доступ до додаткової інформації, пов’язаної з документом.

# Ця функція додає підпис QR-коду до документів
# Ідеально для мобільної перевірки та посилання на онлайн-ресурси
def add_qrcode_signature():
    # Імпортуйте необхідні бібліотеки
    import groupdocs.signature as gs
    import groupdocs.signature.domain as gsd
    import groupdocs.signature.options as gso

    # Визначте шляхи до файлів
    sample_file_path = "sample.pdf"        # Ваш вихідний документ
    output_file_path = "qrcode_signed.pdf"  # Куди зберегти підписаний документ

    # Відкрийте документ для підпису
    with gs.Signature(sample_file_path) as signature:
        # Створіть параметри QR-коду з даними для кодування
        # Це може бути URL перевірки, ідентифікатор документа або інші дані
        options = gso.QrCodeSignOptions("GroupDocs.Signature")

        # Встановіть тип QR-коду - стандартний QR-код найбільш широко підтримується
        options.encode_type = gsd.QrCodeTypes.QR

        # Налаштуйте зовнішній вигляд та позицію QR-коду
        options.left = 50                   # X-позиція на сторінці
        options.top = 150                   # Y-позиція на сторінці
        options.width = 100                 # Ширина QR-коду
        options.height = 100                # Висота QR-коду
        options.rotation_angle = 45         # Необов'язково: оберніть QR-код

        # Застосуйте підпис та збережіть документ
        result = signature.sign(output_file_path, options)

        # Виведіть повідомлення про успіх з двома окремими записами в журнал
        print(f"\nДокумент успішно підписаний QR-кодом!")
        print(f"Загальна кількість застосованих підписів: {len(result.succeeded)}")
        print(f"Файл збережений за адресою {output_file_path}.")

Результат виводу:

Приклад QR-коду для мобільної перевірки та миттєвої валідації документів за допомогою смартфона

Найкращі практики безпеки для електронних підписів

При реалізації електронних підписів у ваших додатках враховуйте ці найкращі практики безпеки:

  1. Управління сертифікатами: зберігайте сертифікати безпечно з належними контролями доступу
  2. Захист паролем: використовуйте сильні паролі для доступу до сертифікатів
  3. Часова мітка: включайте послуги часової мітки, щоб довести, коли документи були підписані
  4. Аудитні стежки: ведіть журнали всіх активностей підпису
  5. Перевірка: реалізуйте регулярні перевірки валідності підписів
  6. Багатофакторна аутентифікація: вимагайте додаткової верифікації перед підписом
  7. Співвідношення: переконайтеся, що ваша реалізація відповідає галузевим нормативним вимогам (ESIGN, eIDAS тощо)

📑 Заключення та наступні кроки

Електронні підписи з Python та GroupDocs.Signature надають:

  • Швидке підписування та обробку документів
  • Високий рівень безпеки перевірки та захисту від змін
  • Крос-платформенну сумісність для всіх операційних систем
  • Підтримку багатьох форматів документів (PDF, Word, Excel та інші)
  • Мобільно-орієнтовані опції перевірки з QR-кодами
  • Потокові процеси документів та схвалення

Почніть трансформувати свої потоки документів сьогодні, реалізуючи безпечні та ефективні електронні підписи з Python!

Почніть з безкоштовною пробною версією

Готовий поринути? Отримайте безкоштовну пробну версію GroupDocs.Signature for Python via .NET:

Додаткові ресурси та документація