署名を作成します。
オーバーロードの一覧
指定したデータの RSA PKCS #1 署名を作成します。
[Visual Basic] Overloads Overrides Public Function CreateSignature(Byte()) As Byte()
[C++] public: unsigned char CreateSignature(unsigned char __gc[]) __gc[];
[JScript] public override function CreateSignature(Byte[]) : Byte[];
AsymmetricSignatureFormatter から継承されます。
[Visual Basic] Overloads Public Overridable Function CreateSignature(HashAlgorithm) As Byte()
[C++] public: virtual unsigned char CreateSignature(HashAlgorithm*) __gc[];
[JScript] public function CreateSignature(HashAlgorithm) : Byte[];
使用例
[Visual Basic, C#, C++] メモ ここでは、CreateSignature のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。
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)
Catch e As CryptographicException
Console.WriteLine(e.Message)
End Try
End Sub
End Class
[C#]
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);
}
catch(CryptographicException e)
{
Console.WriteLine(e.Message);
}
}
}
[C++]
#using <mscorlib.dll>
#using <System.dll>
using namespace System;
using namespace System::Security::Cryptography;
int 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(S"SHA1");
//Create a signature for HashValue and return it.
Byte SignedHash[] = RSAFormatter->CreateSignature(Hash);
} catch (CryptographicException* e) {
Console::WriteLine(e->Message);
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
参照
RSAPKCS1SignatureFormatter クラス | RSAPKCS1SignatureFormatter メンバ | System.Security.Cryptography 名前空間