次の方法で共有


DSASignatureFormatter クラス

デジタル署名アルゴリズム (DSA: Digital Signature Algorithm) PKCS#1 Version 1.5 署名を作成します。

この型のすべてのメンバの一覧については、DSASignatureFormatter メンバ を参照してください。

System.Object
   System.Security.Cryptography.AsymmetricSignatureFormatter
      System.Security.Cryptography.DSASignatureFormatter

Public Class DSASignatureFormatter
   Inherits AsymmetricSignatureFormatter
[C#]
public class DSASignatureFormatter : AsymmetricSignatureFormatter
[C++]
public __gc class DSASignatureFormatter : public
   AsymmetricSignatureFormatter
[JScript]
public class DSASignatureFormatter extends
   AsymmetricSignatureFormatter

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

使用例

 
Imports System
Imports System.Security.Cryptography

 _

Class DSASample


    Shared Sub Main()
        Try
            'Create a new instance of DSACryptoServiceProvider.
            Dim DSA As New DSACryptoServiceProvider()

            '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 DSASignatureFormatter object and pass it the 
            'DSACryptoServiceProvider to transfer the key information.
            Dim DSAFormatter As New DSASignatureFormatter(DSA)

            'Set the hash algorithm to SHA1.
            DSAFormatter.SetHashAlgorithm("SHA1")

            'Create a signature for HashValue and return it.
            Dim SignedHash As Byte() = DSAFormatter.CreateSignature(Hash)

        Catch e As CryptographicException
            Console.WriteLine(e.Message)
        End Try
    End Sub
End Class

[C#] 
using System;
using System.Security.Cryptography;

class DSASample
{
        
    static void Main()
    {
        try
        {
            //Create a new instance of DSACryptoServiceProvider.
            DSACryptoServiceProvider DSA = new DSACryptoServiceProvider();

            //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 DSASignatureFormatter object and pass it the 
            //DSACryptoServiceProvider to transfer the key information.
            DSASignatureFormatter DSAFormatter = new DSASignatureFormatter(DSA);

            //Set the hash algorithm to SHA1.
            DSAFormatter.SetHashAlgorithm("SHA1");

            //Create a signature for HashValue and return it.
            byte[] SignedHash = DSAFormatter.CreateSignature(Hash);

        }
        catch(CryptographicException e)
        {
            Console.WriteLine(e.Message);
        }
    }

}

[C++] 
#using <mscorlib.dll>
#using <System.dll>

using namespace System;
using namespace System::Security::Cryptography;

void main() {
    try {
        //Create a new instance of DSACryptoServiceProvider.
        DSACryptoServiceProvider* DSA = new DSACryptoServiceProvider();

        //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 DSASignatureFormatter Object* and pass it the 
        //DSACryptoServiceProvider to transfer the key information.
        DSASignatureFormatter* DSAFormatter = new DSASignatureFormatter(DSA);

        //Set the hash algorithm to SHA1.
        DSAFormatter->SetHashAlgorithm(S"SHA1");

        //Create a signature for HashValue and return it.
        Byte SignedHash[] = DSAFormatter->CreateSignature(Hash);
    } catch (CryptographicException* e) {
        Console::WriteLine(e->Message);
    }
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Security.Cryptography

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

DSASignatureFormatter メンバ | System.Security.Cryptography 名前空間 | 暗号サービス