Статус: Новичок
Группы: Участники
Зарегистрирован: 23.07.2018(UTC) Сообщений: 1
|
Здравствуйте! Пытаюсь на Ubuntu найти сертификат по издателю (Чтобы в идеале искать по CERT_ID), но поиск почему-то не отрабатывает. Код прилагаю. Если же искать таким же образом сертификат по Subject, он его находит. С чем это может быть связано? Да, аналогичный код на Windows отрабатывает без проблем. В хранилище TrustedPeople на Unix используется самый обычный тестовый сертификат выданный вашим УЦ. Заранее благодарю. Код:int main(){
HCERTSTORE hFileStore;
PCCERT_CONTEXT pCertCtx;
DWORD cbSize;
LPCWSTR pszString = L"E=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2";
CERT_NAME_BLOB blobEncodedIssuerName;
if ((hFileStore = CertOpenStore(CERT_STORE_PROV_SYSTEM, 0, 0,
CERT_STORE_OPEN_EXISTING_FLAG | CERT_STORE_READONLY_FLAG |
CERT_SYSTEM_STORE_CURRENT_USER, L"TrustedPeople")))
{
printf("The file store was created successfully.\n");
}
else
{
MyHandleError((char *)"An error occurred during creation of the file store!");
}
if (!(CertStrToNameW(
MY_ENCODING_TYPE,
pszString,
CERT_X500_NAME_STR,
NULL,
NULL,
&cbSize,
NULL)))
{
MyHandleError((char*)"Could not get the length of the BLOB.");
}
if (!(blobEncodedIssuerName.pbData = (LPBYTE)malloc(cbSize)))
{
MyHandleError((char*)"Memory Allocation for the BLOB failed.");
}
blobEncodedIssuerName.cbData = cbSize;
if (!(CertStrToNameW(
MY_ENCODING_TYPE | CERT_NAME_STR_ENABLE_UTF8_UNICODE_FLAG,
pszString,
CERT_X500_NAME_STR,
NULL,
blobEncodedIssuerName.pbData,
&blobEncodedIssuerName.cbData,
NULL)))
{
MyHandleError((char*)"Could not write the blob.");
}
pCertCtx = NULL;
pCertCtx = CertFindCertificateInStore(hFileStore,
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, 0, CERT_FIND_ISSUER_NAME,
&blobEncodedIssuerName, NULL);
if (pCertCtx == NULL)
{
MyHandleError((char*)"There is no such a certificate in the store\n");
}
else
{
printf("Certificate was found succesfully");
}
}
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close