Export (0) Print
Expand All

X509Certificate2.FriendlyName Property

Gets or sets the associated alias for a certificate.

Namespace: System.Security.Cryptography.X509Certificates
Assembly: System (in system.dll)

public string FriendlyName { get; set; }
/** @property */
public String get_FriendlyName ()

/** @property */
public void set_FriendlyName (String value)

public function get FriendlyName () : String

public function set FriendlyName (value : String)

Not applicable.

Property Value

The certificate's friendly name.

Exception typeCondition

CryptographicException

The certificate is unreadable.

Friendly names are properties in the X.509 certificate store that can be set. They are used to enable a user to associate aliases with certificates so they can be easily identified.

If no friendly name exists for the certificate, an empty string ("") is returned.

The following code example creates a command-line executable that takes a certificate file as an argument and prints various certificate properties to the console.

using System;
using System.Security.Cryptography;
using System.Security.Permissions;
using System.IO;
using System.Security.Cryptography.X509Certificates;


class CertInfo
{
	//Reads a file.
	internal static byte[] ReadFile (string fileName)
	{
		FileStream f = new FileStream(fileName, FileMode.Open, FileAccess.Read);
		int size = (int)f.Length;
		byte[] data = new byte[size];
		size = f.Read(data, 0, size);
		f.Close();
		return data;
	}
	//Main method begins here.
	static void Main(string[] args)
	{
		//Test for correct number of arguments.
		if (args.Length < 1)
		{
			Console.WriteLine("Usage: CertInfo <filename>");
			return;
		}
		try
		{
			X509Certificate2 x509 = new X509Certificate2();
			//Create X509Certificate2 object from .cer file.
			byte[] rawData = ReadFile(args[0]);

			x509.Import(rawData);

			//Print to console information contained in the certificate.
			Console.WriteLine("{0}Subject: {1}{0}", Environment.NewLine,x509.Subject);
			Console.WriteLine("{0}Issuer: {1}{0}", Environment.NewLine,x509.Issuer);
			Console.WriteLine("{0}Version: {1}{0}", Environment.NewLine,x509.Version);
			Console.WriteLine("{0}Valid Date: {1}{0}", Environment.NewLine,x509.NotBefore);
			Console.WriteLine("{0}Expiry Date: {1}{0}", Environment.NewLine,x509.NotAfter);
			Console.WriteLine("{0}Thumbprint: {1}{0}", Environment.NewLine,x509.Thumbprint);
			Console.WriteLine("{0}Serial Number: {1}{0}", Environment.NewLine,x509.SerialNumber);
			Console.WriteLine("{0}Friendly Name: {1}{0}", 								Environment.NewLine,x509.PublicKey.Oid.FriendlyName);
			Console.WriteLine("{0}Public Key Format: {1}{0}", 											Environment.NewLine,x509.PublicKey.EncodedKeyValue.Format(true));
			Console.WriteLine("{0}Raw Data Length: {1}{0}", Environment.NewLine,x509.RawData.Length);
			Console.WriteLine("{0}Certificate to string: {1}{0}", Environment.NewLine,x509.ToString(true));

			Console.WriteLine("{0}Certificate to XML String: {1}{0}", 								Environment.NewLine,x509.PublicKey.Key.ToXmlString(false));

			//Add the certificate to a X509Store.
			X509Store store = new X509Store();
			store.Open(OpenFlags.MaxAllowed);
			store.Add(x509);
			store.Close();
		}

		catch (DirectoryNotFoundException)
			{
				   Console.WriteLine("Error: The directory specified could not be found.");
			}
		catch (IOException)
			{
				Console.WriteLine("Error: A file in the directory could not be accessed.");
			}
		catch (NullReferenceException)
			{
				Console.WriteLine("File must be a .cer file. Program does not have access to that type of file.");
			}
	}

}

import System.*;
import System.Security.Cryptography.*;
import System.Security.Permissions.*;
import System.IO.*;
import System.Security.Cryptography.X509Certificates.*;

//Permission demand to access files in c:\Test directory with.cer suffix.
/** @assembly FileIOPermissionAttribute(SecurityAction.RequestMinimum,
    All = "C:\\Test#@@#.cer")
 */

class CertInfo
{
    //Reads a file.
    static ubyte[] ReadFile(String fileName)
    {
        FileStream f = new FileStream(fileName, FileMode.Open, FileAccess.Read);
        int size = (int)(f.get_Length());
        ubyte data[] = new ubyte[size];

        size = f.Read(data, 0, size);
        f.Close();
        return data;
    } //ReadFile

	/** @attribute SecurityPermission(SecurityAction.LinkDemand,
		Unrestricted = true) */
    static void main(String[] args)
    {
        //Test for correct number of arguments.
        if (args.length < 1) {
            Console.WriteLine("Usage: CertInfo <filename>");
            return;
        }

        try {
            X509Certificate2 x509 = new X509Certificate2();

            //Create X509Certificate2 object from.cer file.
            ubyte rawData[] = ReadFile(args[0]);

            x509.Import(rawData);

            //Print to console information contained in the certificate.
            Console.WriteLine("{0}Subject: {1}{0}", Environment.get_NewLine(),
                x509.get_Subject());
            Console.WriteLine("{0}Issuer: {1}{0}", Environment.get_NewLine(),
                x509.get_Issuer());
            Console.WriteLine("{0}Version: {1}{0}", Environment.get_NewLine(),
                (Int32)x509.get_Version());
            Console.WriteLine("{0}Valid Date: {1}{0}",
                Environment.get_NewLine(), x509.get_NotBefore());
            Console.WriteLine("{0}Expiry Date: {1}{0}",
                Environment.get_NewLine(), x509.get_NotAfter());
            Console.WriteLine("{0}Thumbprint: {1}{0}",
                Environment.get_NewLine(), x509.get_Thumbprint());
            Console.WriteLine("{0}Serial Number: {1}{0}",
                Environment.get_NewLine(), x509.get_SerialNumber());
            Console.WriteLine("{0}Friendly Name: {1}{0}",
                Environment.get_NewLine(),
                x509.get_PublicKey().get_Oid().get_FriendlyName());
            Console.WriteLine("{0}Public Key Format: {1}{0}",
                Environment.get_NewLine(),
                x509.get_PublicKey().get_EncodedKeyValue().Format(true));
            Console.WriteLine("{0}Raw Data Length: {1}{0}",
                Environment.get_NewLine(), (Int32)x509.get_RawData().length);
            Console.WriteLine("{0}Certificate to string: {1}{0}",
                Environment.get_NewLine(), x509.ToString(true));
            Console.WriteLine("{0}Certificate to XML String: {1}{0}",
                Environment.get_NewLine(),
                x509.get_PublicKey().get_Key().ToXmlString(false));

            //Add the certificate to a X509Store.
            X509Store store = new X509Store();
            store.Open(OpenFlags.MaxAllowed);
            store.Add(x509);
            store.Close();
        }
        catch (DirectoryNotFoundException exp) {
            Console.WriteLine("Error: The directory specified "
                + "could not be found.");
        }
        catch (IOException exp) {
            Console.WriteLine("Error: A file in the directory "
                + "could not be accessed.");
        }
        catch (NullReferenceException exp) {
            Console.WriteLine("File must be a.cer file. "
                + "Program does not have access to that type of file.");
        }
    } //main
} //CertInfo

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0

Community Additions

ADD
Show:
© 2014 Microsoft