Freigeben über


Hash Klasse

Definition

Stellt einen Beweis für den Hashwert einer Assembly bereit. Diese Klasse kann nicht vererbt werden.

public ref class Hash sealed : System::Security::Policy::EvidenceBase, System::Runtime::Serialization::ISerializable
public ref class Hash sealed : System::Runtime::Serialization::ISerializable
public sealed class Hash : System.Security.Policy.EvidenceBase, System.Runtime.Serialization.ISerializable
[System.Serializable]
public sealed class Hash : System.Runtime.Serialization.ISerializable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class Hash : System.Runtime.Serialization.ISerializable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class Hash : System.Security.Policy.EvidenceBase, System.Runtime.Serialization.ISerializable
type Hash = class
    inherit EvidenceBase
    interface ISerializable
[<System.Serializable>]
type Hash = class
    interface ISerializable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Hash = class
    interface ISerializable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Hash = class
    inherit EvidenceBase
    interface ISerializable
Public NotInheritable Class Hash
Inherits EvidenceBase
Implements ISerializable
Public NotInheritable Class Hash
Implements ISerializable
Vererbung
Vererbung
Hash
Attribute
Implementiert

Hinweise

Ein Hashwert stellt einen eindeutigen Wert dar, der einem bestimmten Bytesatz entspricht. Anstatt auf eine Assembly anhand des Namens, der Version oder einer anderen Bezeichnung zu verweisen, gibt ein Hashwert die Assembly ohne Mehrdeutigkeit an. Namen unterliegen In seltenen Fällen, in denen der gleiche Name für völlig anderen Code vergeben wird, konflikte. Verschiedene Codevarianten können versehentlich mit derselben Version markiert werden. Selbst das Ändern eines einzelnen Bits führt jedoch zu einem sehr anderen Hashwert.

Hashwerte sind eine kryptografisch sichere Möglichkeit, ohne digitale Signaturen auf bestimmte Assemblys in der Richtlinie zu verweisen. Ein sicherer Hashalgorithmus ist so konzipiert, dass es rechnerisch nicht möglich ist, eine andere Assembly mit dem identischen Hashwert entweder durch einen versehentlichen oder böswilligen Versuch zu erstellen. Standardmäßig werden Beweise aus den SHA1 Hashalgorithmen und MD5 unterstützt, obwohl jeder Hashalgorithmus über GenerateHashverwendet werden kann.

Aufgrund von Kollisionsproblemen mit MD5 und SHA1 empfiehlt Microsoft ein Sicherheitsmodell, das auf SHA256 oder höher basiert.

Konstruktoren

Hash(Assembly)

Initialisiert eine neue Instanz der Hash-Klasse.

Eigenschaften

MD5

Ruft den MD5-Hashwert für die Assembly ab.

SHA1

Ruft den SHA1-Hashwert für die Assembly ab.

SHA256

Ruft den SHA256-Hashwert für die Assembly ab.

Methoden

Clone()

Erstellt ein neues Objekt, das eine Kopie der aktuellen Instanz darstellt.

Clone()

Erstellt ein neues Objekt, das eine vollständige Kopie der aktuellen Instanz darstellt.

(Geerbt von EvidenceBase)
CreateMD5(Byte[])

Erstellt ein Hash-Objekt mit einem MD5-Hashwert.

CreateSHA1(Byte[])

Erstellt ein Hash-Objekt mit einem SHA1-Hashwert.

CreateSHA256(Byte[])

Erstellt ein Hash-Objekt mit einem SHA256-Hashwert.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GenerateHash(HashAlgorithm)

Berechnet mithilfe des angegebenen Hashalgorithmus den Hashwert für die Assembly.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetObjectData(SerializationInfo, StreamingContext)
Veraltet.

Ruft das SerializationInfo-Objekt mit dem Parameternamen und zusätzlichen Informationen zur Ausnahme ab.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgenentsprechung der aktuellen Hash zurück.

Gilt für: