Compartilhar via


Hash Classe

Definição

Fornece evidência sobre o valor de hash para um assembly. Essa classe não pode ser herdada.

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
Herança
Herança
Hash
Atributos
Implementações

Comentários

Um valor de hash representa um valor exclusivo que corresponde a um determinado conjunto de bytes. Em vez de fazer referência a um assembly por nome, versão ou outra designação, um valor de hash designa o assembly sem ambiguidade. Os nomes estão sujeitos a colisões em casos raros em que o mesmo nome é dado a um código completamente diferente. Diferentes variações de código podem ser marcadas acidentalmente com a mesma versão. No entanto, mesmo alterar um único bit resulta em um valor de hash muito diferente.

Os valores de hash são uma maneira criptograficamente segura de se referir a assemblies específicos na política sem o uso de assinaturas digitais. Um algoritmo de hash seguro foi projetado para que seja computacionalmente inviável construir um assembly diferente com o valor de hash idêntico por uma tentativa acidental ou mal-intencionada. Por padrão, há suporte para evidências dos SHA1 algoritmos de hash e MD5 , embora qualquer algoritmo de hash possa ser usado por meio de GenerateHash.

Devido a problemas de colisão com MD5 e SHA1, a Microsoft recomenda um modelo de segurança baseado em SHA256 ou superior.

Construtores

Hash(Assembly)

Inicializa uma nova instância da classe Hash.

Propriedades

MD5

Obtém o valor do hash MD5 para o assembly.

SHA1

Obtém o valor do hash SHA1 para o assembly.

SHA256

Obtém o valor do hash SHA256 para o assembly.

Métodos

Clone()

Cria um novo objeto que é uma cópia da instância atual.

Clone()

Cria um novo objeto que é uma cópia completa da instância atual.

(Herdado de EvidenceBase)
CreateMD5(Byte[])

Cria um objeto Hash que contém um valor de hash MD5.

CreateSHA1(Byte[])

Cria um objeto Hash que contém um valor de hash SHA1.

CreateSHA256(Byte[])

Cria um objeto Hash que contém um valor de hash SHA256.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GenerateHash(HashAlgorithm)

Calcula o valor de hash para o assembly usando o algoritmo de hash especificado.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsoleto.

Obtém o objeto SerializationInfo com o nome do parâmetro e informações adicionais de exceção.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do Hash atual.

Aplica-se a