MailBee.NET Objects 4.0

CryptoServiceProvider Class

Provides methods and properties for accessing or examining Cryptographic Service Providers (CSPs) registered in the system.

For a list of all members of this type, see CryptoServiceProvider Members.

System.Object
   MailBee.Security.CryptoServiceProvider

public class CryptoServiceProvider : IDisposable

Thread Safety

Public static (Shared in Visual Basic) members of this type are safe for multithreaded operations. Instance members are not guaranteed to be thread-safe.

Remarks

CSP is an independent software module which performs cryptographic algorithms for authentication, encoding and encryption procedures. Each CSP supports its own set of algorithms.

Note   MailBee handles CSPs automatically. Usually there is no need to use CryptoServiceProvider class unless you need to use specific CSP.

Example

This sample displays the details of the default CSP to be used by MailBee, then changes the default CSP and displays its details, then creates a new CSP and displays its details.

[C#]
// To use the code below, import these namespace at the top of your code
using System;
using MailBee.Security;

// The actual code (put it into a method of your class)

Smime objSmime = new Smime();

// Use default CSP.
Console.WriteLine(objSmime.Provider.GetProviderName());
Console.WriteLine(objSmime.Provider.GetProviderVersion());
Console.WriteLine(objSmime.Provider.GetKeyContainer());
Console.WriteLine("-----------------------------------");

// Set new default for CSP.
objSmime.Provider = new CryptoServiceProvider(CryptoServiceProvider.Enhanced);

// Use the new default CSP.
Console.WriteLine(objSmime.Provider.GetProviderName());
Console.WriteLine(objSmime.Provider.GetProviderVersion());
Console.WriteLine(objSmime.Provider.GetKeyContainer());
Console.WriteLine("-----------------------------------");

// Set new default for CSP.
CryptoServiceProvider strongProvider = new CryptoServiceProvider(CryptoServiceProvider.Strong);
objSmime.Provider = strongProvider;

// Use another CSP.
Console.WriteLine(objSmime.Provider.GetProviderName());
Console.WriteLine(objSmime.Provider.GetProviderVersion());
Console.WriteLine(objSmime.Provider.GetKeyContainer());
Console.WriteLine("-----------------------------------");
[Visual Basic]
' To use the code below, import MailBee namespace at the top of your code
Imports MailBee.Security

' The actual code (put it into a method of your class)

Dim objSmime As New Smime

' Use default CSP.
Console.WriteLine(objSmime.Provider.GetProviderName())
Console.WriteLine(objSmime.Provider.GetProviderVersion())
Console.WriteLine(objSmime.Provider.GetKeyContainer())
Console.WriteLine("-----------------------------------")

' Set new default for CSP.
objSmime.Provider = New CryptoServiceProvider(CryptoServiceProvider.Enhanced)

' Use the new default CSP.
Console.WriteLine(objSmime.Provider.GetProviderName())
Console.WriteLine(objSmime.Provider.GetProviderVersion())
Console.WriteLine(objSmime.Provider.GetKeyContainer())
Console.WriteLine("-----------------------------------")

' Set new default for CSP.
Dim strongProvider As New CryptoServiceProvider(CryptoServiceProvider.Strong)
objSmime.Provider = strongProvider

' Use another CSP.
Console.WriteLine(objSmime.Provider.GetProviderName())
Console.WriteLine(objSmime.Provider.GetProviderVersion())
Console.WriteLine(objSmime.Provider.GetKeyContainer())
Console.WriteLine("-----------------------------------")

Requirements

Namespace: MailBee.Security

Assembly: MailBee.NET (in MailBee.NET.dll)

See Also

CryptoServiceProvider Members | MailBee.Security Namespace