Compartilhar via


CspParameters Construtores

Definição

Inicializa uma nova instância da classe CspParameters.

Sobrecargas

CspParameters()

Inicializa uma nova instância da classe CspParameters.

CspParameters(Int32)

Inicializa uma nova instância da classe CspParameters com o código de tipo de provedor especificado.

CspParameters(Int32, String)

Inicializa uma nova instância da classe CspParameters com o nome e o código de tipo de provedor especificados.

CspParameters(Int32, String, String)

Inicializa uma nova instância da classe CspParameters com o código do tipo de provedor e nome especificados e o nome do contêiner especificado.

CspParameters(Int32, String, String, CryptoKeySecurity, IntPtr)

Inicializa uma nova instância da classe CspParameters usando um tipo de provedor, um nome de provedor, um nome de contêiner, informações de acesso e um identificador para uma caixa de diálogo de senha de cartão inteligente não gerenciado.

CspParameters(Int32, String, String, CryptoKeySecurity, SecureString)

Inicializa uma nova instância da classe CspParameters usando um tipo de provedor, um nome de provedor, um nome de contêiner, informações de acesso e uma senha associada a uma chave de cartão inteligente.

CspParameters()

Origem:
CspParameters.cs
Origem:
CspParameters.cs
Origem:
CspParameters.cs

Inicializa uma nova instância da classe CspParameters.

public:
 CspParameters();
public CspParameters ();
Public Sub New ()

Exemplos

O exemplo de código a seguir cria um contêiner de chaves usando a CspParameters classe e salva a chave no contêiner.

using namespace System;
using namespace System::IO;
using namespace System::Security::Cryptography;
int main()
{
   
   // creates the CspParameters object and sets the key container name used to store the RSA key pair
   CspParameters^ cp = gcnew CspParameters;
   cp->KeyContainerName = "MyKeyContainerName";
   
   // instantiates the rsa instance accessing the key container MyKeyContainerName
   RSACryptoServiceProvider^ rsa = gcnew RSACryptoServiceProvider( cp );
   
   // add the below line to delete the key entry in MyKeyContainerName
   // rsa.PersistKeyInCsp = false;
   //writes out the current key pair used in the rsa instance
   Console::WriteLine( "Key is : \n{0}", rsa->ToXmlString( true ) );
}
using System;
using System.IO;
using System.Security.Cryptography;

public class StoreKey
{
    public static void Main()
    {
        // creates the CspParameters object and sets the key container name used to store the RSA key pair
        CspParameters cp = new CspParameters();
        cp.KeyContainerName = "MyKeyContainerName";

        // instantiates the rsa instance accessing the key container MyKeyContainerName
        RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(cp);
        // add the below line to delete the key entry in MyKeyContainerName
        // rsa.PersistKeyInCsp = false;

        //writes out the current key pair used in the rsa instance
        Console.WriteLine("Key is : \n" + rsa.ToXmlString(true));
    }
}
Imports System.IO
Imports System.Security.Cryptography



Public Class StoreKey
    
    Public Shared Sub Main()
        ' creates the CspParameters object and sets the key container name used to store the RSA key pair
        Dim cp As New CspParameters()
        cp.KeyContainerName = "MyKeyContainerName"
        
        ' instantiates the rsa instance accessing the key container MyKeyContainerName
        Dim rsa As New RSACryptoServiceProvider(cp)
        ' add the below line to delete the key entry in MyKeyContainerName
        ' rsa.PersistKeyInCsp = false;
        'writes out the current key pair used in the rsa instance
        Console.WriteLine("Key is : "  & rsa.ToXmlString(True))
    End Sub
End Class

Comentários

Essa forma de CspParameters inicializa o ProviderType campo para um valor de 24, que especifica o provedor de PROV_RSA_AES. Esse provedor padrão é compatível com o Aes algoritmo .

Para obter informações sobre outros tipos de provedor, consulte o ProviderType campo .

Confira também

Aplica-se a

CspParameters(Int32)

Origem:
CspParameters.cs
Origem:
CspParameters.cs
Origem:
CspParameters.cs

Inicializa uma nova instância da classe CspParameters com o código de tipo de provedor especificado.

public:
 CspParameters(int dwTypeIn);
public CspParameters (int dwTypeIn);
new System.Security.Cryptography.CspParameters : int -> System.Security.Cryptography.CspParameters
Public Sub New (dwTypeIn As Integer)

Parâmetros

dwTypeIn
Int32

Um código de tipo de provedor que especifica o tipo de provedor a ser criado.

Comentários

Use o CspParameters construtor para especificar um tipo de provedor passando um valor numérico que representa esse provedor. Os valores numéricos que representam os tipos de provedor padrão são definidos no arquivo de cabeçalho WinCrypt.h:

  • Para especificar um provedor compatível com o RSA algoritmo, passe um valor de 1 para o dwTypeIn parâmetro .

  • Para especificar um provedor compatível com o DSA algoritmo, passe um valor de 13 para o dwTypeIn parâmetro .

Para obter informações sobre outros valores de tipo de provedor, consulte o ProviderType campo . Para obter mais informações sobre os tipos de provedor padrão e seus comportamentos, consulte a documentação da API de Criptografia da Microsoft (CAPI).

Confira também

Aplica-se a

CspParameters(Int32, String)

Origem:
CspParameters.cs
Origem:
CspParameters.cs
Origem:
CspParameters.cs

Inicializa uma nova instância da classe CspParameters com o nome e o código de tipo de provedor especificados.

public:
 CspParameters(int dwTypeIn, System::String ^ strProviderNameIn);
public CspParameters (int dwTypeIn, string? strProviderNameIn);
public CspParameters (int dwTypeIn, string strProviderNameIn);
new System.Security.Cryptography.CspParameters : int * string -> System.Security.Cryptography.CspParameters
Public Sub New (dwTypeIn As Integer, strProviderNameIn As String)

Parâmetros

dwTypeIn
Int32

Um código de tipo de provedor que especifica o tipo de provedor a ser criado.

strProviderNameIn
String

Um nome de provedor.

Exemplos

O exemplo de código a seguir usa a CspParameters classe para selecionar um Provedor de Serviços Criptográficos de Cartão Inteligente. Em seguida, ele assina e verifica os dados usando o cartão inteligente.

using namespace System;
using namespace System::Security::Cryptography;
int main()
{
   
   // To idendify the Smart Card CryptoGraphic Providers on your
   // computer, use the Microsoft Registry Editor (Regedit.exe).
   // The available Smart Card CryptoGraphic Providers are listed
   // in HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider.
   // Create a new CspParameters object that identifies a 
   // Smart Card CryptoGraphic Provider.
   // The 1st parameter comes from HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider Types.
   // The 2nd parameter comes from HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider.
   CspParameters^ csp = gcnew CspParameters( 1,L"Schlumberger Cryptographic Service Provider" );
   csp->Flags = CspProviderFlags::UseDefaultKeyContainer;
   
   // Initialize an RSACryptoServiceProvider object using
   // the CspParameters object.
   RSACryptoServiceProvider^ rsa = gcnew RSACryptoServiceProvider( csp );
   
   // Create some data to sign.
   array<Byte>^data = gcnew array<Byte>{
      0,1,2,3,4,5,6,7
   };
   Console::WriteLine( L"Data			: {0}", BitConverter::ToString( data ) );
   
   // Sign the data using the Smart Card CryptoGraphic Provider.
   array<Byte>^sig = rsa->SignData( data, L"SHA256" );
   Console::WriteLine( L"Signature	: {0}", BitConverter::ToString( sig ) );
   
   // Verify the data using the Smart Card CryptoGraphic Provider.
   bool verified = rsa->VerifyData( data, L"SHA256", sig );
   Console::WriteLine( L"Verified		: {0}", verified );
}
using System;
using System.Security.Cryptography;

namespace SmartCardSign
{
    class SCSign
    {
        static void Main(string[] args)
        {
            // To idendify the Smart Card CryptoGraphic Providers on your
            // computer, use the Microsoft Registry Editor (Regedit.exe).
            // The available Smart Card CryptoGraphic Providers are listed
            // in HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider.

            // Create a new CspParameters object that identifies a
            // Smart Card CryptoGraphic Provider.
            // The 1st parameter comes from HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider Types.
            // The 2nd parameter comes from HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider.
            CspParameters csp = new CspParameters(1, "Schlumberger Cryptographic Service Provider");
            csp.Flags = CspProviderFlags.UseDefaultKeyContainer;

            // Initialize an RSACryptoServiceProvider object using
            // the CspParameters object.
            RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(csp);

            // Create some data to sign.
            byte[] data = new byte[] { 0, 1, 2, 3, 4, 5, 6, 7 };

            Console.WriteLine("Data			: " + BitConverter.ToString(data));

            // Sign the data using the Smart Card CryptoGraphic Provider.
            byte[] sig = rsa.SignData(data, "SHA256");

            Console.WriteLine("Signature	: " + BitConverter.ToString(sig));

            // Verify the data using the Smart Card CryptoGraphic Provider.
            bool verified = rsa.VerifyData(data, "SHA256", sig);

            Console.WriteLine("Verified		: " + verified);
        }
    }
}
Imports System.Security.Cryptography



Module SCSign

    Sub Main(ByVal args() As String)
        ' To idendify the Smart Card CryptoGraphic Providers on your
        ' computer, use the Microsoft Registry Editor (Regedit.exe).
        ' The available Smart Card CryptoGraphic Providers are listed
        ' in HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider.

        ' Create a new CspParameters object that identifies a 
        ' Smart Card CryptoGraphic Provider.
        ' The 1st parameter comes from HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider Types.
        ' The 2nd parameter comes from HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Defaults\Provider.
        Dim csp As New CspParameters(1, "Schlumberger Cryptographic Service Provider")
        csp.Flags = CspProviderFlags.UseDefaultKeyContainer

        ' Initialize an RSACryptoServiceProvider object using
        ' the CspParameters object.
        Dim rsa As New RSACryptoServiceProvider(csp)

        ' Create some data to sign.
        Dim data() As Byte = {0, 1, 2, 3, 4, 5, 6, 7}


        Console.WriteLine("Data   : " + BitConverter.ToString(data))

        ' Sign the data using the Smart Card CryptoGraphic Provider.
        Dim sig As Byte() = rsa.SignData(data, "SHA256")

        Console.WriteLine("Signature : " + BitConverter.ToString(sig))

        ' Verify the data using the Smart Card CryptoGraphic Provider.
        Dim verified As Boolean = rsa.VerifyData(data, "SHA256", sig)

        Console.WriteLine("Verified")

    End Sub

End Module

Comentários

Use o CspParameters construtor para especificar um tipo de provedor e um nome.

Especifique um tipo de provedor passando um valor numérico que representa o tipo de provedor desejado. Os valores numéricos que representam os tipos de provedor padrão são definidos no arquivo de cabeçalho WinCrypt.h:

  • Para especificar um provedor compatível com o RSA algoritmo, passe um valor de 1 para o dwTypeIn parâmetro .

  • Para especificar um provedor compatível com o DSA algoritmo, passe um valor de 13 para o dwTypeIn parâmetro .

Para obter informações sobre outros valores de tipo de provedor, consulte o ProviderType campo . Para obter mais informações sobre os tipos de provedor padrão e seus comportamentos, consulte a documentação da API de Criptografia da Microsoft (CAPI).

Confira também

Aplica-se a

CspParameters(Int32, String, String)

Origem:
CspParameters.cs
Origem:
CspParameters.cs
Origem:
CspParameters.cs

Inicializa uma nova instância da classe CspParameters com o código do tipo de provedor e nome especificados e o nome do contêiner especificado.

public:
 CspParameters(int dwTypeIn, System::String ^ strProviderNameIn, System::String ^ strContainerNameIn);
public CspParameters (int dwTypeIn, string? strProviderNameIn, string? strContainerNameIn);
public CspParameters (int dwTypeIn, string strProviderNameIn, string strContainerNameIn);
new System.Security.Cryptography.CspParameters : int * string * string -> System.Security.Cryptography.CspParameters
Public Sub New (dwTypeIn As Integer, strProviderNameIn As String, strContainerNameIn As String)

Parâmetros

dwTypeIn
Int32

O código de tipo de provedor que especifica o tipo de provedor a ser criado.

strProviderNameIn
String

Um nome de provedor.

strContainerNameIn
String

Um nome de contêiner.

Comentários

Use o CspParameters construtor para especificar um tipo de provedor, um nome de provedor e um nome de contêiner.

Você pode usar o nome do contêiner para recuperar uma chave dentro desse contêiner.

Especifique um tipo de provedor passando um valor numérico que representa o tipo de provedor desejado. Os valores numéricos que representam os tipos de provedor padrão são definidos no arquivo de cabeçalho WinCrypt.h:

  • Para especificar um provedor compatível com o RSA algoritmo, passe um valor de 1 para o dwTypeIn parâmetro .

  • Para especificar um provedor compatível com o DSA algoritmo, passe um valor de 13 para o dwTypeIn parâmetro .

Para obter informações sobre outros valores de tipo de provedor, consulte o ProviderType campo . Para obter mais informações sobre os tipos de provedor padrão e seus comportamentos, consulte a documentação da API de Criptografia da Microsoft (CAPI).

Confira também

Aplica-se a

CspParameters(Int32, String, String, CryptoKeySecurity, IntPtr)

Inicializa uma nova instância da classe CspParameters usando um tipo de provedor, um nome de provedor, um nome de contêiner, informações de acesso e um identificador para uma caixa de diálogo de senha de cartão inteligente não gerenciado.

public:
 CspParameters(int providerType, System::String ^ providerName, System::String ^ keyContainerName, System::Security::AccessControl::CryptoKeySecurity ^ cryptoKeySecurity, IntPtr parentWindowHandle);
public CspParameters (int providerType, string providerName, string keyContainerName, System.Security.AccessControl.CryptoKeySecurity cryptoKeySecurity, IntPtr parentWindowHandle);
new System.Security.Cryptography.CspParameters : int * string * string * System.Security.AccessControl.CryptoKeySecurity * nativeint -> System.Security.Cryptography.CspParameters
Public Sub New (providerType As Integer, providerName As String, keyContainerName As String, cryptoKeySecurity As CryptoKeySecurity, parentWindowHandle As IntPtr)

Parâmetros

providerType
Int32

O código de tipo de provedor que especifica o tipo de provedor a ser criado.

providerName
String

Um nome de provedor.

keyContainerName
String

Um nome de contêiner.

cryptoKeySecurity
CryptoKeySecurity

Um objeto que representa os direitos de acesso e as regras de auditoria do contêiner.

parentWindowHandle
IntPtr

nativeint

Um identificador da janela pai de uma caixa de diálogo da senha do cartão inteligente.

Comentários

Você pode usar o nome do contêiner para recuperar uma chave dentro desse contêiner.

Especifique um tipo de provedor passando um valor numérico que representa o tipo de provedor desejado. Os valores numéricos que representam os tipos de provedor padrão são definidos no arquivo de cabeçalho WinCrypt.h:

  • Para especificar um provedor compatível com o RSA algoritmo, passe um valor de 1 para o dwTypeIn parâmetro .

  • Para especificar um provedor compatível com o DSA algoritmo, passe um valor de 13 para o dwTypeIn parâmetro .

Para obter informações sobre outros valores de tipo de provedor, consulte o ProviderType campo . Para obter mais informações sobre os tipos de provedor padrão e seus comportamentos, consulte a documentação da API de Criptografia da Microsoft (CAPI).

Aplica-se a

CspParameters(Int32, String, String, CryptoKeySecurity, SecureString)

Inicializa uma nova instância da classe CspParameters usando um tipo de provedor, um nome de provedor, um nome de contêiner, informações de acesso e uma senha associada a uma chave de cartão inteligente.

public:
 CspParameters(int providerType, System::String ^ providerName, System::String ^ keyContainerName, System::Security::AccessControl::CryptoKeySecurity ^ cryptoKeySecurity, System::Security::SecureString ^ keyPassword);
public CspParameters (int providerType, string providerName, string keyContainerName, System.Security.AccessControl.CryptoKeySecurity cryptoKeySecurity, System.Security.SecureString keyPassword);
new System.Security.Cryptography.CspParameters : int * string * string * System.Security.AccessControl.CryptoKeySecurity * System.Security.SecureString -> System.Security.Cryptography.CspParameters
Public Sub New (providerType As Integer, providerName As String, keyContainerName As String, cryptoKeySecurity As CryptoKeySecurity, keyPassword As SecureString)

Parâmetros

providerType
Int32

O código de tipo de provedor que especifica o tipo de provedor a ser criado.

providerName
String

Um nome de provedor.

keyContainerName
String

Um nome de contêiner.

cryptoKeySecurity
CryptoKeySecurity

Um objeto que representa os direitos de acesso e as regras de auditoria de um contêiner.

keyPassword
SecureString

Uma senha associada a uma chave de cartão inteligente.

Comentários

Você pode usar o nome do contêiner para recuperar uma chave dentro desse contêiner.

Especifique um tipo de provedor passando um valor numérico que representa o tipo de provedor desejado. Os valores numéricos que representam os tipos de provedor padrão são definidos no arquivo de cabeçalho WinCrypt.h:

  • Para especificar um provedor compatível com o RSA algoritmo, passe um valor de 1 para o dwTypeIn parâmetro .

  • Para especificar um provedor compatível com o DSA algoritmo, passe um valor de 13 para o dwTypeIn parâmetro .

Para obter informações sobre outros valores de tipo de provedor, consulte o ProviderType campo . Para obter mais informações sobre os tipos de provedor padrão e seus comportamentos, consulte a documentação da API de Criptografia da Microsoft (CAPI).

Aplica-se a