[Quote]

    Adler
  • 1708
  • Longevity: 3 years 7 months
  • Posts: 905
  • REPUTATION:45

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

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


Для работы программы необходим .Net Framework версии не ниже 4.0
Изменения в версии 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 С#.
Attachments

Версия 1.0.7b+ - седьмая тестовая версия (FW 3.5)

Attachments

Версия 1.0.7b+ - седьмая тестовая версия (FW 4.0)



Last edited by Adler on 2017-02-06 10:12; edited 62 times in total

[Quote]

    Joker-2013
  • 1039
  • Longevity: 3 years 11 months
  • Posts: 2451
  • REPUTATION:120

    [+] [-]
  • Location: из прошлого
Ну и этим...

[Quote]

    Adler
  • 1708
  • Longevity: 3 years 7 months
  • Posts: 905
  • REPUTATION:45

    [+] [-]
  • Location: Луганск
nikzzzz, Joker-2013, ну я имел ввиду конкретно ту, что в конструкторе ah
Joker-2013, получается, что только скрипт конструктора неправильно вычитывает. CheckSumPe правильно вычитывает данные о подписи. Там как раз используется скрипт основанный на функциях Crypt32.dll.
А Sigcheck похоже не показывает издателя, ну по крайней мере я не нашел как.


Last edited by Adler on 2017-02-04 22:10; edited 3 times in total

[Quote]

    Adler
  • 1708
  • Longevity: 3 years 7 months
  • Posts: 905
  • REPUTATION:45

    [+] [-]
  • Location: Луганск
Пока у меня душа не лежит к допиливанию программы, что бы все было "красиво", пусть пока будет так:
Версия 1.0.7 test (alpha):
  • добавлена генерация дочернего сертификата на основе своего корневого.
Если в папке с программой находится свой корневой сертификат RootCA.pfx (можно сгенерировать сразу его в программе → Self-signed + CA), то User сертификат будет генерировать на основе RootCA.pfx. Если на RootCA.pfx нет пароля - все произойдет автоматом. Если есть пароль - будет высвечиваться окошко для ввода пароля. Если отказаться от ввода пароля (нажав "Отмена") то в качестве корневого будет использоваться "Adler SignKey CA" встроенный в программу.
Пока что, что бы не возникало путаницы, при генерации User сертификата будет высвечиваться окно с указанием того, какой сертификат будет использоваться в качестве корневого.
Остальные функции программы идентичны версии 1.0.6b++ и не изменялись.
P.S. Файл удален в связи с выходом обновленной версии!


Last edited by Adler on 2017-02-05 22:40; edited 2 times in total

[Quote]

    Adler
  • 1708
  • Longevity: 3 years 7 months
  • Posts: 905
  • REPUTATION:45

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

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

https://yadi.sk/d/7TtmeNyO3D44Lx


Last edited by Adler on 2017-02-06 09:15; edited 1 time in total

[Quote]

    KaSpieC 666
  • 260
  • Longevity: 4 years 3 months
  • Posts: 685
  • REPUTATION:117

    [+] [-]
  • Location: Одесса
Adler,
Зачем такой маленький шрифт в сообщении?

[Quote]

    Adler
  • 1708
  • Longevity: 3 years 7 months
  • Posts: 905
  • REPUTATION:45

    [+] [-]
  • Location: Луганск
KaSpieC 666, упс ah Вроде читабельно. Немного увеличил.
В первом посте размер крупнее.

Comment from KaSpieC 666


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

[Quote]

    sov44
  • 14940
  • Longevity: 2 years 6 months
  • Posts: 25
  • REPUTATION:2

    [+] [-]
  • Location: г. Киров
Установленный файл сертификата, созданный в SignKeyGen1.0.7b, не видит кнопка sfx от gora.
Собрал файл батником, его кнопка увидела.
"c:\test\makecert.exe" -r -pe -n CN="sov44",C="RU",L="Kirov" -b 03/10/2017 -e 03/11/2023 -eku 1.3.6.1.5.5.7.3.3 -ss my -sr localmachine -sky exchange -sp "Microsoft RSA SChannel Cryptographic Provider"  -a md5 -sy 12 MyCert.cer

[Quote]

    Joker-2013
  • 1039
  • Longevity: 3 years 11 months
  • Posts: 2451
  • REPUTATION:120

    [+] [-]
  • Location: из прошлого
sov44, У горе-кнопки сертификат ищется в хранилище, а не в файле...

[Quote]

    sov44
  • 14940
  • Longevity: 2 years 6 months
  • Posts: 25
  • REPUTATION:2

    [+] [-]
  • Location: г. Киров
Joker-2013, я и не спорю, что ищет в хранилище. Нюанс в другом - один установленный файл видится кнопкой, другой установленный - не видится. Очевидно проблема в свойствах сертификата. Возможно в том, что GUI генерирует сертификат как для конечного субъекта, возможно в чём-то другом.

[Quote]

    Adler
  • 1708
  • Longevity: 3 years 7 months
  • Posts: 905
  • REPUTATION:45

    [+] [-]
  • Location: Луганск
sov44, может кнопка в каком то конкретном хранилище ищет. Попробуте добавить сертификат в хранилище вручную.

[Quote]

    sov44
  • 14940
  • Longevity: 2 years 6 months
  • Posts: 25
  • REPUTATION:2

    [+] [-]
  • Location: г. Киров
Adler, установка проводилась вручную - автоматически выбирать хранилище. Оба сертификата ставятся в промежуточные центры сертификации.

[Quote]

    Adler
  • 1708
  • Longevity: 3 years 7 months
  • Posts: 905
  • REPUTATION:45

    [+] [-]
  • Location: Луганск
sov44, ну тогда не знаю. Думаю, что в кнопке что то намудрено, но в исходниках копаться лень...

[Quote]

    cartmenezz
  • 1384
  • Longevity: 3 years 8 months
  • Posts: 114
  • REPUTATION:0

    [+] [-]
Adler, Здравствуйте aa
Заранее извиняюсь если буду спрашивать глупые вещи, просто перечитал уже пару раз все сообщения в теме, но несовсем врубился.. пытался погуглить, понял что-то, но разве что в общих чертах, а хочется же бысто и по существу все узнать))
если Вас не затруднит, несколько вопросов:
1) Цифровая подпись на файле как-то замедляет его выполнение? она ведь сверяется с какими-то серверами в интернете?
2) Когда она истечет файл по прежнему останется рабочим? просто утратит "доверие"? никаких всплывающих сообщений о истечении сертификата при запуске не будет? что хуже, файл с истекшей подписью или вообще не подписанный?
3) Разработкой ПО не занимаюсь, но бывает делаю что-то для работы или своих нужд, на уровне запакованного батника (или щас вот начал баловаться с pecmd), как-то добавлять "серьезности" своим поделкам цели нет, но вот максимально снизить кол-во ложных реакций антивирусов весьма интересно. Подпись сертификатом (сгенерированным таким способом) мне чем-то поможет? само-собой я уже проверял)) пользуясь конструктором уважаемого Joker-2013 пробовал паковать с подписью и без, а вчера наткнулся на вашу утилиту и тоже уже испытал на файле на основе pecmd.
В обоих случаях на пару реакций меньше (на VirusTotal). Это ведь не совпадение? Ваша утилита для того и нужна? Реакций будет меньше?
4) По вашим сообщениям в теме вродебы понял как пользоваться программой, но вроде бы и не понял)) для генерации сертификата использовал режим "Self-Signed", подписывал с помощью FGSignCode, позже заметил что можно подписать и в самой утилите (поначалу не заметил надписи "перетяните файл для подписи.." и думал такой функции нет), но в обоих случаях в Сведениях о цифровой подписи наблюдаю следующую надпись: "Цепочка сертификатов обработана но обработка прервана на корневом сертификате у которого отсутствует доверие с поставщиком доверия". Как при использовании Self-Signed сертификата добиться надписи "Эта Цифровая подпись действительна" ??? может я что-то упустил.. Неужели только если установить это сертификат в систему? тоесть она будет действительна только на моем ПК?
Надеюсь хоть в двух словах подскажете) Заранее Благодарю)

[Quote]

    Adler
  • 1708
  • Longevity: 3 years 7 months
  • Posts: 905
  • REPUTATION:45

    [+] [-]
  • Location: Луганск
1. Если и замедляет, то это не заметно. Ни с какими сервисами в инете ничего не сверяется. В Винде локальный менеджер сертификатов.
2. Да. Да. Не будет. По идее без разницы.
3. Честно говоря я как то особо не проверял.
4. Программа делает самоподписанные сертификаты, которых по умолчанию естественно нет в хранилище сертификатов Виндовс и к ним нет доверия (если не установлена была галочка "установить" при генерации). Если галочка "установить" была установлена, то там всплывет дополнительное окошко подтверждения добавления сертификата в доверенные.
Если галочка не установлена, то для того, что бы эта подпись была действительна, сертификат надо самостоятельно добавить в хранилище доверенных сертификатов в Виндовс конкретного ПК.
Если честно, то я сам не особо вижу реально практического применения этому для себя, кроме как побаловаться, поподписывать что то. Просто когда я делал софтину меня интересовал больше технический аспект, т.е. то как это работает и работает ли вообще, а не практический, в смысле кому это надо и зачем...
P.S. У меня еще есть заготовка программы типа FGSignCode, которая может делать мультиподпись (sha-1 + sha-256), но с графическим интерфейсом, только вот собственно доделать сам графический интерфейс у меня терпения и не хватило (это просто для меня нудно и не очень интересно) ac Может как нибудь доделаю, а пока я "занят" by by by ab

[Quote]

    cartmenezz
  • 1384
  • Longevity: 3 years 8 months
  • Posts: 114
  • REPUTATION:0

    [+] [-]
Adler, Большое спасибо за ответ
в принципе, теперь все понятно (правда всеравно непонятно почему тогда комп пишет что цифровая подпись верна для прог скачанных с интернета..
просто ради интереса покупался на трение, нашел пару репаков с припиской DC, например скачивал UltraIso от Trovel,
и там все OK, цифровая подпись от какого-то Shenzhen и написано действительно.. понимаю что она наверное не самому себе выдано,
а наверное типа официальная, вот только даже если официальная, откуда она у меня в хранилище взялась? не совсем понятно..
я то точно не никуда не добавлял..))

Page 7 of 8


Display posts:    

Current time is: 27-May 06:52

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