Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Добрый день! Возник вопрос: какие проверки выполняются в методе Certificate::IsValid()? certificate_status = certificate.IsValid() certificate_status.Result Result возвращает только True|False. Соответствуют ли проверки этому флагу CAPICOM_CHECK_ONLINE_ALL, который используется по-умолчанию в capicom? https://docs.microsoft.c...tificatestatus-checkflagИнтересует информация по Linux версии. Проверяется ли валидность по дате выпуска/истечения?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Автор: Ситдиков Денис  Автор: nomhoi  Еще было бы неплохо настроить в Dockerfile установку сертификатов с приватными ключами на контейнере. Чтобы контейнер с ключами сохранился в отдельном томе. Мне пока не понятно, как это сделать. Вариант добавить папки с ключами и хранилищами в докер вам не подойдет? Код:docker run -v `pwd`/code:/code -v /var/opt/cprocsp/keys/$USER:/var/opt/cprocsp/keys/root -v /var/opt/cprocsp/users/$USER/stores:/var/opt/cprocsp/users/root/stores -it pycades python3 sample_sign_verify.py
Спасибо, попробую.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Автор: mstdoc  Автор: Ситдиков Денис  Если вы пользуетесь докером из https://github.com/nomhoi/pycades_build , то там не установлены системные журналы. После доустановки необходимых пакетов и выполнения инструкции по включению логов дебаговый вывод там работает. Готового рецепта в общем случае нет, из syslog в файл вывод не перенаправляется. Пользуемся своим, но, насколько я понимаю, проблема не в конкретном билде. У докера в принципе были и есть проблемы с системными журналами. Они заводятся, но весьма костыльными методами. Нужно настраивать: https://docs.docker.com/...ntainers/logging/syslog/По-умолчанию работает драйвер логгирования json-file.
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 02.01.2021(UTC) Сообщений: 2
Сказал(а) «Спасибо»: 1 раз
|
Автор: Санчир Момолдаев  Автор: Clutcher  Добрый день, я бы хотел создать сайт на django для учёбы, чтобы там была возможность войти по ЭЦП и организовать подписание документов. Возможно ли реализовать это при помощи данного расширения? Или есть готовые решения? Добрый день. Именно на python примера нет. Общая мысль: у клиента должна подписываться некоторая уникальная строка которая приходит с сервера. На сервере проверяется подпись и сравниваются подписанные данные. Front: html + js (cades plugin) Backend: python + pycades Возможно ли реализовать это на windows? И есть ли какая-нибудь документация для windows?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 01.03.2017(UTC) Сообщений: 70  Откуда: Москва Поблагодарили: 13 раз в 12 постах
|
Автор: Clutcher  Автор: Санчир Момолдаев  Автор: Clutcher  Добрый день, я бы хотел создать сайт на django для учёбы, чтобы там была возможность войти по ЭЦП и организовать подписание документов. Возможно ли реализовать это при помощи данного расширения? Или есть готовые решения? Добрый день. Именно на python примера нет. Общая мысль: у клиента должна подписываться некоторая уникальная строка которая приходит с сервера. На сервере проверяется подпись и сравниваются подписанные данные. Front: html + js (cades plugin) Backend: python + pycades Возможно ли реализовать это на windows? И есть ли какая-нибудь документация для windows? На windows расширение не поддерживается и в ближайшее время поддержка не планируется.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Автор: nomhoi  Добрый день! Возник вопрос: какие проверки выполняются в методе Certificate::IsValid()? certificate_status = certificate.IsValid() certificate_status.Result Result возвращает только True|False. Соответствуют ли проверки этому флагу CAPICOM_CHECK_ONLINE_ALL, который используется по-умолчанию в capicom? https://docs.microsoft.c...tificatestatus-checkflagИнтересует информация по Linux версии. Проверяется ли валидность по дате выпуска/истечения? Проверяю на сертификатах выданных для входа на тестовые серверы ЕИС. На просрочнном сертификате выдает Result=False, а действующем Result=True. У обоих сертификатов тот-же самый ЦА. Как видим проверка по датам истечения выполняется. Ваш процесс валидации соответствует, например, этому процессу? https://docs.oracle.com/...20-4811/gdzea/index.html
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 01.03.2017(UTC) Сообщений: 70  Откуда: Москва Поблагодарили: 13 раз в 12 постах
|
Автор: nomhoi  Автор: nomhoi  Добрый день! Возник вопрос: какие проверки выполняются в методе Certificate::IsValid()? certificate_status = certificate.IsValid() certificate_status.Result Result возвращает только True|False. Соответствуют ли проверки этому флагу CAPICOM_CHECK_ONLINE_ALL, который используется по-умолчанию в capicom? https://docs.microsoft.c...tificatestatus-checkflagИнтересует информация по Linux версии. Проверяется ли валидность по дате выпуска/истечения? Проверяю на сертификатах выданных для входа на тестовые серверы ЕИС. На просрочнном сертификате выдает Result=False, а действующем Result=True. У обоих сертификатов тот-же самый ЦА. Как видим проверка по датам истечения выполняется. Ваш процесс валидации соответствует, например, этому процессу? https://docs.oracle.com/...20-4811/gdzea/index.html Добрый день! Для проверки статуса сертификата используется построение цепочки при помощи функции CryptoAPI CertGetCertificateChain с флагами CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT | CERT_CHAIN_DISABLE_AUTH_ROOT_AUTO_UPDATE. Для более подробной информации нужно ознакомиться с документацией на эту функцию. Как она соотносится с флагами CertificateStatus.CheckFlag, не подскажу.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Автор: Ситдиков Денис  Добрый день! Для проверки статуса сертификата используется построение цепочки при помощи функции CryptoAPI CertGetCertificateChain Это получается pycades при выполнении метода IsValid() обращается к вашему Windows серверу, где и выполняется эта функция? Цитата: с флагами CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT 0x40000000 Revocation checking is done on all certificates in all of the chains except the root certificate. Т.е. выполняется проверка - не отозваны ли сертификаты по всей цепочке, кроме корневого. Цитата:| CERT_CHAIN_DISABLE_AUTH_ROOT_AUTO_UPDATE. CERT_CHAIN_DISABLE_AUTH_ROOT_AUTO_UPDATE 0x00000100 Setting this flag inhibits the auto update of third-party roots from the Windows Update Web Server. И запрещается автоматическая установка третьесторонних корневых сертификатов из Windows Update Web Server. Так понимаю, в России один корневой центр ГУЦ, и другие ЦА нам не нужны. Получается, что с помощью этой функции IsValid() мы проверяем всю цепочку сертфикатов: - по датам выдачи и истечения сертификатов; - не отозваны ли сертификаты; Правильно? Т.е. результата выполнения этой функции достаточно, чтобы считать проверяемый сертификат валидным, и нам больше не нужно как-то дополнительно проверять сертификат? Отредактировано пользователем 25 января 2021 г. 13:28:12(UTC)
| Причина: Не указана
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 01.03.2017(UTC) Сообщений: 70  Откуда: Москва Поблагодарили: 13 раз в 12 постах
|
Автор: nomhoi  Автор: Ситдиков Денис  Добрый день! Для проверки статуса сертификата используется построение цепочки при помощи функции CryptoAPI CertGetCertificateChain Это получается pycades при выполнении метода IsValid() обращается к вашему Windows серверу, где и выполняется эта функция? К windows ничего не обращается, интерфейс CryptoAPI портирован на unix. Цитата:Получается, что с помощью этой функции IsValid() мы проверяем всю цепочку сертфикатов: - по датам выдачи и истечения сертификатов; - не отозваны ли сертификаты; Правильно?
Т.е. результата выполнения этой функции достаточно, чтобы считать проверяемый сертификат валидным, и нам больше не нужно как-то дополнительно проверять сертификат? Да, верно.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Автор: Ситдиков Денис  Автор: nomhoi  Автор: Ситдиков Денис  Добрый день! Для проверки статуса сертификата используется построение цепочки при помощи функции CryptoAPI CertGetCertificateChain Это получается pycades при выполнении метода IsValid() обращается к вашему Windows серверу, где и выполняется эта функция? К windows ничего не обращается, интерфейс CryptoAPI портирован на unix. Цитата:Получается, что с помощью этой функции IsValid() мы проверяем всю цепочку сертфикатов: - по датам выдачи и истечения сертификатов; - не отозваны ли сертификаты; Правильно?
Т.е. результата выполнения этой функции достаточно, чтобы считать проверяемый сертификат валидным, и нам больше не нужно как-то дополнительно проверять сертификат? Да, верно. Спасибо, понятно. А процесс проверки отозванных сертификатов соответствует этому описанию или есть отличия? https://docs.microsoft.c....10)?redirectedfrom=MSDN
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Пробую установить сертфикат аккредитованного УЦ в хранилище root. Код:import pycades
cert_in_base64 = "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"
cert = pycades.Certificate()
cert.Import(cert_in_base64)
store = pycades.Store()
# store.Open(pycades.CADESCOM_CURRENT_USER_STORE, pycades.CAPICOM_CA_STORE,
store.Open(pycades.CADESCOM_CURRENT_USER_STORE, pycades.CAPICOM_ROOT_STORE,
pycades.CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED)
store.Add(cert)
Появляется запрос: Код:CPCSP: Warning: installing a root certificate with an unconfirmed thumbprint is a security risk. Do you want to install this certificate?
Subject: ООО "Эдисофт"
Thumbprint (sha1): 004901F6BCFBE53C1DB0FDA63775310CBB7FDAF1
(o)OK, (c)Cancel
o
Ввожу о, проверяю: Код:/opt/cprocsp/bin/amd64/certmgr -list -store root
Сертификат в хранилище не появился. Почему? И как избавиться от запроса "(o)OK, (c)Cancel"? Пробую pycades.CAPICOM_CA_STORE, получаю исключение: Код:Traceback (most recent call last):
File "sample_cacerts.py", line 13, in <module>
store.Add(cert)
Exception: The parameter is incorrect. (0x80070057)
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Цитата:Сертификат в хранилище не появился. Почему?
Забыл Close() использовать, работает. Как избавиться от запроса "(o)OK, (c)Cancel"?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 30.06.2016(UTC) Сообщений: 2,393   Сказал «Спасибо»: 39 раз Поблагодарили: 542 раз в 514 постах
|
Автор: nomhoi  Цитата:Сертификат в хранилище не появился. Почему?
Забыл Close() использовать, работает. Как избавиться от запроса "(o)OK, (c)Cancel"? Здравствуйте. При установке в хранилище root для конкретного пользователя такой запрос будет всегда появляться. Без появления запроса можно добавить корневой сертификат только в хранилище root компьютера (CADESCOM_LOCAL_MACHINE_STORE). Для этого нужны права суперпользователя root. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 29.10.2020(UTC) Сообщений: 56  Сказал(а) «Спасибо»: 10 раз
|
Цитата:При установке в хранилище root для конкретного пользователя такой запрос будет всегда появляться.
Без появления запроса можно добавить корневой сертификат только в хранилище root компьютера (CADESCOM_LOCAL_MACHINE_STORE).
Для этого нужны права суперпользователя root. Спасибо. Пробую CADESCOM_LOCAL_MACHINE_STORE. Получаю исключение: Цитата:Traceback (most recent call last): File "sample_cacerts.py", line 13, in <module> store.Add(cert) Exception: Internal error. (0x80070005) Выполняю в докер контейнере, т.е. под рутом.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 03.12.2018(UTC) Сообщений: 633  Сказал(а) «Спасибо»: 59 раз Поблагодарили: 123 раз в 121 постах
|
Автор: nomhoi  Цитата:При установке в хранилище root для конкретного пользователя такой запрос будет всегда появляться.
Без появления запроса можно добавить корневой сертификат только в хранилище root компьютера (CADESCOM_LOCAL_MACHINE_STORE).
Для этого нужны права суперпользователя root. Спасибо. Пробую CADESCOM_LOCAL_MACHINE_STORE. Получаю исключение: Цитата:Traceback (most recent call last): File "sample_cacerts.py", line 13, in <module> store.Add(cert) Exception: Internal error. (0x80070005) Выполняю в докер контейнере, т.е. под рутом. Добрый день! в статьеесть такой текст Цитата:Метод Add поддерживается для хранилища Root раздела CAPICOM_CURRENT_USER_STORE, а также для хранилища типа CADESCOM_MEMORY_STORE. если вам нужно устанавливать сертификаты используйте консольную утилиту: /opt/cprocsp/bin/amd64/certmgr -inst -store mroot -file root.crt |
|
 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
|
nomhoi оставлено 09.03.2021(UTC)
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 29.04.2019(UTC) Сообщений: 5  Откуда: St. Petersburg Сказал(а) «Спасибо»: 2 раз
|
Подскажите, пытаюсь собрать из пакета pyCades, возникают ошибки. Ubuntu 20.10 Криптопро 5  Snimok ehkrana 2021-03-01 v 13.47.06.png (730kb) загружен 8 раз(а)."Your application will require at least CryptoPro CSP 4.0 R3... Криптопро 5 не поддерживается? полный лог  com.log (23kb) загружен 7 раз(а).Отредактировано пользователем 1 марта 2021 г. 14:01:00(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 03.12.2018(UTC) Сообщений: 633  Сказал(а) «Спасибо»: 59 раз Поблагодарили: 123 раз в 121 постах
|
Автор: All3s  Подскажите, пытаюсь собрать из пакета pyCades, возникают ошибки. Ubuntu 20.10 Криптопро 5  Snimok ehkrana 2021-03-01 v 13.47.06.png (730kb) загружен 8 раз(а)."Your application will require at least CryptoPro CSP 4.0 R3... Криптопро 5 не поддерживается? полный лог  com.log (23kb) загружен 7 раз(а). Добрый день! воспроизвели. ожидайте внутренний ориентир запроса CADES-2135 Отредактировано пользователем 2 марта 2021 г. 9:29:39(UTC)
| Причина: Не указана |
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 03.12.2018(UTC) Сообщений: 633  Сказал(а) «Спасибо»: 59 раз Поблагодарили: 123 раз в 121 постах
|
Автор: All3s  Подскажите, пытаюсь собрать из пакета pyCades, возникают ошибки. Ubuntu 20.10 Криптопро 5  Snimok ehkrana 2021-03-01 v 13.47.06.png (730kb) загружен 8 раз(а)."Your application will require at least CryptoPro CSP 4.0 R3... Криптопро 5 не поддерживается? полный лог  com.log (23kb) загружен 7 раз(а). спасибо за обратную связь, поправили. скачайте заново архив pycades.zip и попробуйте снова |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 29.04.2019(UTC) Сообщений: 5  Откуда: St. Petersburg Сказал(а) «Спасибо»: 2 раз
|
А есть возможность поставить на macOS библиотеку? Разрабатывать апи было бы удобнее)
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 03.12.2018(UTC) Сообщений: 633  Сказал(а) «Спасибо»: 59 раз Поблагодарили: 123 раз в 121 постах
|
Автор: All3s  А есть возможность поставить на macOS библиотеку? Разрабатывать апи было бы удобнее) обсуждалось тут |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close