Форум КриптоПро
»
Средства криптографической защиты информации
»
Встраивание
»
Помогите получить период действия закрытого криптоключа PrivateKeyUsagePeriod
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,747   Сказал «Спасибо»: 575 раз Поблагодарили: 2306 раз в 1807 постах
|
Автор: AlexEr81  понятно. а как же мне раскодировать szOID_PRIVATEKEY_USAGE_PERIOD с помощью CSP, раз CryptoAPI не умеет декодировать такое расширение? какую библиотеку подключить? Автор: Kirill Sobolev  CryptoAPI не умеет декодировать такое расширение. Нужно дополнительно регистрировать функцию декодирования, это, в частности, умеет CSP 3.6R2. Поиск по форуму |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 09.11.2012(UTC) Сообщений: 65 Откуда: Ростовская область
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 1 раз в 1 постах
|
я подумал что надо дополнительно библиотеку от криптопро регистрировать. декодировал с помощью: szCPGUID_PRIVATEKEY_USAGE_PERIOD_Encode в CPCERT_PRIVATEKEY_USAGE_PERIOD. дата какая то интересная получилась сертификат Действителен: с 05.06.2015 15:01:47 по 05.09.2016 15:01:47 а Период использования закрытого ключа(2.5.29.16) 14.01.1608 06:30:17 - 05.06.2015 13:57:52
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 09.11.2012(UTC) Сообщений: 65 Откуда: Ростовская область
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 1 раз в 1 постах
|
где-то попадалось дата 1608 кажется на этом форуме . неправильно извлекали. не найду теперь
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 09.11.2012(UTC) Сообщений: 65 Откуда: Ростовская область
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 1 раз в 1 постах
|
Код:const
szCPGUID_PRIVATEKEY_USAGE_PERIOD_Encode ='{E36FC6F5-4880-4CB7-BA51-1FCD92CA1453}';
type PCPCERT_PRIVATEKEY_USAGE_PERIOD= ^CPCERT_PRIVATEKEY_USAGE_PERIOD;
CPCERT_PRIVATEKEY_USAGE_PERIOD =record
pNotBefore : FileTime;
pNotAfter : FileTime;
end;
function ext_PRIVATEKEY_USAGE_PERIOD(rgExtension:PCERT_EXTENSION;cExtension:Cardinal):string;
var pExtension:PCERT_EXTENSION;
szOID: LPSTR;
cbStructInfo, i: Cardinal;
pvStructInfo: pvoid;
begin
szOID:=szOID_PRIVATEKEY_USAGE_PERIOD;
pExtension := CertFindExtension(szOID, cExtension,rgExtension);
szOID:=szCPGUID_PRIVATEKEY_USAGE_PERIOD_Encode;
if (Assigned(pExtension) and CryptDecodeObject(X509_ASN_ENCODING or PKCS_7_ASN_ENCODING, szOID,
pExtension^.Value.pbData, pExtension^.Value.cbData, 0, nil, @cbStructInfo)) then
begin
GetMem(pvStructInfo, cbStructInfo);
try
begin
CryptDecodeObject(X509_ASN_ENCODING or PKCS_7_ASN_ENCODING, szOID, pExtension^.Value.pbData,
pExtension^.Value.cbData, 0, pvStructInfo, @cbStructInfo);
result:=FileTimeToSTRTime(PCPCERT_PRIVATEKEY_USAGE_PERIOD(pvStructInfo^).pNotBefore)+' - '+FileTimeToSTRTime(PCPCERT_PRIVATEKEY_USAGE_PERIOD(pvStructInfo^).pNotAfter);
end;
finally
FreeMem(pvStructInfo);
end;
end;
end;
все работает. всем спасибо! Отредактировано пользователем 25 сентября 2015 г. 9:49:41(UTC)
| Причина: Не указана
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
Встраивание
»
Помогите получить период действия закрытого криптоключа PrivateKeyUsagePeriod
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close