X509 certificates is an important component and concept in Public Key Infrastructure(for Network Security). And in application programming, especially for distributed application scenario, we’ll often deal with things related to X509 certificates. This wiki is targeting at basic guide on x509 certificates and how we can use it in our application development(expecially for .NET distributed application development). The content is divided into the following three sections:

 

l  X509 & certificate general introduction & knowledge

l  How x509 certificate applies in .NET application

l  How to use x509 certificates for testing

 

X509 & certificate general introduction & knowledge

 

#X.509 concept

http://en.wikipedia.org/wiki/X.509

 

#Internet X.509 Public Key Infrastructure

http://www.ietf.org/rfc/rfc2459.txt

 

#Understanding Certificates

http://technet.microsoft.com/en-us/library/cc758686.aspx

 

#Using Certificates

http://technet.microsoft.com/en-us/library/cc778411.aspx

 

 

How x509 certificate applies in .NET application

For general .NET development:

#EncryptTo/DecryptTo: Encryption in .NET with CryptoAPI Certificate Stores

http://msdn.microsoft.com/en-us/library/ms867080.aspx

 

#Support Certificates In Your Applications With The .NET Framework 2.0

http://msdn.microsoft.com/en-us/magazine/cc163454.aspx

 

#Cryptography in Microsoft.NET Part III: Digital Certificates

http://www.c-sharpcorner.com/UploadFile/Gowri%20S%20Paramasivam/Cryptography311242005015640AM/Cryptography3.aspx

 

For ASP.NET web application development:

#How to implement SSL in IIS

http://support.microsoft.com/kb/299875

 

#How to Setup SSL on IIS 7.0

http://learn.iis.net/page.aspx/144/how-to-setup-ssl-on-iis-7/

 

#How to send a client certificate by using the HttpWebRequest and HttpWebResponse classes in Microsoft Visual C# .NET

http://support.microsoft.com/kb/895971

 

#HOW TO: Secure an ASP.NET Application Using Client-Side Certificates

http://support.microsoft.com/kb/315588

 

For WCF application development

#Working with Certificates(WCF)

http://msdn.microsoft.com/en-us/library/ms731899.aspx

 

#Suwat Ch.'s Blogs : X509 and WCF Security

http://blogs.msdn.com/suwatch/archive/2007/04/06/x509-and-wcxf-security.aspx

 

#How to: Secure a Service with an X.509 Certificate

http://msdn.microsoft.com/en-us/library/ms788968.aspx

 

How to use x509 certificates for testing

Tools & components for certificate generating:

 

#Certificate Creation Tool (Makecert.exe) 

http://msdn.microsoft.com/en-us/library/bfsktky3(VS.80).aspx

 

#Create Test Certificate via Visual Studio UI

http://msdn.microsoft.com/en-us/library/ms165261(VS.80).aspx

 

#Certificate Manager Tool (Certmgr.exe) 

http://msdn.microsoft.com/en-us/library/e78byta0(VS.80).aspx

 

#WinHttpCertCfg a Command Line Certificate Configuration Tool

http://weblogs.asp.net/hernandl/archive/2005/02/09/WinHttpCertCfgTool.aspx

 

#Certificate MMC Snap-In

http://msdn.microsoft.com/en-us/library/ms788967.aspx

 

#windows certificate services(win sever 2000, 2003, 2008..)

http://technet.microsoft.com/en-us/library/bb727022.aspx

 

Articles about using test certificate:

#How to Obtain a Certificate Using Windows Server 2003 Stand-Alone CA in Operations Manager 2007

http://technet.microsoft.com/en-us/library/bb735417.aspx

 

#How to use makecert.exe to create a self-signed test certificate that can be used with IIS for SSL

http://www.inventec.ch/chdh/notes/14.htm

 

#How-to: Create a Server Certificate for a WCF Service

http://blog.functionalfun.net/2008/05/how-to-create-server-certificate-for.html