internal static extern CertificateHandle CertCreateSelfSignCertificate( KeyContainerHandle hProv, CryptoApiBlob pSubjectIssuerBlob, SelfSignFlags dwFlags, IntPtr pKeyProvInfo, IntPtr pSignatureAlgorithm, [In] ref SystemTime pStartTime, [In] ref SystemTime pEndTime, IntPtr pExtensions);
internal static extern bool CryptGenKey( KeyContainerHandle hProv, AlgorithmType algId, KeyFlags dwFlags, [Out] out KeyHandle phKey);
internal static extern bool CryptAcquireContext( [Out] out KeyContainerHandle phProv, [MarshalAs(UnmanagedType.LPWStr)] string pszContainer, [MarshalAs(UnmanagedType.LPWStr)] string pszProvider, ProviderType dwProvType, ContextFlags dwFlags);