ECDiffieHellman.DeriveKeyFromHash Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Executa a derivação de chave usando um algoritmo de hash especificado.
Sobrecargas
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName) |
Executa a derivação de chave usando um algoritmo de hash especificado. |
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[]) |
Quando implementado em uma classe derivada, executa a derivação de chave usando um algoritmo de hash especificado com os dados opcionais anexados ou acrescentados. |
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)
- Origem:
- ECDiffieHellman.cs
- Origem:
- ECDiffieHellman.cs
- Origem:
- ECDiffieHellman.cs
Executa a derivação de chave usando um algoritmo de hash especificado.
public:
cli::array <System::Byte> ^ DeriveKeyFromHash(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, System::Security::Cryptography::HashAlgorithmName hashAlgorithm);
public byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
member this.DeriveKeyFromHash : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName -> byte[]
Public Function DeriveKeyFromHash (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName) As Byte()
Parâmetros
- otherPartyPublicKey
- ECDiffieHellmanPublicKey
A chave pública do outro participante.
- hashAlgorithm
- HashAlgorithmName
O algoritmo de hash a ser usado para derivar o material de chave.
Retornos
O hash do segredo compartilhado.
Exceções
A curva usada por otherPartyPublicKey
tem um tamanho diferente da curva dessa chave.
- ou -
O parâmetro hashAlgorithm
não especifica um hash.
otherPartyPublicKey
é null
.
A curva usada por otherPartyPublicKey
é diferente da curva dessa chave.
- ou -
Essa instância representa apenas uma chave pública.
Comentários
Essa sobrecarga chama o DeriveKeyFromHash método passando null
como os valores de prefixo e acréscimo.
Aplica-se a
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[])
- Origem:
- ECDiffieHellman.cs
- Origem:
- ECDiffieHellman.cs
- Origem:
- ECDiffieHellman.cs
Quando implementado em uma classe derivada, executa a derivação de chave usando um algoritmo de hash especificado com os dados opcionais anexados ou acrescentados.
public:
virtual cli::array <System::Byte> ^ DeriveKeyFromHash(System::Security::Cryptography::ECDiffieHellmanPublicKey ^ otherPartyPublicKey, System::Security::Cryptography::HashAlgorithmName hashAlgorithm, cli::array <System::Byte> ^ secretPrepend, cli::array <System::Byte> ^ secretAppend);
public virtual byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[]? secretPrepend, byte[]? secretAppend);
public virtual byte[] DeriveKeyFromHash (System.Security.Cryptography.ECDiffieHellmanPublicKey otherPartyPublicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, byte[] secretPrepend, byte[] secretAppend);
abstract member DeriveKeyFromHash : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] -> byte[]
override this.DeriveKeyFromHash : System.Security.Cryptography.ECDiffieHellmanPublicKey * System.Security.Cryptography.HashAlgorithmName * byte[] * byte[] -> byte[]
Public Overridable Function DeriveKeyFromHash (otherPartyPublicKey As ECDiffieHellmanPublicKey, hashAlgorithm As HashAlgorithmName, secretPrepend As Byte(), secretAppend As Byte()) As Byte()
Parâmetros
- otherPartyPublicKey
- ECDiffieHellmanPublicKey
A chave pública do outro participante.
- hashAlgorithm
- HashAlgorithmName
O algoritmo de hash a ser usado para derivar o material de chave.
- secretPrepend
- Byte[]
Um valor a ser precedido ao segredo derivado antes do hash.
- secretAppend
- Byte[]
Um valor a ser acrescentado ao segredo derivado antes do hash.
Retornos
O hash do segredo compartilhado após a anexação ou o acréscimo de dados, conforme solicitado.
Exceções
Uma classe derivada deve substituir esse método.
A curva usada por otherPartyPublicKey
tem um tamanho diferente da curva dessa chave.
- ou -
O parâmetro hashAlgorithm
não especifica um hash.
otherPartyPublicKey
é null
.
A curva usada por otherPartyPublicKey
é diferente da curva dessa chave.
- ou -
Essa instância representa apenas uma chave pública.
Comentários
Esse método executa internamente a Curva Elíptica Diffie-Hellman contrato de chave para produzir o segredo compartilhado (z
).
O valor retornado desse método é o resultado do uso do algoritmo de HASH(secretPrepend || z || secretAppend)
hash especificado, em ||
que significa concatenação.
Se o valor de secretPrepend
ou secretAppend
for null
, eles serão tratados como matrizes vazias.