CspParameters コンストラクタ (Int32, String)
指定したプロバイダの種類コードと名前を使用して、CspParameters クラスの新しいインスタンスを初期化します。
名前空間: System.Security.Cryptography
アセンブリ: mscorlib (mscorlib.dll 内)
構文
'宣言
Public Sub New ( _
dwTypeIn As Integer, _
strProviderNameIn As String _
)
'使用
Dim dwTypeIn As Integer
Dim strProviderNameIn As String
Dim instance As New CspParameters(dwTypeIn, strProviderNameIn)
public CspParameters (
int dwTypeIn,
string strProviderNameIn
)
public:
CspParameters (
int dwTypeIn,
String^ strProviderNameIn
)
public CspParameters (
int dwTypeIn,
String strProviderNameIn
)
public function CspParameters (
dwTypeIn : int,
strProviderNameIn : String
)
適用できません。
パラメータ
- dwTypeIn
作成するプロバイダの種類を示すプロバイダの種類コード。
- strProviderNameIn
プロバイダ名。
解説
CspParameters コンストラクタを使用して、プロバイダの種類と名前を指定します。
プロバイダの種類を指定するには、目的のプロバイダの種類を表す数値を渡します。既定プロバイダの種類を表す数値は、WinCrypt.h ヘッダー ファイルで定義されます。
RSA アルゴリズムと互換性のあるプロバイダを指定するには、値 1 を dwTypeIn パラメータに渡します。
DSA アルゴリズムと互換性のあるプロバイダを指定するには、値 13 を dwTypeIn パラメータに渡します。
他のプロバイダの種類の値については、ProviderType フィールドを参照してください。既定のプロバイダの種類とそれらの動作の詳細については、MSDN ライブラリで CAPI (Microsoft Cryptography API) に関するドキュメントを参照してください。
使用例
CspParameters クラスを使用してスマート カード暗号化サービス プロバイダを選択するコード例を次に示します。その後で、スマート カードを使用してデータに署名し、そのデータを検証します。
Imports System
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, "SHA1")
Console.WriteLine("Signature : " + BitConverter.ToString(sig))
' Verify the data using the Smart Card CryptoGraphic Provider.
Dim verified As Boolean = rsa.VerifyData(data, "SHA1", sig)
Console.WriteLine("Verified")
End Sub
End Module
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, "SHA1");
Console.WriteLine("Signature : " + BitConverter.ToString(sig));
// Verify the data using the Smart Card CryptoGraphic Provider.
bool verified = rsa.VerifyData(data, "SHA1", sig);
Console.WriteLine("Verified : " + verified);
}
}
}
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"SHA1" );
Console::WriteLine( L"Signature : {0}", BitConverter::ToString( sig ) );
// Verify the data using the Smart Card CryptoGraphic Provider.
bool verified = rsa->VerifyData( data, L"SHA1", sig );
Console::WriteLine( L"Verified : {0}", verified );
}
プラットフォーム
Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition
Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。
バージョン情報
.NET Framework
サポート対象 : 3.0,2.0,1.1,1.0
.NET Compact Framework
サポート対象 : 2.0
参照
関連項目
CspParameters クラス
CspParameters メンバ
System.Security.Cryptography 名前空間