[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
SignKeyGen - генерация ключей (сертификатов) и подпись файлов--

Полноразмерные скриншоты


Для работы программы необходим .Net Framework версии не ниже 4.0

Изменения в версии 1.0.8: (04.06.2021)
  • Обновлен алгоритм подписи и список timestamp-серверов на актуальные.
  • Автоматически производится двойная подпись SHA1 и SHA256
  • Обновлен Adler SignKey CA сертификат.
СКАЧАТЬ! 1.0.8

История версий

Изменения в версии 1.0.7b+: (05.02.2017)
  • Добавлена возможность генерации дочернего сертификата на основе своего корневого.
    Если в папке с программой находится свой корневой сертификат RootCA.pfx (можно сгенерировать сразу его в программе → Self-signed + CA), то User сертификат будет генерировать на основе RootCA.pfx. Если на RootCA.pfx нет пароля - все произойдет автоматом. Если есть пароль - будет высвечиваться окошко для ввода пароля. Если отказаться от ввода пароля (нажав "Отмена") то в качестве корневого будет использоваться "Adler SignKey CA" встроенный в программу.
    Под надписью "Пароль" будет отображаться INT либо EXT в зависимости от того какой корневой сертификат будет использоваться для генерации дочернего сертификата

  • Добавлена возможность выбора алгоритма шифрования, длины ключа и срока действия генерируемого сертификата.
    По умолчанию установлены параметры применяемые в предыдущих версиях программы.
При генерации ключей размером более 2048 бит генерация происходит заметно дольше и может показаться, что программа зависла. Это не так и связано в большим объемом генерируемых данных.
"Терпение горько, но его плод сладок" © Жан-Жак Руссо.

Изменения в версии 1.0.6b++: (обновлено 07.11.2016)
  • Добавлена возможность подписания файлов .sys, .cat, .cab, .ocx, .msi, .mxp, .xpi.
Другие изменения в данной версии не производились.
Изменения в версии 1.0.6b:
  • Добавлено автооткрытие Sert.pfx из папки с программой для подписи приложения.
    Если в момент открытия вкладки "Подпись" в папке с программой находится файл Sert.pfx, то он автоматически открывается и им можно произвести подпись программы. Если сертификат запаролен, то необходимо ввести пароль.
  • Добавлена возможность выбора TimeStamp сервера из выпадающего списка. В случае недоступности или ошибки сервера будет выведено сообщение об ошибке.
    Ответ от сервера ожидается в течении 7 секунд.
  • Мелкие "косметические" изменения. (Нажатие Enter в поле с паролем на вкладках "Конвертер" и "Подпись" вызывает нажатие соседней кнопки. Нажатие кнопки Enter в текстовых полях на вкладке "Генератор" вызывает переключение фокуса на следующее поле ввода).

Изменения в версии 1.0.5b:
  • Добавлена функция подписи .exe и .dll файлов.

Изменения в версии 1.0.4b:
  • Добавлена дополнительная генерация .cer файла. Файл (.cer) сохраняется в той же папке с тем же именем, что и основной .pfx файл.
  • Добавлена возможность генерации корневого сертификата центра сертификации (CA).
  • Добавлен Drag-n-drop .pfx файлов на вкладку "Конвертер".
  • Добавлен режим "поверх всех окон" (чекбокс в левом нижнем углу).
  • Мелкие изменения...

Изменения в версии 1.0.3b:
  • Добавлена функция установки сертификата в хранилище при сохранении. ("Self-Signed", т.к. установка "User" не имеет смысла).
  • Добавлен конвертер сертификата из формата .pfx в .crt и .pem

Особенности программы:
  • Режим "User" - генерируется дочерний сертификат на основе сертификата "Adler SignKey CA" (зашит в программу, устанавливается в "доверенные корневые центры сертификации" локального пользователя, с кнопки в программе).
    Если в системе установлен сертификат "Adler SignKey CA", то все сертификаты сгенерированные в режиме "User" будут действительными. Без установленного "Adler SignKey CA" сгенерированный сертификат не будет доверенным даже в случае помещения его в хранилище вручную.
  • Режим "Self-Signed" - генерируется обычный самоподписанный сертификат (выданный самому себе). От других сертификатов не зависит. Становится действительным при добавлении в "доверенные корневые центры сертификации".
  • Генерируемые ключи имею атрибут "IdKPCodeSigning", т.е. пригодны только для подписания программ.
  • При каждом нажатии на "Сохранить" генерируется новый ключ.
  • Другие особенности программы смотрите в истории версий выше.

-Для использования в программе 7z SFX Constructor, сгенерированные файлы ключа необходимо поместить в папку \APPS\Sert\ переименовав в Sert.pfx
Возможно подписывать файлы драйверов по данному мануалу.
Полученный ключ так же возможно использовать для подписи программ вручную, к примеру с помощью консольного приложения FGSignCode от G.D.G. Software.

Пример:

FGSignCode.exe -file:<.exe файл либо .dll> -pfxpath:<файл ключа .pfx> -pfxpwd=<пароль ключа> -tsurl=http://tsa.startssl.com/timestamp

Программа основана на криптографической библиотеке BouncyCastle С#.


Last edited by Adler on 2021-06-04 22:15; edited 70 times in total

[Quote]

    Joker-2013
  • 1039
  • Longevity: 8 years 11 months
  • Posts: 2053
  • REPUTATION:120

    [+] [-]
  • Location: из прошлого
Добавлена возможность генерации сертификата корневого центра сертификации (CA).
Где? как? Не понял...
Хотелось бы добавить возможность подписывания своего кода (программы)
И пункт в контекстном меню
Менеджер готовых подписей и возможность выбора при подписании файлов

[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
Joker-2013, в режиме "Self-Signed" ставишь галочку на "CA" и генерируется сертификат со специальным атрибутом указывающий, что это сертификат CA. Подробностей за него не знаю ah
Тут - http://blog.differentpla.net/blog/2013/03/24/bouncy...ficate-authority можно почитать. Как то особо не вникал.
Единственное заметил, что если им подписать программу, то даже если он доверенный (добавленный в хранилище), то в данных о цифровой подписи пишет, что подпись какая то не правильная. А если на основе его сгенерировать сертификат, то с подписанной им программой все ок.
P.S. В программу зашит именно такой (CA) сертификат.
P.S.S. Я в описании слова местами перепутал, т.к. корневой сертификат, а не цс...

[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
Хотелось бы добавить возможность подписывания своего кода (программы)
За это думал. "Быстрого" решения пока не нашел, а глубоко копать пока нет особо времени..

[Quote]

    SergeyZV
  • 528
  • Longevity: 9 years 2 months
  • Posts: 1259
  • REPUTATION:34

    [+] [-]
Сведения о цифровой подписи
Расширение основных ограничений сертификата не были просмотрены
Есть ещё куда доробатывать. ad

[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
SergeyZV, это вообще что? Не совсем понял о чем речь...
Аааа... Если вы об этом:
То у меня встречный вопрос, а зачем вы программу подписали корневым сертификатом?
Корневой сертификат служит для подтверждения подлинности "дочерних" сертификатов, а не для того, что бы им что то подписывали.
Только что проверил, информация о подписи подписанные self-signed и user сертификатами выглядят вот так:

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


Last edited by Adler on 2016-10-12 09:35; edited 2 times in total

[Quote]

    SergeyZV
  • 528
  • Longevity: 9 years 2 months
  • Posts: 1259
  • REPUTATION:34

    [+] [-]
Когда с сертификатом всё нормально, то должно выглядеть так

тык

[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
SergeyZV, ну так подписывайте self-signed сертификатов и тогда будет так выглядеть или создавайте сами дочерний сертификат на основе CA сертификата :)
Корневым сертификатом софт не подписывают, хотя это технически и возможно ab Корневой сертификат служит для идентификации ЦС, а не для конечного использования...
Вот попробовал подписать софт корневым сертификатом сгенерированный makecert.exe, как и предпологалось - результат такой же:


Last edited by Adler on 2016-10-12 09:51; edited 1 time in total

[Quote]

    SergeyZV
  • 528
  • Longevity: 9 years 2 months
  • Posts: 1259
  • REPUTATION:34

    [+] [-]
ну так подписывайте self-signed сертификатов и тогда будет так выглядеть
Был не прав aa

[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
SergeyZV, бывает ab Не ошибается тот, кто ничего не делает ...

[Quote]

    SergeyZV
  • 528
  • Longevity: 9 years 2 months
  • Posts: 1259
  • REPUTATION:34

    [+] [-]
Adler, Какая команда скрывается под галочкой "установить"?
И может ещё добавить возможность подисать файл?!

[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
SergeyZV, установить - сохранить в "доверенные корневые центры сертификации" локального (т.к. программа не просит прав админа) пользователя.
По поводу подписи отвечал как раз в посте перед вашим утренним постом. Планирую, но сейчас нет достаточного свободного времени, что бы с этим разбираться.
Но вероятно, что это будет не в этой программе, а в отдельной, т.к. эта (генератор ключей) задумывалась как однофайловая мини утилита, которая не хранит нигде никаких настроек и не создает никаких сопутствующих файлов для работы (все что нужно программе, все зашито в неё), что не очень подходит для такой программы как подписывалка.
Однофайловых подписывалок и так хватает, как консольных, так и с GUI, а у меня задумка сделать более расширенный вариант, с менеджером ключей, минимальными настройками и т.д. Но это пока только задумка, так как и половины того, что задумал еще не представляю как это реализовать. Надо think и read ...
Главное, что бы у меня интерес к этому не пропал к тому времени как появится свободное время этим заниматься ah

[Quote]

    SergeyZV
  • 528
  • Longevity: 9 years 2 months
  • Posts: 1259
  • REPUTATION:34

    [+] [-]
установить - сохранить в "доверенные корневые центры сертификации"
Команду в прямом смысле
*.exe -? /? ...

[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
SergeyZV, с командной строкой программа пока не дружит (может и не будет дружить ...) тыц ah
А какой смысл делать добавление сертификата в хранилище через командную строку если выполняется такое же точно действие, как и при двойном клике по .pfx файлу?
P.S. Хотя нет, не такое... пароль не запрашивается, но все равно нужно подтверждать добавление вручную...


Last edited by Adler on 2016-10-12 11:43; edited 2 times in total

[Quote]

    SergeyZV
  • 528
  • Longevity: 9 years 2 months
  • Posts: 1259
  • REPUTATION:34

    [+] [-]
Adler, Мы не видим какие сторонние утилиты вы используете? Добавление сертификата в доверенные у вас происходит с использованием этих утилит? Вот про эту команду разговор.

[Quote]

    Adler
  • 1708
  • Longevity: 8 years 7 months
  • Posts: 1193
  • REPUTATION:65

    [+] [-]
  • Location: Луганск
SergeyZV, а ... Нет.
Программа вообще никакие утилиты не использует ни для чего, все что связано с ключами реализовано средствами языка C# с использованием криптографических библиотек BouncyCastle (вшита в программу) и стандартной системной .net библиотеки System.Security.Cryptography (идет вместе с .Net Framework).

Page 3 of 9


Display posts:    

Current time is: 26-May 14:17

All times are UTC + 3


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum