ECDiffieHellman.DeriveKeyFromHash Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Realiza a derivação de chaves usando um algoritmo de hash especificado.
Sobrecargas
| Name | Description |
|---|---|
| DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName) |
Realiza a derivação de chaves usando um algoritmo de hash especificado. |
| DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[]) |
Quando implementado numa classe derivada, realiza a derivação de chaves usando um algoritmo de hash especificado com dados opcionais prependidos ou acrescentados. |
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName)
Realiza a derivação de chaves 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 da outra parte.
- hashAlgorithm
- HashAlgorithmName
O algoritmo de hash a usar para derivar o material-chave.
Devoluções
O desastro do segredo partilhado.
Exceções
A curva usada por otherPartyPublicKey tem um tamanho diferente da curva desta chave.
-ou-
O hashAlgorithm parâmetro não especifica um hash.
otherPartyPublicKey é null.
A curva usada por otherPartyPublicKey é diferente da curva desta chave.
-ou-
Esta instância representa apenas uma chave pública.
Observações
Esta sobrecarga chama o DeriveKeyFromHash método que passa null como os valores de prependência e anexação.
Aplica-se a
DeriveKeyFromHash(ECDiffieHellmanPublicKey, HashAlgorithmName, Byte[], Byte[])
Quando implementado numa classe derivada, realiza a derivação de chaves usando um algoritmo de hash especificado com dados opcionais prependidos 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);
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 da outra parte.
- hashAlgorithm
- HashAlgorithmName
O algoritmo de hash a usar para derivar o material-chave.
- secretPrepend
- Byte[]
Um valor para antepender ao segredo derivado antes de fazer o hash.
- secretAppend
- Byte[]
Um valor a adicionar ao segredo derivado antes do hash.
Devoluções
O hash do segredo partilhado após pré-inserir ou anexar dados conforme solicitado.
Exceções
Uma classe derivada deve sobrepor-se a este método.
A curva usada por otherPartyPublicKey tem um tamanho diferente da curva desta chave.
-ou-
O hashAlgorithm parâmetro não especifica um hash.
otherPartyPublicKey é null.
A curva usada por otherPartyPublicKey é diferente da curva desta chave.
-ou-
Esta instância representa apenas uma chave pública.
Observações
Este método executa internamente a Curva Elíptica Diffie-Hellman concordância de chaves para produzir o segredo partilhado (z).
O valor de retorno deste método é o resultado da HASH(secretPrepend || z || secretAppend) utilização do algoritmo de hash especificado, onde || significa concatenação.
Se o valor de secretPrepend ou secretAppend for null, são tratados como arrays vazios.