RSAPKCS1SignatureDeformatter クラス
アセンブリ: mscorlib (mscorlib.dll 内)
構文
<ComVisibleAttribute(True)> _ Public Class RSAPKCS1SignatureDeformatter Inherits AsymmetricSignatureDeformatter
[ComVisibleAttribute(true)] public class RSAPKCS1SignatureDeformatter : AsymmetricSignatureDeformatter
[ComVisibleAttribute(true)] public ref class RSAPKCS1SignatureDeformatter : public AsymmetricSignatureDeformatter
このクラスは、RSA アルゴリズムを使用して作成されたデジタル署名を検証するために使用されます。
RSA アルゴリズムを使用してデジタル署名を作成するには、RSAPKCS1SignatureFormatter を使用します。
RSAPKCS1SignatureFormatter クラスを使用してデジタル署名を作成した後、RSAPKCS1SignatureDeformatter クラスを使用してその署名を検証する方法を次のコード例に示します。
Imports System Imports System.Security.Cryptography _ Class RSASample Shared Sub Main() Try 'Create a new instance of RSACryptoServiceProvider. Dim RSA As New RSACryptoServiceProvider() 'The hash to sign. Dim Hash As Byte() = {59, 4, 248, 102, 77, 97, 142, 201, 210, 12, 224, 93, 25, 41, 100, 197, 213, 134, 130, 135} 'Create an RSAOPKCS1SignatureFormatter object and pass it the 'RSACryptoServiceProvider to transfer the key information. Dim RSAFormatter As New RSAPKCS1SignatureFormatter(RSA) 'Set the hash algorithm to SHA1. RSAFormatter.SetHashAlgorithm("SHA1") 'Create a signature for HashValue and return it. Dim SignedHash As Byte() = RSAFormatter.CreateSignature(Hash) 'Create an RSAPKCS1SignatureDeformatter object and pass it the 'RSACryptoServiceProvider to transfer the key information. Dim RSADeformatter As New RSAPKCS1SignatureDeformatter(RSA) RSADeformatter.SetHashAlgorithm("SHA1") 'Verify the hash and display the results to the console. If RSADeformatter.VerifySignature(Hash, SignedHash) Then Console.WriteLine("The signature was verified.") Else Console.WriteLine("The signature was not verified.") End If Catch e As CryptographicException Console.WriteLine(e.Message) End Try End Sub End Class
using System; using System.Security.Cryptography; class RSASample { static void Main() { try { //Create a new instance of RSACryptoServiceProvider. RSACryptoServiceProvider RSA = new RSACryptoServiceProvider(); //The hash to sign. byte[] Hash = {59,4,248,102,77,97,142,201,210,12,224,93,25,41,100,197 ,213,134,130,135}; //Create an RSAOPKCS1SignatureFormatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureFormatter RSAFormatter = new RSAPKCS1SignatureFormatter(RSA); //Set the hash algorithm to SHA1. RSAFormatter.SetHashAlgorithm("SHA1"); //Create a signature for HashValue and return it. byte[] SignedHash = RSAFormatter.CreateSignature(Hash); //Create an RSAPKCS1SignatureDeformatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureDeformatter RSADeformatter = new RSAPKCS1SignatureDeformatter(RSA); RSADeformatter.SetHashAlgorithm("SHA1"); //Verify the hash and display the results to the console. if(RSADeformatter.VerifySignature(Hash, SignedHash)) { Console.WriteLine("The signature was verified."); } else { Console.WriteLine("The signature was not verified."); } } catch(CryptographicException e) { Console.WriteLine(e.Message); } } }
#using <System.dll> using namespace System; using namespace System::Security::Cryptography; int main() { try { //Create a new instance of RSACryptoServiceProvider. RSACryptoServiceProvider^ RSA = gcnew RSACryptoServiceProvider; //The hash to sign. array<Byte>^Hash = {59,4,248,102,77,97,142,201,210,12,224,93,25,41,100 ,197,213,134,130,135}; //Create an RSAOPKCS1SignatureFormatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureFormatter^ RSAFormatter = gcnew RSAPKCS1SignatureFormatter( RSA ); //Set the hash algorithm to SHA1. RSAFormatter->SetHashAlgorithm( "SHA1" ); //Create a signature for HashValue and return it. array<Byte>^SignedHash = RSAFormatter->CreateSignature( Hash ); //Create an RSAPKCS1SignatureDeformatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureDeformatter^ RSADeformatter = gcnew RSAPKCS1SignatureDeformatter( RSA ); RSADeformatter->SetHashAlgorithm( "SHA1" ); //Verify the hash and display the results to the console. if ( RSADeformatter->VerifySignature( Hash, SignedHash ) ) { Console::WriteLine( "The signature was verified." ); } else { Console::WriteLine( "The signature was not verified." ); } } catch ( CryptographicException^ e ) { Console::WriteLine( e->Message ); } }
import System.*; import System.Security.Cryptography.*; class RSASample { public static void main(String[] args) { try { // Create a new instance of RSACryptoServiceProvider. RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); //The hash to sign. ubyte hash[] = {59, 4, 248, 102, 77, 97, 142, 201, 210, 12, 224, 93, 25, 41, 100, 197, 213, 134, 130, 135}; // Create an RSAOPKCS1SignatureFormatter object and pass it the // RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureFormatter rsaFormatter = new RSAPKCS1SignatureFormatter(rsa); // Set the hash algorithm to SHA1. rsaFormatter.SetHashAlgorithm("SHA1"); // Create a signature for HashValue and return it. ubyte signedHash[] = rsaFormatter.CreateSignature(hash); // Create an RSAPKCS1SignatureDeformatter object and pass it the // RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureDeformatter rsaDeformatter = new RSAPKCS1SignatureDeformatter(rsa); rsaDeformatter.SetHashAlgorithm("SHA1"); // Verify the hash and display the results to the console. if (rsaDeformatter.VerifySignature(hash, signedHash)) { Console.WriteLine("The signature was verified."); } else { Console.WriteLine("The signature was not verified."); } } catch (CryptographicException e) { Console.WriteLine(e.get_Message()); } } //main } //RSASample
System.Security.Cryptography.AsymmetricSignatureDeformatter
System.Security.Cryptography.RSAPKCS1SignatureDeformatter
プラットフォーム
Windows 98, Windows 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
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
RSAPKCS1SignatureDeformatter コンストラクタ ()
アセンブリ: mscorlib (mscorlib.dll 内)
構文
解説
プラットフォーム
Windows 98, Windows 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
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
RSAPKCS1SignatureDeformatter コンストラクタ
オーバーロードの一覧
名前 | 説明 |
---|---|
RSAPKCS1SignatureDeformatter () | RSAPKCS1SignatureDeformatter クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
RSAPKCS1SignatureDeformatter (AsymmetricAlgorithm) | 指定したキーを使用して、RSAPKCS1SignatureDeformatter クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
RSAPKCS1SignatureDeformatter コンストラクタ (AsymmetricAlgorithm)
アセンブリ: mscorlib (mscorlib.dll 内)
構文
解説
使用例
RSAPKCS1SignatureFormatter クラスを使用してデジタル署名を作成した後、RSAPKCS1SignatureDeformatter クラスを使用してその署名を検証する方法を次のコード例に示します。
Imports System Imports System.Security.Cryptography _ Class RSASample Shared Sub Main() Try 'Create a new instance of RSACryptoServiceProvider. Dim RSA As New RSACryptoServiceProvider() 'The hash to sign. Dim Hash As Byte() = {59, 4, 248, 102, 77, 97, 142, 201, 210, 12, 224, 93, 25, 41, 100, 197, 213, 134, 130, 135} 'Create an RSAOPKCS1SignatureFormatter object and pass it the 'RSACryptoServiceProvider to transfer the key information. Dim RSAFormatter As New RSAPKCS1SignatureFormatter(RSA) 'Set the hash algorithm to SHA1. RSAFormatter.SetHashAlgorithm("SHA1") 'Create a signature for HashValue and return it. Dim SignedHash As Byte() = RSAFormatter.CreateSignature(Hash) 'Create an RSAPKCS1SignatureDeformatter object and pass it the 'RSACryptoServiceProvider to transfer the key information. Dim RSADeformatter As New RSAPKCS1SignatureDeformatter(RSA) RSADeformatter.SetHashAlgorithm("SHA1") 'Verify the hash and display the results to the console. If RSADeformatter.VerifySignature(Hash, SignedHash) Then Console.WriteLine("The signature was verified.") Else Console.WriteLine("The signature was not verified.") End If Catch e As CryptographicException Console.WriteLine(e.Message) End Try End Sub End Class
using System; using System.Security.Cryptography; class RSASample { static void Main() { try { //Create a new instance of RSACryptoServiceProvider. RSACryptoServiceProvider RSA = new RSACryptoServiceProvider(); //The hash to sign. byte[] Hash = {59,4,248,102,77,97,142,201,210,12,224,93,25,41,100,197 ,213,134,130,135}; //Create an RSAOPKCS1SignatureFormatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureFormatter RSAFormatter = new RSAPKCS1SignatureFormatter(RSA); //Set the hash algorithm to SHA1. RSAFormatter.SetHashAlgorithm("SHA1"); //Create a signature for HashValue and return it. byte[] SignedHash = RSAFormatter.CreateSignature(Hash); //Create an RSAPKCS1SignatureDeformatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureDeformatter RSADeformatter = new RSAPKCS1SignatureDeformatter(RSA); RSADeformatter.SetHashAlgorithm("SHA1"); //Verify the hash and display the results to the console. if(RSADeformatter.VerifySignature(Hash, SignedHash)) { Console.WriteLine("The signature was verified."); } else { Console.WriteLine("The signature was not verified."); } } catch(CryptographicException e) { Console.WriteLine(e.Message); } } }
#using <System.dll> using namespace System; using namespace System::Security::Cryptography; int main() { try { //Create a new instance of RSACryptoServiceProvider. RSACryptoServiceProvider^ RSA = gcnew RSACryptoServiceProvider; //The hash to sign. array<Byte>^Hash = {59,4,248,102,77,97,142,201,210,12,224,93,25,41,100 ,197,213,134,130,135}; //Create an RSAOPKCS1SignatureFormatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureFormatter^ RSAFormatter = gcnew RSAPKCS1SignatureFormatter( RSA ); //Set the hash algorithm to SHA1. RSAFormatter->SetHashAlgorithm( "SHA1" ); //Create a signature for HashValue and return it. array<Byte>^SignedHash = RSAFormatter->CreateSignature( Hash ); //Create an RSAPKCS1SignatureDeformatter object and pass it the //RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureDeformatter^ RSADeformatter = gcnew RSAPKCS1SignatureDeformatter( RSA ); RSADeformatter->SetHashAlgorithm( "SHA1" ); //Verify the hash and display the results to the console. if ( RSADeformatter->VerifySignature( Hash, SignedHash ) ) { Console::WriteLine( "The signature was verified." ); } else { Console::WriteLine( "The signature was not verified." ); } } catch ( CryptographicException^ e ) { Console::WriteLine( e->Message ); } }
import System.*; import System.Security.Cryptography.*; class RSASample { public static void main(String[] args) { try { // Create a new instance of RSACryptoServiceProvider. RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); //The hash to sign. ubyte hash[] = {59, 4, 248, 102, 77, 97, 142, 201, 210, 12, 224, 93, 25, 41, 100, 197, 213, 134, 130, 135}; // Create an RSAOPKCS1SignatureFormatter object and pass it the // RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureFormatter rsaFormatter = new RSAPKCS1SignatureFormatter(rsa); // Set the hash algorithm to SHA1. rsaFormatter.SetHashAlgorithm("SHA1"); // Create a signature for HashValue and return it. ubyte signedHash[] = rsaFormatter.CreateSignature(hash); // Create an RSAPKCS1SignatureDeformatter object and pass it the // RSACryptoServiceProvider to transfer the key information. RSAPKCS1SignatureDeformatter rsaDeformatter = new RSAPKCS1SignatureDeformatter(rsa); rsaDeformatter.SetHashAlgorithm("SHA1"); // Verify the hash and display the results to the console. if (rsaDeformatter.VerifySignature(hash, signedHash)) { Console.WriteLine("The signature was verified."); } else { Console.WriteLine("The signature was not verified."); } } catch (CryptographicException e) { Console.WriteLine(e.get_Message()); } } //main } //RSASample
Windows 98, Windows 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
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
RSAPKCS1SignatureDeformatter メソッド
パブリック メソッド
名前 | 説明 | |
---|---|---|
Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) | |
GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) | |
GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) | |
ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) | |
SetHashAlgorithm | オーバーライドされます。 署名の検証に使用するハッシュ アルゴリズムを設定します。 | |
SetKey | オーバーライドされます。 署名の検証に使用する公開キーを設定します。 | |
ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) | |
VerifySignature | オーバーロードされます。 オーバーライドされます。 署名を検証します。 |
名前 | 説明 | |
---|---|---|
Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) | |
MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |
RSAPKCS1SignatureDeformatter メンバ
RSA PKCS #1 Version 1.5 の署名を検証します。
RSAPKCS1SignatureDeformatter データ型で公開されるメンバを以下の表に示します。
パブリック コンストラクタ
パブリック メソッド
名前 | 説明 | |
---|---|---|
Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) | |
GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) | |
GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) | |
ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) | |
SetHashAlgorithm | オーバーライドされます。 署名の検証に使用するハッシュ アルゴリズムを設定します。 | |
SetKey | オーバーライドされます。 署名の検証に使用する公開キーを設定します。 | |
ToString | 現在の Object を表す String を返します。 (Object から継承されます。) | |
VerifySignature | オーバーロードされます。 オーバーライドされます。 署名を検証します。 |
名前 | 説明 | |
---|---|---|
Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) | |
MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |
- RSAPKCS1SignatureDeformatterのページへのリンク