|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - Крипто про он же csptest.exe |
|
Любой язык - Крипто про он же csptest.exe
|
Новый участник Сообщения: 46 |
Здравствуйте! Уважаемые умы!
У меня по работе очень много разных эцп, от разных УЦ. Соответственно каждый УЦ при формировании ключа, обзывает его по своему, а зачастую это выглядит вот так "iojng-er4gedfgv-454g-45g45g" и т.д. Ну в общем все ключи называются по разному, бухгалтера несчастные по пол часа ищут нужное ЭЦП для работы с компанией по отчетности. Смысл все темы таков, хочу взять все ключи на флешке (их порядка 1500) и через скрипт каждую подпись переименовать по человечески по образцу (НО информацию о ключе нужно брать из открытого ключа "Сертификата" т.к. актуальная и полная информация только там) образец "Ромашка, ООО от 13.01.2019 СКБ Контур" есть ли такая возможность? |
|
Отправлено: 11:52, 02-07-2019 |
Старожил Сообщения: 427
|
Профиль | Отправить PM | Цитировать Цитата:
возьмите пустую флешку, скопируйте туда 1 один ключ, проверьте что он открывается потом переименуйте руками, в соответствии с Цитата:
ну и напишите, что у вас получилось потом, здесь |
||
Отправлено: 12:28, 02-07-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать Цитата Ageron:
|
|
Отправлено: 13:17, 02-07-2019 | #3 |
Ветеран Сообщения: 992
|
Профиль | Сайт | Отправить PM | Цитировать Не думаю что у многих под рукой найдется какой-нибудь ненужный ключ над которым можно поиздеваться. Пока не узнаем как прочитать данные по ключу на токене и как и в какое место записать найденную информацию из командной строки - кина не будет.
Ageron, можно ключи переименовывать, это не изменяет информации в самом ключе. |
Отправлено: 15:05, 02-07-2019 | #4 |
![]() Ветеран Сообщения: 2798
|
Профиль | Отправить PM | Цитировать Что из себя представляет тот файл из которого предполагается читать информацию?
|
|
Отправлено: 15:29, 02-07-2019 | #5 |
Crazy Сообщения: 1231
|
Профиль | Отправить PM | Цитировать Цитата ownsmir:
1. переименование файлов - самый простой вопрос. 2. Чтобы получить необходимое имя, в которое требуется переименовать файл, необходим пример ключей А так, в общем случае: powershell 6.0 и выше: #requires -v 6.0 $arr = dir *.p12 $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 } Для powershell 2.0 #requires -v 2.0 $arr = dir *.p12 $arr|%{ "Введите пароль ключа $($_.fullname)" $pass = read-host -assec $cert = new-object system.security.cryptography.x509certificates.x509certificate2 $cert.import( $_.fullname,$pass,[security.cryptography.x509certificates.x509keystorageflags]"defaultkeyset" ) $hash = ($cert.subject -split ',')|convertfrom-stringdata $name = ($hash|?{$_.cn}).cn ren $_.fullname $($name+"_"+$cert.serialnumber+$_.extension) -whatif } |
|
------- Последний раз редактировалось YuS_2, 02-07-2019 в 18:08. Отправлено: 15:31, 02-07-2019 | #6 |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать Цитата Charg:
|
|
Отправлено: 10:50, 03-07-2019 | #7 |
Новый участник Сообщения: 46
|
Профиль | Отправить PM | Цитировать Как я представляю себе работу скрипта:
1. Скрипт идет на указанную флешку 2. Находит 1 папку с файлами .key 3. Считывает информацию по ЭЦП по открытому сертификату (установленному в контейнере данной папки) 4. Берет нужную информацию "Наименование организации", "дата выдачи", "Наименование организации выдавшей данную подпись" (Тензор, Контур, Астрал и т.д.) 5. Копирует данную ЭЦП на другую флешку с новым именем по максе "ООО Ромашка 01.01.2018 Тензор" 6. Переходит к следующей папке и т.д. Можно через утилиту csptest.exe или еще если есть инструменты. Я пытался уже через CMD и csptest сделать часть данных действий, но это если через txt файл тупо копировать переставив в нужном порядке название ключа исходное. Но не все ключи назваются понятно, как залезть в сертификат ключа через csptest я так и не нашел команду... По этому обратился к Вам, знающим больше моего Цитата YuS_2:
|
|
Отправлено: 11:51, 03-07-2019 | #8 |
Crazy Сообщения: 1231
|
Профиль | Отправить PM | Цитировать Цитата ownsmir:
Цитата ownsmir:
Если вы покажете, какой-нибудь ненужный ключик, ответ получите гораздо быстрее... И да, алгоритмы составлять не требуется, если вы считаете, что обращаетесь к знающим людям... знающие сами умеют это делать. ![]() |
||
------- Отправлено: 12:02, 03-07-2019 | #9 |
Старожил Сообщения: 427
|
Профиль | Отправить PM | Цитировать Цитата ownsmir:
Скрытый текст
CSPTEST key set manipulation options: <globals>: -silent Do not display any user interface --cplevel[=<number>] Apply 0/1/2/3 as <number> to use Crypt/CP/CPC/Emu interfaces --cpdll <Dll> Apply full path to dll as <Dll> -threads <N> Create N threads -passes <K> Make K passes in each thread -provider <name> [optional] specify provider name or next abbreviation: cp2001 ph2001 -provtype <type> [optional] specify provider type or next abbreviation: gost2001 <commands>: -newkeyset Create new container and a key set -addkeypair Create new keypair in existing container -deletekeyset Delete key set -info Show provider's info --check[=<mask>] Check container. Use bit mask (all tests by default): 1: remask check 2: keys and certs check 4: header check 8: cert license -hash <hashalg> Hash in file data with hash (SHA1, SHA256, SHA384, SHA512, MD5, MD2, MD4, GOST12_256, GOST12_512, GOST94_256 - default) -sign <hashalg> Sign in file with private key and hash (SHA1, SHA256, SHA384, SHA512, MD5, MD2, MD4, GOST12_256, GOST12_512, GOST94_256 - default) -verify <hashalg> Verify file with signature file on imported key with hash (SHA1, SHA256, SHA384, SHA512, MD5, MD2, MD4, GOST12_256, GOST12_512, GOST94_256 - default) -pkverify <alg> Verify file with signature file on private key with hash (SHA1, SHA256, SHA384, SHA512, MD5, MD2, MD4 GOST12_256, GOST12_512, GOST94_256 - default) -display Send hashed data into Reader/Carrier Working only with GOST hash algorithm -enum_containers Enumerate containers -crc Calculate CRC16 of container name string -encryptioncarrier Set container encryption carrier -export <file> Export public key blob into file -expcert <file> Save key certificate from container into file -impcert <file> Load key certificate from file into container -makecert Make self signed cert and put it in container -fmakecert <file> Make self signed cert and put it in file -loadext <file> Load container extensions from PKCS#7 file, keytype option selects signature or exchange trust store extension -saveext <file> Save container extensions to PKCS#7 file -cleanext <OID> Clean out container extension "*" means delete all extensions -noext Do not show info about container extensions -stress CP{Acquire/Relase}Context -help Print this help <options>: -verifycontext Open context for verification only -container <name> Specify container name. Use "default" for select dialog -unique Output unique container name instead name -fqcn Output FQCN (Fully Qualified Container Name) -machinekeyset Open HKLM -exportable Generate exportable key -protected Generate protected key -default_optional Set CRYPT_DEFAULT_CONTAINER_OPTIONAL flag -pattern <string> Substring in unique container name -keytype <type> Key type for creating key and certificate, signing or exporting public key, intended signature verifying on private key: signature, exchange, uec, none. Default: signature and exchange -hashout <file> Out hash value into filename -in <file> Data filename to be signed, verified or hashed -out <file> Save signature in file -signature <file> In/out signature file name -certificate <file> Cert file to import public key from -import <file> Import public key from file (see also: "-pubkey" parameter) -pubkey <file> Additional public key to be used in ImportKey() as hPubKey (exchange private key will be used with import as hPubKey if no file specified and keytype is exchange) -hard_rng Use hardware RNG -length <keylen> Set key length to 1024 / 512 bits -password <pin> Open container with this password -nullpasswd Set NULL password (i.e. clean from cache) -counter <num> Number of Acquire/Release context iterations -waitcarrier <t> Wait t seconds before releasing encryption carrier container покажите формат вывода контейнеров с ключами csptest -keyset -enum_containers -fqcn -verifycontext |
|
Отправлено: 12:08, 03-07-2019 | #10 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Крипто Про 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 |
|