Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Как прочитать данные сертификата (.cer)?


Автор: BDmV 21.6.2011, 08:12
Подскажите, пожалуйста чем в VBS можно прочитать данные из .cer файла?
Необходимо вытащить от туда дату окончания сертификата и если она совпадает с текущей датой, то вывести сообщение о необходимости смены.

ЗЫ. Со второй частью задачи проблем нет, а вот с первой...

Автор: Akina 21.6.2011, 08:20
Гм... ну вообще-то для работы с сертификатами обычно используют capicom.dll, но вот из VBS...
Теоретически можно установить certmgr и вызывать его с необходимыми параметрами, перехватывая и разбирая вывод...

Автор: BDmV 21.6.2011, 10:21
Цитата(Akina @ 21.6.2011,  08:20)
Гм... ну вообще-то для работы с сертификатами обычно используют capicom.dll, но вот из VBS...
Теоретически можно установить certmgr и вызывать его с необходимыми параметрами, перехватывая и разбирая вывод...

Не certmgr не подходи, слишком мнего не нужной инфы даёт. :(
А вот capicom вещь интересная, только я пока не могу по нему документацию найти :( Примеров на "подписать/расшифровать" навалом, а вот на "Посмотреть" ни одного. smile 
Если есть доки поделитесь плиз... ну или ссылочку...

Автор: Akina 21.6.2011, 10:58
http://msdn.microsoft.com/en-us/library/aa376092(VS.85).aspx

Автор: BDmV 21.6.2011, 11:25
Был я там но нифига не понял, а если примеры там и дают, то тольно на C++

PS. Кстати я ошибся инфу нужно тянуть не из .cer, а из .crl файла

Автор: Dexx 21.6.2011, 13:46
Скрипт от сюда http://www.thescriptlibrary.com/Default.asp?Action=Display&Level=Category3&ScriptLanguage=VBScript&Category1=Security&Category2=Other&Title=Display%20Certificate%20using%20CAPICOM

выдает вот такую информацию
CScript.exe d:/1.vbs d:/AUMProduct.cer


The overall chain status is not valid.
Overall chain status code  = 0x1010040 (Unknown revocation, Offline revocation,
Partial chain)
Extended error information =

=== Certificate 1 of 1 (status = 0x1000040) ===

Subject Name:
  Simple name = CN=Adobe Asset Services, OU=Adobe Trust Services, O=Adobe System
s Incorporated, C=US
  Email name  =
  UPN name    =
  DNS name    = Adobe Asset Services

Issuer Name: CN=Adobe AUM, OU=Adobe Trust Services, O=Adobe Systems Incorporated
, C=US

Serial Number: 497B0F610000000000D1

Not Before: 20.02.2007 1:26:52

Not After: 18.02.2014 1:26:52

SHA1 Hash: B570A74C07286A8F89BE1DD458EA7682BDBDE101

IsValid: False

Archived: Ëîæü

Basic Constraints: Not present.

Key Usage:
  Critical                  = Èñòèíà
  IsDigitalSignatureEnabled = Èñòèíà
  IsNonRepudiationEnabled   = Èñòèíà
  IsKeyEnciphermentEnabled  = Ëîæü
  IsDataEnciphermentEnabled = Ëîæü
  IsKeyAgreementEnabled     = Ëîæü
  IsKeyCertSignEnabled      = Ëîæü
  IsCRLSignEnabled          = Ëîæü
  IsEncipherOnlyEnabled     = Ëîæü
  IsDecipherOnlyEnabled     = Èñòèíà

Extended Key Usage:
  Critical = Ëîæü
  Ïîäïèñûâàíèå êîäà (1.3.6.1.5.5.7.3.3)

Template:
  Critical = Ëîæü
  Name     =
  OID      = (1.3.6.1.4.1.311.21.8.665834.6830720.6963357.3882940.15307666.170.1
514414.8110273)
  Major    = 100
  Minor    = 28

Public Key:
  Algorithm  = RSA(1.2.840.113549.1.1.1)
  Length     = 1024 bits
  Key blob   = MIGJAoGBAKFLS1J15bZs9fGtwhVeHZsu4qSHYK6gau5G72LTzrVz28LxcbwERpw9
TfC5W18oU8Zl6Dm11gqFy77LdOwzXcSw6ajsxO7RQkA+LtQPPLj+mouESkYmaX5H
5vuymUBXUocLj53HqaqiM6zoTPQAXEbRCoc3KA1PZZpTYjLkdVnLAgMBAAE=

  Parameters = BQA=  .....................................

Автор: BDmV 21.6.2011, 14:48
Спасибо!!!
С этим примером будет проще разобраться в работе этого capicom smile
Осталось понять к какому объекту относится функция CRL_INFO

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)