Skip to main content

pycades

Данный проект создан для удобной установки pycades в свой проект, пока только для linux систем

pycades представляет собой расширение для Python3, которое реализует интерфейс, аналогичный CAdESCOM.

Источник расширения

GitHub

pip install pycades

Если не установлены зависимости КриптоПро CSP, то библиотека начинает вести себя непредсказуемо и некоторые методы перестают работать, для лучшей работы желательно установить все зависимости с оф сайта или найти в гите /libs (можно ограничиться КриптоПро CSP, /libs/linux-amd64_deb через install.sh)

Официальная документация

Пример использования

Несколько примеров

больше можно посмотреть в директории с тестами

Загрузка сертификата из фала:

from pycades import pycades


if __name__ == "__main__":
    with open('./certs/Kornevoy-sertifikat-GUTS-2022.CER', "rb") as f:
        cert = pycades.Certificate()
        cert.Import(f.read())
    print(cert.IsValid().Result)

Получение данных сертификата:

from pycades import pycades


def test_get_info_method(cert):
    # Возвращает имя субъекта.
    assert cert.GetInfo(pycades.CAPICOM_CERT_INFO_SUBJECT_SIMPLE_NAME) == 'Минцифры России'
    # Возвращает имя издателя сертификата.
    assert cert.GetInfo(pycades.CAPICOM_CERT_INFO_ISSUER_SIMPLE_NAME) == 'Минцифры России'
    # Возвращает адрес электронной почты субъекта
    assert cert.GetInfo(pycades.CAPICOM_CERT_INFO_SUBJECT_EMAIL_NAME) == 'dit@digital.gov.ru'
    # Возвращает адрес электронной почты издателя сертификата.
    assert cert.GetInfo(pycades.CAPICOM_CERT_INFO_ISSUER_EMAIL_NAME) == 'dit@digital.gov.ru'
    # Возвращает UPN субъекта сертификата
    assert cert.GetInfo(pycades.CAPICOM_CERT_INFO_SUBJECT_UPN) == ''
    # Возвращает UPN издателя сертификата
    assert cert.GetInfo(pycades.CAPICOM_CERT_INFO_ISSUER_UPN) == ''
    # Возвращает DNS-имя субъекта сертификата. .
    assert cert.GetInfo(pycades.CAPICOM_CERT_INFO_SUBJECT_DNS_NAME) == 'Минцифры России'
    # Возвращает DNS-имя издателя сертификата.
    assert cert.GetInfo(pycades.CAPICOM_CERT_INFO_ISSUER_DNS_NAME) == 'Минцифры России'


def test_get_base_info(cert):
    # Дата, с которой сертификат действителен.
    assert cert.ValidFromDate == '08.01.2022 13:32:39'
    # Дата, до которой сертификат действителен
    assert cert.ValidToDate == '08.01.2040 13:32:39'
    # Серийный номер.
    assert cert.SerialNumber == '00951FA3477C61043AADFA858627823442'

    name = (
        'CN=Минцифры России, ИНН ЮЛ=7710474375, ОГРН=1047702026701, O=Минцифры '
        'России, STREET="Пресненская набережная, дом 10, строение 2", L=г. Москва, '
        'S=77 Москва, C=RU, E=dit@digital.gov.ru'
    )
    # Издатель сертификата.
    assert cert.IssuerName == name
    # Имя субъекта.
    assert cert.SubjectName == name
    # Отпечаток.
    assert cert.Thumbprint == '2F0CB09BE3550EF17EC4F29C90ABD18BFCAAD63A'
    # Версия сертификата.
    assert cert.Version == 3

Metadata

Release files for pycades 1.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for pycades 1.1.4
File Interpreter ABI Platform
pycades-1.1.4-py3-none-any.whl Python 3 none any Details

Release files / pycades-1.1.4-py3-none-any.whl

Download URL pycades-1.1.4-py3-none-any.whl
Size 55.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
9ee6cc528b98d846c54bbbfe076bf971d54e3eef9b78d640d0a9d34e3bd6e571
BLAKE2b-256 checksum
How to use checksums
96db72ff568ea952099677d371a4a30d29200a3e40b7905ebd101024539a6753
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.4

Release history Release notifications | RSS feed

This release

1.1.4 This release

1 release file

1.1.3

8 release files

1.1.2

6 release files

1.1.1

6 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page