MD5 Classe

Definizione

Rappresenta la classe astratta dalla quale ereditano tutte le implementazioni dell'algoritmo hash MD5.

public ref class MD5 abstract : System::Security::Cryptography::HashAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type MD5 = class
    inherit HashAlgorithm
type MD5 = class
    inherit HashAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type MD5 = class
    inherit HashAlgorithm
Public MustInherit Class MD5
Inherits HashAlgorithm
Ereditarietà
Derivato
Attributi

Commenti

Le funzioni hash eseguono il mapping di stringhe binarie di lunghezza arbitraria a piccole stringhe binarie di lunghezza fissa. Una funzione hash crittografica ha la proprietà che è infeasible a livello di calcolo per trovare due input distinti che eseguino l'hash allo stesso valore; ovvero gli hash di due set di dati devono corrispondere se anche i dati corrispondenti corrispondono. Le piccole modifiche apportate ai dati comportano modifiche imprevedibili e di grandi dimensioni nell'hash.

Le dimensioni hash per l'algoritmo MD5 sono di 128 bit.

I ComputeHash metodi della MD5 classe restituiscono l'hash come matrice di 16 byte. Si noti che alcune implementazioni MD5 producono un hash in formato esadecimale di 32 caratteri. Per interagire con tali implementazioni, formattare il valore restituito dei ComputeHash metodi come valore esadecimale.

Nota

A causa di problemi di collisione con MD5/SHA1, Microsoft consiglia SHA256 o SHA512. È consigliabile usare la SHA256 classe o la SHA512 classe anziché la MD5 classe . Usare MD5 solo per la compatibilità con applicazioni e dati legacy.

Costruttori

MD5()

Inizializza una nuova istanza di MD5.

Campi

HashSizeInBits

Dimensioni hash prodotte dall'algoritmo MD5, in bit.

HashSizeInBytes

Dimensioni hash prodotte dall'algoritmo MD5, in byte.

HashSizeValue

Rappresenta la dimensione in bit del codice hash calcolato.

(Ereditato da HashAlgorithm)
HashValue

Rappresenta il valore del codice hash calcolato.

(Ereditato da HashAlgorithm)
State

Rappresenta lo stato del calcolo hash.

(Ereditato da HashAlgorithm)

Proprietà

CanReuseTransform

Ottiene un valore che indica se è possibile riutilizzare la trasformazione corrente.

(Ereditato da HashAlgorithm)
CanTransformMultipleBlocks

Quando ne viene eseguito l'override in una classe derivata, ottiene un valore che indica se è possibile trasformare più blocchi.

(Ereditato da HashAlgorithm)
Hash

Ottiene il valore del codice hash calcolato.

(Ereditato da HashAlgorithm)
HashSize

Ottiene la dimensione in bit del codice hash calcolato.

(Ereditato da HashAlgorithm)
InputBlockSize

Quando ne viene eseguito l'override in una classe derivata, ottiene la dimensione del blocco di input.

(Ereditato da HashAlgorithm)
OutputBlockSize

Quando ne viene eseguito l'override in una classe derivata, ottiene la dimensione del blocco di output.

(Ereditato da HashAlgorithm)

Metodi

Clear()

Rilascia tutte le risorse usate dalla classe HashAlgorithm.

(Ereditato da HashAlgorithm)
ComputeHash(Byte[])

Consente di calcolare il valore hash della matrice di byte specificata.

(Ereditato da HashAlgorithm)
ComputeHash(Byte[], Int32, Int32)

Consente di calcolare il valore hash dell'area specifica della matrice di byte specificata.

(Ereditato da HashAlgorithm)
ComputeHash(Stream)

Calcola il valore hash per l'oggetto Stream specificato.

(Ereditato da HashAlgorithm)
ComputeHashAsync(Stream, CancellationToken)

Calcola in modo asincrono il valore hash per l'oggetto Stream specificato.

(Ereditato da HashAlgorithm)
Create()

Consente di creare un'istanza dell'implementazione predefinita dell'algoritmo hash MD5.

Create(String)

Consente di creare un'istanza dell'implementazione specificata dell'algoritmo hash MD5.

Dispose()

Rilascia tutte le risorse usate dall'istanza corrente della classe HashAlgorithm.

(Ereditato da HashAlgorithm)
Dispose(Boolean)

Rilascia le risorse non gestite usate da HashAlgorithm e, facoltativamente, le risorse gestite.

(Ereditato da HashAlgorithm)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
HashCore(Byte[], Int32, Int32)

Quando ne viene eseguito l'override in una classe derivata, indirizza i dati scritti nell'oggetto verso l'algoritmo hash per il calcolo dell'hash.

(Ereditato da HashAlgorithm)
HashCore(ReadOnlySpan<Byte>)

Consente di indirizzare i dati scritti nell'oggetto nell'algoritmo hash per il calcolo dell'hash.

(Ereditato da HashAlgorithm)
HashData(Byte[])

Calcola l'hash dei dati usando l'algoritmo MD5.

HashData(ReadOnlySpan<Byte>)

Calcola l'hash dei dati usando l'algoritmo MD5.

HashData(ReadOnlySpan<Byte>, Span<Byte>)

Calcola l'hash dei dati usando l'algoritmo MD5.

HashData(Stream)

Calcola l'hash di un flusso usando l'algoritmo MD5.

HashData(Stream, Span<Byte>)

Calcola l'hash di un flusso usando l'algoritmo MD5.

HashDataAsync(Stream, CancellationToken)

Calcola in modo asincrono l'hash di un flusso usando l'algoritmo MD5.

HashDataAsync(Stream, Memory<Byte>, CancellationToken)

Calcola in modo asincrono l'hash di un flusso usando l'algoritmo MD5.

HashFinal()

Quando ne viene eseguito l'override in una classe derivata, finalizza il calcolo hash una volta che gli ultimi dati sono stati elaborati dall'algoritmo hash crittografico.

(Ereditato da HashAlgorithm)
Initialize()

Reimposta lo stato iniziale dell'algoritmo hash.

(Ereditato da HashAlgorithm)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
TransformBlock(Byte[], Int32, Int32, Byte[], Int32)

Consente di calcolare il valore hash dell'area specifica della matrice di byte di input e di copiare una determinata area della matrice di byte di input nell'area specifica della matrice di byte di output.

(Ereditato da HashAlgorithm)
TransformFinalBlock(Byte[], Int32, Int32)

Calcola il valore hash dell'area specifica della matrice di byte specificata.

(Ereditato da HashAlgorithm)
TryComputeHash(ReadOnlySpan<Byte>, Span<Byte>, Int32)

Tenta di calcolare il valore hash per la matrice di byte specificata.

(Ereditato da HashAlgorithm)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, Int32)

Tenta di calcolare l'hash dei dati usando l'algoritmo MD5.

TryHashFinal(Span<Byte>, Int32)

Tenta di finalizzare il calcolo hash dopo l'elaborazione degli ultimi dati da parte dell'algoritmo hash.

(Ereditato da HashAlgorithm)

Implementazioni dell'interfaccia esplicita

IDisposable.Dispose()

Rilascia le risorse non gestite usate da HashAlgorithm e, facoltativamente, le risorse gestite.

(Ereditato da HashAlgorithm)

Si applica a

Vedi anche