Criação de um hash CALG_SSL3_SHAMD5

Para criar um hash CALG_SSL3_SHAMD5

  1. Usando a metodologia CryptoAPI padrão, crie um hash MD5 e SHA dos dados de destino.
  2. Concatene os dois hashes, com o valor MD5 mais à esquerda e o valor SHA mais à direita. Isso resulta em um valor de 36 bytes (16 bytes + 20 bytes).
  3. Obtenha um identificador para um objeto de hash chamando CryptCreateHash com CALG_SSL3_SHAMD5 passado no parâmetro Algid.
  4. Defina o valor de hash com uma chamada para CryptSetHashParam. Os valores de hash concatenados são passados como um BYTE* no parâmetro pbData e o valor HP_HASHVAL deve ser passado no parâmetro dwParam. Chamar CryptHashData usando o identificador retornado por CryptCreateHash na etapa 3 falhará.
  5. Chame CryptSignHash para gerar a assinatura.
  6. Chame CryptDestroyHash para destruir o objeto de hash.