|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - Крипто про он же csptest.exe |
|
Любой язык - Крипто про он же csptest.exe
|
Новый участник Сообщения: 46 |
Здравствуйте! Уважаемые умы!
У меня по работе очень много разных эцп, от разных УЦ. Соответственно каждый УЦ при формировании ключа, обзывает его по своему, а зачастую это выглядит вот так "iojng-er4gedfgv-454g-45g45g" и т.д. Ну в общем все ключи называются по разному, бухгалтера несчастные по пол часа ищут нужное ЭЦП для работы с компанией по отчетности. Смысл все темы таков, хочу взять все ключи на флешке (их порядка 1500) и через скрипт каждую подпись переименовать по человечески по образцу (НО информацию о ключе нужно брать из открытого ключа "Сертификата" т.к. актуальная и полная информация только там) образец "Ромашка, ООО от 13.01.2019 СКБ Контур" есть ли такая возможность? |
|
Отправлено: 11:52, 02-07-2019 |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать Цитата Ageron:
\\.\FAT12_F\d31d043b-6368-411b-91c2-9d479d67e9b1 \\.\FAT12_F\ea67cde7-2a3e-4f24-afe4-5553b6290b13 \\.\FAT12_F\82176ef9-076e-4661-bf70-4f035307ea54 \\.\FAT12_F\73a78cad-2b53-47df-bc9a-c12959ee5ad5 \\.\FAT12_F\d232b854-0356-4cc4-b51f-9b5eda1edf6a \\.\FAT12_F\76a5248e-6d98-4400-a7c4-766d7013c1fd \\.\FAT12_F\83dce872-d49f-45d6-8761-9be05d915fe5 \\.\FAT12_F\53dfc883-8f5d-4cef-bce4-4ed0737fcf40 \\.\FAT12_F\77456a81-4b90-46b5-b276-147a4507d8a7 \\.\FAT12_F\62ed7b12-33d6-42b6-8774-ecac899a06ba \\.\FAT12_F\e2a52506-f46a-449c-8e04-7a10e6d4e6aa \\.\FAT12_F\cef3154b-5890-4614-8932-a2c73ea845bc \\.\FAT12_F\370415f5-9085-4582-b57c-bf746947a814 \\.\FAT12_F\86ba2ee2-c1ab-4e3a-b750-94cd57b6f1d5 \\.\FAT12_F\99296548-3222-4f15-ada7-79d6bf8283ad |
|
Отправлено: 12:18, 03-07-2019 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать С форума Крипто Про подсказали команду просмотра данных ключа
certmgr -list -cont "cont_name" В командной строке вся нужна инфа есть, как то автоматически ее можно выбрать из нужных полей? каждая инфа обозначена "О=***", "CN=****", "Not valid before : 24/07/2018 13:43:01 UTC" их можно (эти 3 пункта) вывести в файл в формате "Исходное название ключа = "Значение CN=****" "Значение О=****" "Значение Not valid before :24.07.2018" И после подставить в команду csptest.exe -keycopy -src "\\.\FAT12_F\1f4caf5dcd5746218c2d13d961cc323d" -dest "\\.\FAT12_G\"То что после = из файла?" -pindest="" |
Отправлено: 12:55, 03-07-2019 | #12 |
Crazy Сообщения: 1231
|
Профиль | Отправить PM | Цитировать Цитата ownsmir:
Пароль убрать так: #requires -v 5.0 $arr = dir *.key $arr|%{ #"Введите пароль ключа $($_.fullname)" #$pass = read-host -assec $cert = get-pfxcertificate $_.fullname #-pass $pass $hash = ($cert.subject -split ',')|convertfrom-stringdata $name = $hash.cn ren $_.fullname $($name+$cert.serialnumber+$_.extension) -whatif } Цитата ownsmir:
![]() Цитата ownsmir:
Цитата YuS_2:
|
||||
------- Отправлено: 12:57, 03-07-2019 | #13 |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать Цитата YuS_2:
|
|
Отправлено: 13:03, 03-07-2019 | #14 |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать С форума Крипто Про подсказали команду просмотра данных ключа
certmgr -list -cont "cont_name" В командной строке вся нужна инфа есть, как то автоматически ее можно выбрать из нужных полей? каждая инфа обозначена "О=***", "CN=****", "Not valid before : 24/07/2018 13:43:01 UTC" их можно (эти 3 пункта) вывести в файл в формате "Исходное название ключа = "Значение CN=****" "Значение О=****" "Значение Not valid before :24.07.2018" И после подставить в команду csptest.exe -keycopy -src "\\.\FAT12_F\1f4caf5dcd5746218c2d13d961cc323d" -dest "\\.\FAT12_G\"То что после = из файла?" -pindest="" Или без вывода в файл из предыдущей команды можно эти данные отфильтроватьи подставить? Цитата YuS_2:
PS C:\Windows\system32> #requires -v 5.0 $arr = dir D:\2018-05-.000\*.key $arr|%{ #"Введите пароль ключа $($_.fullname)" #$pass = read-host -assec $cert = get-pfxcertificate $_.fullname #-pass $pass $hash = ($cert.subject -split ',')|convertfrom-stringdata $name = $hash.cn ren $_.fullname $($name+$cert.serialnumber+$_.extension) -whatif } Введите пароль: get-pfxcertificate : Требуемый объект не найден. строка:6 знак:10 + $cert = get-pfxcertificate $_.fullname #-pass $pass + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: ( ![]() + FullyQualifiedErrorId : GetPfxCertificateUnknownCryptoError,Microsoft.PowerShell.Commands.GetPfxCertificateCommand WhatIf: Выполнение операции "Переименование файла" над целевым объектом "Элемент: D:\2018-05-.000\header.key Назначение: D:\2018-05-.000\.key". Введите пароль: get-pfxcertificate : Требуемый объект не найден. строка:6 знак:10 + $cert = get-pfxcertificate $_.fullname #-pass $pass + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: ( ![]() + FullyQualifiedErrorId : GetPfxCertificateUnknownCryptoError,Microsoft.PowerShell.Commands.GetPfxCertificateCommand WhatIf: Выполнение операции "Переименование файла" над целевым объектом "Элемент: D:\2018-05-.000\masks.key Назначение: D:\2018-05-.000\.key". Введите пароль: get-pfxcertificate : Требуемый объект не найден. строка:6 знак:10 + $cert = get-pfxcertificate $_.fullname #-pass $pass + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: ( ![]() + FullyQualifiedErrorId : GetPfxCertificateUnknownCryptoError,Microsoft.PowerShell.Commands.GetPfxCertificateCommand WhatIf: Выполнение операции "Переименование файла" над целевым объектом "Элемент: D:\2018-05-.000\masks2.key Назначение: D:\2018-05-.000\.key". Введите пароль: get-pfxcertificate : Требуемый объект не найден. строка:6 знак:10 + $cert = get-pfxcertificate $_.fullname #-pass $pass + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: ( ![]() + FullyQualifiedErrorId : GetPfxCertificateUnknownCryptoError,Microsoft.PowerShell.Commands.GetPfxCertificateCommand WhatIf: Выполнение операции "Переименование файла" над целевым объектом "Элемент: D:\2018-05-.000\name.key Назначение: D:\2018-05-.000\.key". Введите пароль: get-pfxcertificate : Требуемый объект не найден. строка:6 знак:10 + $cert = get-pfxcertificate $_.fullname #-pass $pass + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: ( ![]() + FullyQualifiedErrorId : GetPfxCertificateUnknownCryptoError,Microsoft.PowerShell.Commands.GetPfxCertificateCommand WhatIf: Выполнение операции "Переименование файла" над целевым объектом "Элемент: D:\2018-05-.000\primary.key Назначение: D:\2018-05-.000\.key". Введите пароль: get-pfxcertificate : Требуемый объект не найден. строка:6 знак:10 + $cert = get-pfxcertificate $_.fullname #-pass $pass + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: ( ![]() + FullyQualifiedErrorId : GetPfxCertificateUnknownCryptoError,Microsoft.PowerShell.Commands.GetPfxCertificateCommand WhatIf: Выполнение операции "Переименование файла" над целевым объектом "Элемент: D:\2018-05-.000\primary2.key Назначение: D:\2018-05-.000\.key". |
|
Отправлено: 13:38, 03-07-2019 | #15 |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать Задача изменилась:
1. командой certmgr -list -cont "\\.\FAT12_F\*****" выводится информация такого вида: Certmgr 1.1 (c) "Crypto-Pro", 2007-2018. program for managing certificates, CRLs and stores ============================================================================= 1------- Issuer : E=ca@skbkontur.ru, ОГРН=1026605606620, ИНН=006663003127, C=RU, S=66 Свердловская область, L=Екатеринбург, STREET=Пр. Космонавтов д. 56, OU=Удостоверяющий центр, O="АО ""ПФ ""СКБ КОНТУР""", CN="АО ""ПФ ""СКБ КОНТУР""" Subject : CN="Название компании""", SN=Фамилия, G=Имя Отчество, C=RU, S=77 г. Москва, L=Москва, STREET="Адрес", O="Название компании""", T=Генеральный Директор, ОГРН=**********, СНИЛС=**********, ИНН=**********, E=почта, OID********************=********-********-********, РНС ФСС=******** SHA1 Hash : *************************************** SubjKeyID : *************************************** Signature Algorithm : ГОСТ Р 34.11/34.10-2001 PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits) Not valid before : 24/07/2018 13:43:01 UTC Not valid after : 24/07/2019 13:52:01 UTC PrivateKey Link : Certificate from container. No link to key CA cert URL : http://cdp.skbkontur.ru/certificates/kontur-q1-2018.crt CA cert URL : http://cdp2.skbkontur.ru/certificate...ur-q1-2018.crt CDP : http://cdp.skbkontur.ru/cdp/kontur-q1-2018.crl CDP : http://cdp2.skbkontur.ru/cdp/kontur-q1-2018.crl Extended Key Usage : ********************************* *************************************** *************************************** *************************************** *************************************** *************************************** *************************************** ============================================================================= [ErrorCode: 0x00000000] Звездочкой * закрыл конфиденциальную информацию Нужно записать в переменную из вывода верхней команды данные: Subject : CN=Название компании Not valid before : 24/07/2018 Issuer : CN=СКБ КОНТУР и после применить данные переменные в команде: csptest.exe -keycopy -src "\\.\FAT12_F\1f4caf5dcd5746218c2d13d961cc323d" -dest "\\.\FAT12_П\Название компании 24.07.2018 СКБ КОНТУР" -pindest="" |
Отправлено: 15:34, 03-07-2019 | #16 |
Crazy Сообщения: 1231
|
Профиль | Отправить PM | Цитировать Цитата ownsmir:
поэтому на попытку считывания командлетом не подходящих данных, вываливается соответствующая ошибка ... Цитата ownsmir:
Выковыривать информацию из вывода в консоль cmd, дело неблагодарное, хоть и не безнадежное... Всё же, предлагаю воспользоваться powershell-ом для получения данных сертификата. $cert = get-pfxcertificate f:\исходное_наименование_каталога\имя_сертификата.cer $hashsubject = ($cert.subject -split ',')|convertfrom-stringdata $hashissuer = ($cert.issuer -split ',')|convertfrom-stringdata Цитата ownsmir:
можно всё это автоматизировать, главное получить принципиальную работоспособность на примере... |
|||
------- Отправлено: 21:43, 03-07-2019 | #17 |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать [q=YuS_2]$cert = get-pfxcertificate f:\исходное_наименование_каталога\имя_сертификата.cer
$hashsubject = ($cert.subject -split ',')|convertfrom-stringdata $hashissuer = ($cert.issuer -split ',')|convertfrom-stringdata » Получается в папке с ключем должен быть сертификат .cer? Его же там нет... Мне не файлы нужно переименовать, мне нужно изменить дружественное название ключей чтобы в криптро про они отображались по образцу "Ромашка, ООО от 13.01.2019 СКБ Контур". Файлы на флешке мне вообще трогать не нужно. Про файлы я писал не зная откуда можно взять информацию о ключе. |
Отправлено: 10:26, 04-07-2019 | #18 |
Crazy Сообщения: 1231
|
Профиль | Отправить PM | Цитировать Цитата ownsmir:
|
|
------- Отправлено: 15:47, 04-07-2019 | #19 |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать Цитата YuS_2:
Больше никто не реагирует к сожалению((( Сколько в интернете прочитал, толком не могу найти информацию как правильно взять определенную информацию и потом ее использовать. |
|
Последний раз редактировалось ownsmir, 04-07-2019 в 17:36. Отправлено: 15:54, 04-07-2019 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Крипто Про CSP 4.0 и R4 в тихом режиме (FYI) | merdzd | Автоматическая установка приложений | 3 | 22-04-2019 01:04 | |
Разное - Windows 10 и Крипто-про CSP 3.9 | Auberdin | Microsoft Windows 10 | 1 | 21-09-2015 22:45 | |
Разное - как создать exe для запуска другого exe с параметрами, из той же папки | vzli_izv | Программирование и базы данных | 12 | 08-06-2013 14:49 | |
iRU Stilo 2214L (он же Mitac 8081) не видит DVD | D@nilYcH | Ноутбуки | 0 | 31-07-2011 16:19 | |
MacBook Pro 2011. Какой же он? | Welron | Новости железа | 0 | 22-02-2011 22:07 |
|