Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

SHA256-Klasse

 

Veröffentlicht: Oktober 2016

Berechnet die SHA256 Hash für die Eingabedaten.

Namespace:   System.Security.Cryptography
Assembly:  mscorlib (in mscorlib.dll)


[ComVisibleAttribute(true)]
public abstract class SHA256 : HashAlgorithm

NameBeschreibung
System_CAPS_protmethodSHA256()

Initialisiert eine neue Instanz von SHA256.

NameBeschreibung
System_CAPS_pubpropertyCanReuseTransform

Ruft einen Wert ab, der angibt, ob die aktuelle Transformation wiederverwendet werden kann.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubpropertyCanTransformMultipleBlocks

Ruft beim Überschreiben in einer abgeleiteten Klasse einen Wert ab, der angibt, ob mehrere Blöcke transformiert werden können.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubpropertyHash

Ruft den Wert des berechneten Hashcodes ab.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubpropertyHashSize

Ruft die Größe des berechneten Hashcodes in Bits ab.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubpropertyInputBlockSize

Ruft beim Überschreiben in einer abgeleiteten Klasse die Eingabeblockgröße ab.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubpropertyOutputBlockSize

Ruft beim Überschreiben in einer abgeleiteten Klasse die Ausgabeblockgröße ab.(Geerbt von „HashAlgorithm“.)

NameBeschreibung
System_CAPS_pubmethodClear()

Gibt alle von der HashAlgorithm-Klasse verwendeten Ressourcen frei.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubmethodComputeHash(Byte[])

Berechnet den Hashwert für das angegebene Bytearray.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubmethodComputeHash(Byte[], Int32, Int32)

Berechnet den Hashwert für den angegebenen Bereich des angegebenen Bytearrays.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubmethodComputeHash(Stream)

Berechnet den Hashwert für das angegebene Stream-Objekt.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubmethodSystem_CAPS_staticCreate()

Erstellt eine Instanz der Standardimplementierung von SHA256.

System_CAPS_pubmethodSystem_CAPS_staticCreate(String)

Erstellt eine Instanz der angegebenen Implementierung von SHA256.

System_CAPS_pubmethodDispose()

Gibt alle von der aktuellen Instanz der HashAlgorithm-Klasse verwendeten Ressourcen frei.(Geerbt von „HashAlgorithm“.)

System_CAPS_protmethodDispose(Boolean)

Gibt die von HashAlgorithm verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird.(Geerbt von „Object“.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_protmethodHashCore(Byte[], Int32, Int32)

Leitet beim Überschreiben in einer abgeleiteten Klasse die in das Objekt geschriebenen Daten zum Errechnen des Hashs an den Hashalgorithmus weiter.(Geerbt von „HashAlgorithm“.)

System_CAPS_protmethodHashFinal()

Schließt beim Überschreiben in einer abgeleiteten Klasse die Berechnung des Hashs ab, nachdem die letzten Daten vom Kryptografiestreamobjekt verarbeitet wurden.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubmethodInitialize()

Initialisiert eine Implementierung der HashAlgorithm-Klasse.(Geerbt von „HashAlgorithm“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

System_CAPS_pubmethodTransformBlock(Byte[], Int32, Int32, Byte[], Int32)

Berechnet den Hashwert für den angegebenen Bereich des Eingabebytearrays und kopiert den angegebenen Bereich des Eingabebytearrays in den angegebenen Bereich des Ausgabebytearrays.(Geerbt von „HashAlgorithm“.)

System_CAPS_pubmethodTransformFinalBlock(Byte[], Int32, Int32)

Berechnet den Hashwert für den angegebenen Bereich des angegebenen Bytearrays.(Geerbt von „HashAlgorithm“.)

NameBeschreibung
System_CAPS_protfieldHashSizeValue

Stellt die Größe des berechneten Hashcodes in Bits dar.(Geerbt von „HashAlgorithm“.)

System_CAPS_protfieldHashValue

Stellt den Wert des errechneten Hashcodes dar.(Geerbt von „HashAlgorithm“.)

System_CAPS_protfieldState

Stellt den Zustand der Hashberechnung dar.(Geerbt von „HashAlgorithm“.)

Der Hash wird als eindeutiger Wert fester Größe, die eine große Datenmenge darstellt verwendet. Hashwerte von zwei Sätzen von Daten sollte übereinstimmen, wenn die entsprechenden Daten ebenfalls identisch. Kleine Änderungen an den Daten führen große unvorhersehbare Änderungen der Hash.

Die Hashgröße für die SHA256 Algorithmus beträgt 256 Bits.

Dies ist eine abstrakte Klasse. Die einzige Implementierung dieser Klasse ist SHA256Managed.

Das folgende Beispiel berechnet den SHA-256-Hash für alle Dateien in einem Verzeichnis.

using System;
using System.IO;
using System.Security.Cryptography;
using System.Windows.Forms;

public class HashDirectory
{

    [STAThreadAttribute]
    public static void Main(String[] args)
    {
        string directory = "";
        if (args.Length < 1)
        {
            FolderBrowserDialog fbd = new FolderBrowserDialog();
            DialogResult dr = fbd.ShowDialog();
            if (dr == DialogResult.OK)
                directory = fbd.SelectedPath;
            else
            {
                Console.WriteLine("No directory selected.");
                return;
            }
        }
        else
            directory = args[0];
        try
        {
            // Create a DirectoryInfo object representing the specified directory.
            DirectoryInfo dir = new DirectoryInfo(directory);
            // Get the FileInfo objects for every file in the directory.
            FileInfo[] files = dir.GetFiles();
            // Initialize a SHA256 hash object.
            SHA256 mySHA256 = SHA256Managed.Create();

            byte[] hashValue;
            // Compute and print the hash values for each file in directory.
            foreach (FileInfo fInfo in files)
            {
                // Create a fileStream for the file.
                FileStream fileStream = fInfo.Open(FileMode.Open);
                // Be sure it's positioned to the beginning of the stream.
                fileStream.Position = 0;
                // Compute the hash of the fileStream.
                hashValue = mySHA256.ComputeHash(fileStream);
                // Write the name of the file to the Console.
                Console.Write(fInfo.Name + ": ");
                // Write the hash value to the Console.
                PrintByteArray(hashValue);
                // Close the file.
                fileStream.Close();
            }
            return;
        }
        catch (DirectoryNotFoundException)
        {
            Console.WriteLine("Error: The directory specified could not be found.");
        }
        catch (IOException)
        {
            Console.WriteLine("Error: A file in the directory could not be accessed.");
        }
    }
    // Print the byte array in a readable format.
    public static void PrintByteArray(byte[] array)
    {
        int i;
        for (i = 0; i < array.Length; i++)
        {
            Console.Write(String.Format("{0:X2}", array[i]));
            if ((i % 4) == 3) Console.Write(" ");
        }
        Console.WriteLine();
    }
}

.NET Framework
Verfügbar seit 1.1
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: