How to make privatekey of a certificate entirely non exportable from personal store?

How to make privatekey of a certificate entirely non exportable from personal store?

Secure Home | Search | About
 Microsoft Applications Security    Post an article   get this group's latest topics as an RSS feed add this group's latest topics to your My MSN content add this group's latest topics to your My Yahoo content add this group's latest topics to your Google content
Subject Author Date
How to make privatekey of a certificate entirely non exportable from personal store? GNUlihd 04-06-2007
Posted by GNUlihd on April 26, 2007, 3:06 am
If you were  Registered and logged in, you could reply and use other advanced thread options
On Apr 7, 2:56 pm, "Can Balioglu" <can.balioglu at
averina.com_DONOTSPAM> wrote:
> Hi,
>
> The information in the blog is actually wrong. As first, there is no such a
> thing as "non-exportable certificate". The correct term must be "certificate
> having a non-exportable private key". And you can never export a
> non-exportable private key. This would be one of the biggest vulnerabilities
> in Windows history.
>
> Calling the CertSaveStore function just serializes the specified certificate
> store including all certificates in that store and all *Microsoft specific
> certificate context properties* associated with these certificates. One of
> these context properties points to the key container of the certificate's
> private key. So only the "name" of the key container is serialized. If this
> all serialization/deserialization process occurs in the same system, then
> both the original and the duplicated version of the certificate will point
> to the same key container which makes you think that you also have a
> duplicated private key.
>
> If you deserialize the store in a different system, then the "View
> Certificate" dialog of CryptoAPI mistakenly indicates that the certificate
> has a private key without checking the existence of the key container.
> However, if you try to use any functionality requiring the private key
> (signing, encrypting, etc.) you will receive the error NTE_BAD_KEYSET
> meaning that the key container does not exists.
>
> So do not worry about exportable "non-exportable certificates".
>
> Regards...
>
> Can Balioglu
> can.balioglu at averina.com
>
> Averina Software - Code Signing and IT Security Solutionshttp://www.averina.com



Thanks Can. You are right.
I just looked at the View Certificate dialog which tricked me.


P.S. I was out of town in a vacation so could not give a prompt reply.

Thanks,
GNUlihd



Similar ThreadsPosted
how to check .pfx certificates in personal store remotely April 5, 2006, 11:50 am
Error in Signtool - "Personal" certifcate store was not found August 4, 2006, 9:10 pm
Certificates, Autoenrollment, Credential Roaming and User's Personal Store April 29, 2008, 10:53 am
Certificate store question February 4, 2008, 1:01 pm
Is there a way to get certificate store path from CERT_CONTEXT March 6, 2006, 11:07 am
Where is the offline CA's certificate store ? How to retrieve the issued cert's? April 27, 2006, 3:49 pm
Private key Not Exportable May 5, 2008, 12:47 pm
CA store July 6, 2006, 4:22 pm
Store private key in assembly May 6, 2008, 5:56 am
Access to local machine store June 2, 2008, 4:08 am

The site map in XML format XML site map

Contact Us | Privacy Policy