Re: How To Access Public Key Certificate
From: Michel Gallant (neutron_at_NOSPAMistar.ca)
Date: 01/11/04
- Next message: Michel Gallant: "Re: Ghost Certificate in certificate storage"
- Previous message: Michel Gallant: "Re: How to exchange certificate ?"
- In reply to: Richard Grossman: "Re: How To Access Public Key Certificate"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Date: Sun, 11 Jan 2004 11:32:40 -0500
The CERT_KEY_PROV_INFO_PROP_ID is only available for a certificate
contained in a certificate store AND having an associated private key.
In fact, you can test any cert for an associated private key using:
if (CertGetCertificateContextProperty(hCertCntxt, CERT_KEY_PROV_INFO_PROP_ID, ....
Typically, certs in the AddressBook store are certs received from others
(which of course you would/should NOT possess the corresponding private key).
Cheers,
- Mitch Gallant
"Richard Grossman" <richard@goldmail.net.il> wrote in message
news:%23$k6%23KD2DHA.2700@TK2MSFTNGP11.phx.gbl...
> Hi,
>
> I 've try the code as you've sugested.
> I can't even access CERT_KEY_PROV_INFO_PROP_ID by using the function
> if(!(CertGetCertificateContextProperty(
> pCertContext,
> CERT_KEY_PROV_INFO_PROP_ID,
> NULL, &dwSize)))
> {
> MyHandleError("Error getting key property.");
> }
>
> Why I can only access the above properties in my public certificate:
> Value returned by the function CertEnumCertificateContextProperties:
> CERT_MD5_HASH_PROP_ID,
> CERT_SHA1_HASH_PROP_ID,
> And CERT_KEY_IDENTIFIER_PROP_ID.
>
> And can't get other properties like : CERT_KEY_PROV_INFO_PROP_ID
>
> The certificate own only a public key and stored in the AdressBook
> certificate store.
>
> Please help. I'm really stuck with assymetric encryption. Is there anybody
> doing here asymetric encryption without enveloped data ??
>
>
>
>
>
> "David Miller [MSFT]" <dmiller@online.microsoft.com> wrote in message
> news:08A1AC57-AFE6-472D-ADCC-E9A4C0C8F809@microsoft.com...
> > Richard,
> >
> > You may want to review the code example at
>
http://msdn.microsoft.com/library/en-us/security/security/example_c_program_using_cryptencryptmessage_and_cryptdecryptmessage.asp
> for an example of encrypting a message using the public key of the
> recipient. As the comments suggest, it is likely you would want to extend
> the functionality of GetRecipientCert() to search for the specific
> recipient's certificate, but this may get you started.
> >
> > Thanks,
> > David
> >
> > This posting is provided "As Is" with no warranties, and confers no
> rights.
> > Use of included script samples are subject to the terms specified at
> > http://www.microsoft.com/info/cpyright.htm
> >
> >
> >
> > ----- Richard Grossman wrote: -----
> >
> > Hi,
> >
> > I want to implement PKI in a program.
> > I use only default key container of windows I mean "My", "AdressBook"
> To
> > store certificate.
> >
> > As I've understand (may be I wrong) "My" store certificate with
> private
> > key. Store AdressBook store public certificate (without private key).
> >
> > I'm trying to encrypt (asymetric a short message) using the public
> key
> > of a certifcate stored. I've tried to use the function
> > CryptAcquireCertificatePrivateKey but It can't aquire context for
> > certificate without private key associated.
> >
> > How can I aquire context or wich function I can call to get access to
> > the handle of public key certificate?
> >
> > Thanks for help
> >
> > Richard
> >
> >
>
>
- Next message: Michel Gallant: "Re: Ghost Certificate in certificate storage"
- Previous message: Michel Gallant: "Re: How to exchange certificate ?"
- In reply to: Richard Grossman: "Re: How To Access Public Key Certificate"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Relevant Pages
|