Creazione di un hash CALG_SSL3_SHAMD5

Per creare un hash CALG_SSL3_SHAMD5

  1. Usando la metodologia CryptoAPI standard, creare sia un hash MD5 che un hash SHA dei dati di destinazione.
  2. Concatenare i due hash, con il valore MD5 più a sinistra e il valore SHA più a destra. Ciò comporta un valore a 36 byte (16 byte + 20 byte).
  3. Ottenere un handle per un oggetto hash chiamando CryptCreateHash con CALG_SSL3_SHAMD5 passato nel parametro Algid.
  4. Impostare il valore hash con una chiamata a CryptSetHashParam. I valori hash concatenati vengono passati come BYTE* nel parametro pbData e il valore HP_HASHVAL deve essere passato nel parametro dwParam . La chiamata a CryptHashData usando l'handle restituito da CryptCreateHash nel passaggio 3 avrà esito negativo.
  5. Chiamare CryptSignHash per generare la firma.
  6. Chiamare CryptDestroyHash per eliminare definitivamente l'oggetto hash.