Страница 1 из 5

[wlx] Cert View - просмотр X.509 сертификатов, элек.подписей

Добавлено: Вт мар 15, 2022 17:13
Destiny
CertView 2.0

Плагин для просмотра X.509 сертификатов и электронных подписей, сохранённых в файлах:
"cer", "der", "pem", "crt", "p7b", "p7s", "sig", "sgn", а также "exe" и "dll".

Автор: olegvsk
https://olegvsk.synology.me

Скрин
Скачать по прямой ссылке:
https://olegvsk.synology.me/CertView/certview.zip

Это тема для обсуждения работы плагина.

Я НЕ автор! его сайт: https://olegvsk.synology.me/CertView/certview.htm
Его почта: olegvsk@outlook.com

Добавлено: Вт мар 15, 2022 18:34
Avada
Destiny
Всё это прекрасно, но картинки такого размера категорически запрещены правилами форума. Получите замечание и больше так не делайте. В обоих новых темах (этой и по XML Review) картинки заменены ссылками.

Добавлено: Чт мар 17, 2022 12:35
Destiny
Так - касательно предложений по этому продукту:
А почему он не работает на pfx файле? Таковые в куда большем кол-ве встречаются на WIN-платформе,
нежели чем текстовые "cer", "der", "p7b", "crt". Разве что "pem" вполне еще распространено под винду.
Так что поддержка бинарного pfx файла - это наше всё)))
Понятно что скорее всего придется сперва промежуточно конвертировать в том же pem формат.
Но уж лучше так, чем вообще никакой поддержки при просмотре.
И еще - эти текстовые файлы бывают встречаются в опять-таки сложных форматах;)
Т.е. когда в одном файле И собственно сам сертификат описан И приватный ключ!
Причем в разной последовательно: сперва ключ, потом сертификат, а иногда и наоборот.
И хотелось бы, чтобы плагин мог видеть и такие "странные" файлы "pem", "cer", "crt"
Понятно дело, что подэлемент "ключ" в таком файле должен просто игнорироваться, а читаться
именно сертификат, что меж строк -----BEGIN CERTIFICATE----- -----END CERTIFICATE----- расположен.

А еще есть СПИСОК сертификатов в одном файле - тот же широко известный у curl curl-ca-bundle.crt
Хотел написать, что в таком файле-контейнере еще встречаются сертификаты и плаг их не берет (как в описанной ситуации выше), но последняя версия все же взяла. Правда долго открывала. В связи с чем есть предложение - надо показывать диалог "подождите, идет загрузка данных" поверх листера, чтобы можно было понять - что ожидать стоит конца действия, а не то, что сейчас плагин рухнет, листер так же и тотал за ними полетит)))
Ну и элемент прокручивания сертификатов в виде двух кнопок в правом верхнем углу - ну ооочень неюзабельный. Лучше там одну кнопку выставить, по нажатию на которую открывался бы !sizable! модальный диалог выбора из списка, который легко бы пролистывался. Там можно было бы и список сертификатов для выбора в виде таблицы с какими-то важными параметрами выдать. Чтобы переходить/выбирать можно было легче один сертификат из контейнера со многими сертификатами для детального просмотра плагином.
Ну и названия вкладок - для переключения на просмотр сертификата - слишком уж длинные. Они конечно показывают вроде как и всё имя сертификата, но за раз всё равно его не прочтешь - глазами бегаешь. ИМХО лучше уж ширину вкладки какую-то фиксированную задать, а то имя, что не влазит в эти размеры - показать лучше в хорошем, но !НЕ стандартном! тултипе. Где можно и по строкам разбить показ длинного имени, и выделить какие-то части имени/отформатировать более явно что-то.

Добавлено: Чт мар 17, 2022 21:56
olegvsk
Спасибо за предложения.
А почему он не работает на pfx файле
С pfx сложнее, поскольку там предполагается закрытый ключ. Такие файлы всё же больше для специального ПО, чем для простого вьюера в файловом менеджере.
Правда долго открывала
Задержка связана с проверкой сертификатов, во многих случаях при этом идёт обращение к внешним сайтам. Возможно, эту фичу лучше сделать отключаемой или перенести в меню.
Ну и элемент прокручивания сертификатов в виде двух кнопок в правом верхнем углу - ну ооочень неюзабельный
По правой кнопке открывается меню со списком сертификатов.
Ну и названия вкладок
Складываются из имени издателя и имени субъекта (тэг CN, если есть), что наиболее информативно. Не представляю, как название можно ещё формировать, чтобы было наглядно.

Добавлено: Пт мар 18, 2022 10:54
Destiny
olegvsk писал(а):С pfx сложнее, поскольку там предполагается закрытый ключ. Такие файлы всё же больше для специального ПО, чем для простого вьюера в файловом менеджере
Да какое там спецПО, что вы. Приходится запускать установку в систему ключа, смотреть его св-ва, потом удалять, если что не так. Нет такого спецПО. А вот ваш плагин стал бы панацеей. И предположение о наличии ключа - это просто вырождается в факт того, что при просмотре надо будет ввести пароль для просмотра(временной конвертации). А в большинстве наших случаев - так этого ключа там и нет. Публичный есть. Приватного нет. Но собсно, а что мы удивляемся-то? Файлы формата PFX используются для хранения приватных ключей (.key), сертификатов (.crt) и цепочек сертификатов (.ca-bundle) в одном зашифрованном файле. Это необходимо для импорта и экспорта файлов SSL-сертификатов на Windows сервер. И да - под виндой эти файлы наиболее часто встречаются. Имхо - поддержка этого типа контейнеров - очень важная стезя в развитии проекте.
olegvsk писал(а):Задержка связана с проверкой сертификатов, во многих случаях при этом идёт обращение к внешним сайтам
Ну и отлично - только пусть она выполняется, когда ОДИН выбранный сертификат показан в окне плагина. А весь список - просто строится в фоне - БЕЗ параллельной проверки. Она подождет до момента выбора сертификата Х из общего списка.
olegvsk писал(а):По правой кнопке открывается меню со списком сертификатов.
Я про него-то и забыл еще дописать;) А вы на указанном мной файле пытались открыть и воспользоваться этим вариантом "перескока" на нужный файл? На экране 15.6" ))) Попробуйте и поймите, что в этой nonsizable простыне текста, в которой !физически! не умещаются все сертификаты из этого bundle - найти и сделать нужный выбор - импоссибл...
Именно по этому я и описал вполне дружелюбное поведение и вариант реализации сразу в своем посте:
Лучше там одну кнопку выставить, по нажатию на которую открывался бы !sizable! модальный диалог выбора из списка, который легко бы пролистывался. Там можно было бы и список сертификатов для выбора в виде {скроллируемой} таблицы с какими-то важными параметрами выдать. Чтобы переходить/выбирать можно было легче один сертификат из контейнера со многими сертификатами для детального {его просмотра/валидации} плагином.
Как говорится - похоже на текущую реализацию в виде простыни - но более интуитивно и с гарантией ПОЛНОГО отображения всех сертификатов для выбора.
olegvsk писал(а):Складываются из имени издателя и имени субъекта (тэг CN, если есть), что наиболее информативно. Не представляю, как название можно ещё формировать, чтобы было наглядно.
А зачем вы на наглядность съехали? ))) Там речь не об этом шла, а о том, что вывод инфы ВСЕЙ сразу в названии вкладки - дает СЛИШКОМ длинное название, которое не охватить глазом. Становится непривычно выбирать и щелкать по вкладкам. По сути название очень даже информативное. Набор элементов для вывода - супер! Вопрос именно в отображении :wink: Опять-таки - тестируйте плагин на ноуте с 15,6 экраном. И открывая окно листера на 2/3 экрана максимум. Не все привыкают использовать его в полностью развернутом состоянии.
Изображение
Одна вкладка с осьмушечкой на всё окно листера выходит :lol: Через чур уж. Если вы работаете с Эксель - наверное знаете его особенность, что он скроллит содержимое листа только градационно относительно ширины первого видимого столбца слева - нельзя на сантиметр просто сдвинуть ползунок прокрутки, чтобы на чуть-чуть перекрыть видимость этого столбца - нет, произойдет рывок, он весь исчезнет - и следующий за ним будет показан. А если содержимое в столбце очень длинное... то.. Вы просто не сможете его прочитать, т.к. на чуть-чуть, чтобы дочитать - у вас нет возможности сдвинуть ползунок. И вот тут возникает такая же аналогия и предубеждение. А это, имхо, плохо - пользователю привычнее будет перевести свой негативный опыт использования других продуктов на этот - увидев схожесть в исполнении длинных названий и ЗАРАНЕЕ отказаться от него, т.к. вспоминается печальный опыт. Так и тут: увидел длиннющую вкладку и сразу представил - как же это я буду по "соседям" "удобно" переключаться :x ... Ладно, я все же взял себя в руки и опробовал :D
Но, имхо, чуть лучше будет работать функционал: ширина-максимум чем-то ограничена в ...цать пикселей. А весь вывод идет в всплывающих подсказках. Главное - не использовать стандартное их исполнение - TOOLTIPS_CLASS в прямом смысле, а взять что-то похожее на проект https://www.codeproject.com/Articles/36 ... olTip-v2-1
И тогда это длинное в одну строку название вы в таком расширенном тултипе сможете показать еще более информативно, хотя вроде как и спрашивали - а как же ещё более наглядно это можно сделать))) В две строки, в табличном виде - с указанием какие именно теги/поля сертификата вы отображаете...
Конечно, указанный проект - наверняка не подходит для выбора вашего компилятора/языка программирования. Но там общий посыл на нужную кастомизацию показан, имхо, очень хорошо.

Добавлено: Пт мар 18, 2022 18:55
olegvsk
Destiny писал(а): На экране 15.6" ))) Попробуйте
Ну зачем же так себя мучить :) .

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

Добавлено: Пт мар 18, 2022 19:15
Destiny
olegvsk писал(а):Ну зачем же так себя мучить
Правда жизни - выездные сессии работы, больше ноут не потаскаешь...
olegvsk писал(а):Спасибо за столь подробный анализ.
Без проблем - если что - могу еще подумать и что-то добавить;)

Добавлено: Пт мар 18, 2022 19:25
olegvsk
Destiny писал(а):могу еще подумать и что-то добавить
Конечно добавляйте.

Добавлено: Вс мар 20, 2022 21:32
Destiny
olegvsk писал(а):Конечно добавляйте.
Команда Registered CSPs открывает окошко, которое по вертикали имеет какую-то зверскую длину. На 15,6" окно не умещается всё. Приходится подгонять его мышкой. Хотелось бы, чтобы такие размеры учитывались при открытии новых форм/диалогов 8) . Но его хотя бы ещё можно уцепить за верхний край заголовка окна мышкой и сжать/стянуть вниз....
А вот команда Known OIDs открывает ТАКООООООЕ окно по вертикали, что у него ни начала, ни конца нет. Мне мышкой просто физически не за что уцепиться, чтобы изменить размеры этого окна!!!
НО это еще пол беды - измененные размеры окон НЕ запоминаются! Т.е. уже буквально на следующий вызов команды в рамках работы одной сессией с файлом-сертификатом - эти окна открываются опять на "всю иваньковскую" :evil:

И при открытии окна Known OIDs ноут ощутимо закручивает обороты кулера процессора ввысь - этот диалог строится около +-15/20 сек! И опять без какого либо уведомления, что этот процесс может занять ощутимо много времени - мол, просьба подождать...

Добавлено: Вт мар 22, 2022 20:05
olegvsk
Destiny,
Ну, с масштабированием окошек понятно, а вот такая загрузка при построении линейного списка удивляет. Сориентируйте, ваши ЦП, ОЗУ, ОС?

Добавлено: Чт мар 24, 2022 11:08
Destiny
olegvsk писал(а):Сориентируйте, ваши ЦП, ОЗУ, ОС?
ноут.
iCore i3 2310M, 2.10GHz/4GB/Win10 LTSC, 10.0.17763
т.к. это основа при поездках, то ток на таком лёгоньком проверяется все.
Понятно дело что на сервере с ксеонами E5-2680 v4 и 64 гигами оперативы - все летает. Но это не тот случай, где надо хвастаться....

P.S.
Странно, но теперь при проверке - этой загрузки, гудения кулера проца нет. И чутка побыстрее пошло дело. Но время постройки списка все равно около 10сек.
Возможно в тот раз что-то еще в параллели работало, сжирая ресурсы, а я и не заметил.

Добавлено: Вс мар 27, 2022 01:33
olegvsk
Destiny,
Выложил новую версию. Открываются файлы "pfx". Вместо меню вкладок отдельное окно. Окошки ограничил размером листера. Увеличил скорость загрузки файлов. По поводу названия вкладок: думаю, что использование тултипсов не сильно прибавит в юзабилити на маленьком экране, такой экран не удобен сам по себе. Отдельной формы со списком сертификатов для больших пакетов, мне кажется, достаточно.
Так и не понял, в каком месте список OIDов может так нагружать систему. Мне не удалось открывать его дольше полусекунды на Win от XP до 11 (нет, совсем не ксеоны). Могу лишь предположить, что, из-за очевидного недостатка памяти в вашей конфигурации, вы постоянно работаете на свопе со всеми вытекающими. Или особенность LTSC, хотя сомневаюсь.

Добавлено: Вс мар 27, 2022 10:51
Destiny
olegvsk писал(а):Открываются файлы "pfx"
Работает!!!!
olegvsk писал(а):Вместо меню вкладок отдельное окно.
Работает!!! И всё теперь понятно: где искать и куда щелкать и что ожидать)))
Говорил же, что таблицы покруче менюшек будут)))
olegvsk писал(а):Окошки ограничил размером листера.
Работает!!!
olegvsk писал(а):Увеличил скорость загрузки файлов.
Работает!!!
olegvsk писал(а):Так и не понял, в каком месте список OIDов может так нагружать систему. Мне не удалось открывать его дольше полусекунды на Win от XP до 11 (нет, совсем не ксеоны). Могу лишь предположить, что, из-за очевидного недостатка памяти в вашей конфигурации, вы постоянно работаете на свопе со всеми вытекающими.
Да, может и так, но теперь он открывается за 5/7 сек! Т.е. что-то где-то было подправлено, хотя и может подспудно, неожиданно.
olegvsk писал(а):думаю, что использование тултипсов не сильно прибавит в юзабилити на маленьком экране, такой экран не удобен сам по себе.
Как вы понимаете - после часов, недель использования такого экрана - прекрасно понимаешь все его потенциальные плюсы/минусы. И советы по использованию того или иного граф.элемента интерфейса - просто так не вылезают;))) Поэтому нет, был бы такой тултип - было бы намного приятнее! Другое дело, что наличие прекрасного окна-таблички для перескока на нужный сертификат - СЕЙЧАС значительно упрощает это дело и помогает в юзабилити процесса работы с плагином. НО в перспективе на будущее - сам факт наличия в вашей базе кода такого класса как расширенные тултипы - может оказаться весьма даже необходимой вещью в себе ;) В том же XML Review им там тоже, имхо, есть где быть использованными! Так и тут. Короткие вкладки + полноценные тултипы к ним (стнд.класс подсказок - говно, а не реализация от мелкомягкого) - на малом экране выглядят и используются куда как предпочтительней чего-то огромного, вытянутого...

И последний вопрос с большим знаком вопроса - а что же pem файлы, которые содержат кроме сертификата еще и ключ (или оба ключа) не открываются в плагине? ИМХО, как бы реализация чтения текстового содержимого такого файла с игнорированием всего, что НЕ находится между строками/тегами -----BEGIN CERTIFICATE----- / -----END CERTIFICATE----- должно было бы быть куда как проще, чем включение поддержки pfx. Но этого пока еще нет(((( А очень ожидалось бы!

P.S. А для pfx файлов вы в каком-то своем сейфе храните пару "имя файла - пароль" - для последующего открытия БЕЗ опроса пароля? ИМХО как-то небезопасно. Наверное стоит каждый раз спрашивать, ну или сделать опцию настроек - хранить ли в текущей сессии работы(на следующие ... Х.... минут) эту пару.

Добавлено: Вс мар 27, 2022 13:46
olegvsk
Destiny писал(а):pem файлы, которые содержат кроме сертификата еще и ключ (или оба ключа)
На самом деле открываются, если в файле первым идёт сертификат, тогда плагин понимает, что нужно просмотреть весь файл.
Destiny писал(а):для pfx файлов вы в каком-то своем сейфе храните пару "имя файла - пароль"
Хранится в памяти последний введённый пароль до перезапуска TC или до выгрузки плагина. Как это сделано, например, в том же TC для архивов.

Добавлено: Вс мар 27, 2022 13:57
Destiny
olegvsk писал(а):На самом деле открываются, если в файле первым идёт сертификат
Никогда такого не видел. Хотя могу предположить возможность такого.
Но всегда в моих pem идут: ключ - сертификат, или ключ-ключ-сертификт, или ключ-сертификат-ключ.

Добавлено спустя 44 секунды:
olegvsk писал(а):Хранится в памяти последний введённый пароль до перезапуска TC или до выгрузки плагина. Как это сделано, например, в том же TC для архивов.
Ок, логично. Бум знать ;)