Will the standard Win32 Crypto API pass store validation? RRS feed

  • Question

  • I saw that there's a new crypto/certificate store API in WinRT (probably usable in the desktop and metro apps). My question is, will the old Crypt/Cert APIs pass Metro App store validation? They're not listed in the API Reference page (http://msdn.microsoft.com/en-us/library/windows/apps/br205757.aspx) but I don't see why they wouldn't pass. I can try, but it'll be faster to get a straight "no" :). There's a component I need to write that should be usable in desktop and metro, and preferably backward compatible with Win7. Can I write it using these: http://msdn.microsoft.com/en-us/library/aa380252.aspx (or a subset of these)?




    Thursday, January 26, 2012 1:19 PM


All replies

  • Hi Joaquin,


    Thanks for pointing this discrepancy out. I've found that the Win32 Crypto APIs will not be available for Metro apps. Only the Windows.Security.Cryptography namespace will be available for WinRT components.



    David Lamb


    Tuesday, January 31, 2012 7:42 PM
  • Thanks for your answer. Since asking the question I have been confirmed that that piece of code will be Win8 only, so that shouldn't be a problem as long as the WinRT API works on Desktop apps. I'll try that this week.
    Tuesday, January 31, 2012 7:47 PM
  • Upon further investigation, I found out that the WinRT API has nothing to actually use the certificates, just support for installing. Is  there anything anywhere that will let me open and read a certificate? That was what I intended to use the Win32 API for. The scenario is really simple: I have a desktop and metro app that needs some custom external licensing. When the Metro App is installed, it should only work if it's installed to an OEM-validated computer, and that validation works by having a certificate installed by the OEM. The app should not work on any other computer. The app is not developed by the OEM, and it needs to live in the store (there may only be parts of the functionality of the app that are brand-specific). I understand that I should be using the AppStore Licensing model for this, but it simply does not fit my scenario.
    Wednesday, February 1, 2012 2:14 PM