Как стать автором
Обновить

Англоязычная кроссплатформенная утилита для просмотра российских квалифицированных сертификатов x509

Время на прочтение8 мин
Количество просмотров9.2K
Всего голосов 24: ↑21 и ↓3+18
Комментарии33

Комментарии 33

Надо ведь было так старательно замазывать названия компании и ФИО Павла Анатольевича и при этом оставить закодированные ОГРН/СНИЛС…

Сертификат содеожит публичные данные. Мы сами подтверждаете это, заявляю что по ОГРН/СНИЛС можно многое получить. Так это было или нет "старательно" замазывать? А где по ОГРН/СНИЛС выдают данные владельца?

Я не понял, что вы написали %)

Мое недопонимание вызвало то, что вы замазали данные о компании и директоре, но оставили ОГРН и проч., по которым эти данные установить — секундное дело.
по которым эти данные установить — секундное дело.

Получить сертификат тоже секундное делою Замазал чтобы не мозолить глаза. Но на будущее учту — спасибо. Будем использовать сертификаты аля Остап Бендер.

Как я понял, тут только парсинг сертификата без построения цепочки и PKI-валидации? Насколько возможно это сделать без привлечения всяких богомерзких КриптоПро и тому подобных прослоек? Хотя бы для сертификатов на токенах с неизвлекаемым ключём, которые сами умеют всё считать.

Цепочку сертификатов вы получаете — нажмите кнопку Дополнительно или правую кнопку мышки, когда курсор на основном окне. Укажите каалог, где сохранить цепочку и все:



Я уже писал, что следующая статья будет о работе с сертификатами на токенах PKCS#11 с российской криптографией. А насчет КриптоПро. Зачем его привлекать, есть OpenSSL c ГОСТ-ами, есть NSS с ГОСТ-ами, и даже GnuPG/SMIME с ГОСТ-ами. Они успешно справляются с проверкой валидности.

Здорово, мне статья понравилась

На счёт крипто-про ремарка: не все токены PKCS#11, например любимый всякими ЭДО Рутокен Лайт с проприетарным контейнером ключа.

Ну если быть совсем точнем, то не знаю кем любимый Рутокен Лайт это не токен PKCS#11, там нет никакой российской криптографии, а значит не может быть неизвлекаемого ключа. По сути обычная флэшка с паролем. Так что это не PKCS#11. А программно-аппаратный токен на нем делается легко.

Рутокен Лайт используется подавляющим большинством поставщиков ЭДО и электронной отчётности совместно с Крипто-Про. Честные токены с неизвлекаемыми ключами используют только банки и в ЕГАИС.

>> А насчет КриптоПро. Зачем его привлекать…

Потому что, установил и работает. А OpenSSL c ГОСТ-ами настроить нетривиально

А что работает, какие функции из КриптоПро вам нужны и вы их нигде кроме криптопро не видите. Насчет настройкт согласен. Но если вы мне скажите ваши ожидания, то я постараюсь на них ответить.

Не утверждаю, что только в Крипто Про реализованы востребованные мной функции, они есть и в других продуктах. В основном я использую формирование/проверку ЭП для документов.
Но в Крипто Про простой установщик, нормальный GUI для настройки и повсеместное распространение.

В Крипто-Про CSP мало чего нормального, особенно не под Windows. Начиная с работы с закрытым ключём в ОЗУ и кончая принудительной данью какой-то конторе для работы с КЭП в России.

кончая принудительной данью какой-то конторе для работы с КЭП в России.

Это вообще тема для отдельного разговора. Удостоверяющие центры платят при аккредитации, а потом узнают, что госаккредитации мало. Есть еще какие конторы, которые требуют мзду за включение в сертификат фактически левых oid-ов, без которых государственные сертификаты не будут принималься на тех или иных порталах. Полный бред.


В Крипто-Про CSP мало чего нормального, особенно не под Windows. Начиная с работы с закрытым ключём в ОЗУ

Несколько лет назад я было поверил еще немного еще чуть-чуть и мы перейдет на нас тоящие токены/смарткарты PKCS#11. Нет остались с CSP.

Переключать язык иконкой в GUI приложении совершенно неправильно. Приложение должно использовать язык, который указан в локали пользователя (LC_MESSAGES для Unix/Linux).


Это стандартный способ, которым пользуются все нормальные мультиязычные приложения.


P.S. Я не смогу ответить раньше, чем через сутки, и скорее всего забуду. Поэтому отвечаю редактируя оригинальный комментарий. Простите, такие уже правила сервиса, у меня нет другого выхода.


saipr Простите, вы совершенно не понимаете, как работает интернационализация и локализация. Ну вот совершенно. Вам стоит реально изучить, как это все устроено, с самых основ. К счастью, это намного проще, чем криптография.


На рабочем столе Linux и Windows иконкой переключается раскладка клавиатуры, и это в данном случае совершенно оправдано, так как в отличие от языка приложений, раскладка переключается много раз за сеанс работы пользователя.


Язык, на котором выводятся сообщения в приложении, и в Windows и в Linux переключается иначе, и вы тут изобрели велосипед с квадратными колесами, и зачем-то его еще защищаете.

Так-то оно так, но если переменная среды не установлена? А если у меня с десяток языков? Но и самое главное — утилита не зависит от прихоти локальной машины, она полностью автономна и в этом ее прелесть.
И еще на рабочем столе (а это тоже приложение) хоть Windows хоть Linux переключать иконкой язык совершенно правильно, а в других приложениях неправильно — это как-то неправильно.

Так-то оно так, но если переменная среды не установлена?

Делать как сейчас. Но при этом если переменная установлена, выбирать локаль окружения.
А если у меня с десяток языков?

Перебирать их «флагом» будет крайне неудобно, поэтому выбранный из их числа будет удобнее, чем совершенно незнакомый.
Но и самое главное — утилита не зависит от прихоти локальной машины, она полностью автономна и в этом ее прелесть.

Что не мешает хотя бы определять локаль стандартным для ОС образом, раз уж бинарники под каждую платформу разные.
И еще на рабочем столе (а это тоже приложение) хоть Windows хоть Linux переключать иконкой язык совершенно правильно, а в других приложениях неправильно — это как-то неправильно.

На рабочем столе такое поведение ожидаемо пользователем. В приложении переключение языка ожидается либо в настройках, либо в выпадающем меню с кодом, тут же флаг максимально неинтуитвен.
Кроме этого в системе у пользователя редко бывает больше 2-3 языков ввода, приложение может (и в некоторых случаях должно) поддерживать десятки локалей, перебор между которыми подобным образом неудобен
Делать как сейчас. Но при этом если переменная установлена, выбирать локаль окружения.

Это из серии если бы да кабы. Мне нужен мой язык, а не язык из локали.


Перебирать их «флагом» будет крайне неудобно, поэтому выбранный из их числа будет удобнее, чем совершенно незнакомый.

Зачем флагом-то! Для этого combox есть.


Что не мешает хотя бы определять локаль стандартным для ОС образом, раз уж бинарники под каждую платформу разные.

Зачем? Мне нужно показать на чувашском языке, а локаль татарская. И что? И как бинарники связаны с локалью?


А вообще-то есходники есть, поправьте как вам удобно.

Я говорю больше о выборе а исходной локали из окружения. Так, чтобы пользователю с татарской локалью, желающему показать данные на чувашском, исходными языком был бы не русский, английский, который он может не знать или китайский, который он наверняка не знает.
С возможностью изменения в процессе пользования, естественно

Я говорю больше о выборе а исходной локали из окружения.

Выбирайте, ваше право.

Начнем с того, что сейчас де-факто стандарт когда мультиязычное приложение по-умолчанию использует локаль системы (или английскую, если системная локаль приложением не поддерживается, либо какую-то еще локаль, которую приложение считает близкой к нужной — например вместо неподдерживаемого белорусского языка использовать русский, вместо британского английского американский и т.п.). И обычно это отдельный пункт в выборе локали (т.е. например в двуязычной программе будет выбор из трех языков — «Русский», «Английский», «Использовать язык системы»).

Соответственно вы просто прете против устоявшегося пользовательского опыта и сложившихся практик. Я уверен, что есть ситуации когда это может быть оправданно, но это не ваш случай. Все же если вы позиционируете программу как для людей, а не только для себя, то и делать надо так, как привычно людям, а не как вам удобнее.

К тому же все современные системы (Win, Linux, Mac, Android, etc.) предоставляют API для получения текущей локали, а так же других региональных настроек. Например формата даты, времени, десятичного разделителя, первого дня недели и т.п. которые программа тоже должна соблюдать. Опять же они не обязанны совпадать с таковыми «по-умолчанию» для данной локали, например на том же английском может быть минимум 4 разных варианта даты — DD.MM.YYYY, MM-DD-YYYY, DD-MM-YYYY, DD/MM/YYYY.
Соответственно вы просто прете против устоявшегося пользовательского опыта и сложившихся практик.

Я не пру! Боже упаси! Но у меня другой опыт и что мне делать? Ну поправьте как вам удобно. Это же инструмент.
А дата чем не угодила, она же из одного из ваших вариантов.


И обычно это отдельный пункт в выборе локали (т.е. например в двуязычной программе будет выбор из трех языков — «Русский», «Английский», «Использовать язык системы»).

Вы это хотите:


А дата чем не угодила, она же из одного из ваших вариантов.

Я имею ввиду, что приложению хорошо, по возможности, использовать именно тот вариант, который настроен в текущих настройках локали (в системе). Это лишь пример что на условно «английской» локали могут быть разные настройки локали.

Вы это хотите:

Да, во многих программах именно так и делают и мне кажется это правильно.

Хорошо, договорились. Буду добавлять чувашский язык — подправлю.

Ещё бы исходники были на гитхабе/битбакете/гитлабе. А то в архиве… как-то несерьёзно в 21 веке...

Да, насчет гитхаба на правы. Руки дайдут — сделаю.

Прошу прощения за возможно дурацкий вопрос, но сертификаты в контейнерах Crypto Pro оно видеть будет? Там вроде не совсем стандартный контейнер… И By the way — утилиты командной строки для работы с ними никто посоветовать не может? очень хочется срок годности в zabbix мониторить…

Сертификат, как и паспорт, обновить нельзя. Он протух. Единственный способ прлучить новый! Да, только напоминая о приближении судного дня! Это можно автоматизировать, я имею ввиду рассылку.

Важнее то, что все больше граждан западного мира становятся гражданами Российской Федерации

Вот оно как, Михалыч.

А то как!

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории