MD5 Usage

The key required during runtime by the RC4 encryption algorithm that encrypts and decrypts the protected portion of the SAMPR_ENCRYPTED_USER_PASSWORD_NEW.Buffer is specified by the following pseudocode.

 CALL MD5Init(md5context)
 CALL MD5Update(md5context, SAMPR_USER_PASSWORD_NEW.ClearSalt, 16)
 CALL MD5Update(md5context, user-session-key, 16)
 CALL MD5Final(md5context)


  • MD5Init, MD5Update, and MD5Final are predicates/functions defined in [RFC1321].

  • md5Context is a variable of type MD5_CTX, as specified in [RFC1321].

  • user-session-key is the 16-byte SMB session key obtained as specified in section