Module jcifs

Interface SMBSigningDigest

All Known Implementing Classes:
SMB1SigningDigest, Smb2SigningDigest

public interface SMBSigningDigest
Interface for SMB message signing and verification operations. Provides cryptographic signing capabilities for SMB protocol messages to ensure message integrity and authenticity using MAC (Message Authentication Code) algorithms.
Author:
mbechler
  • Method Details

    • sign

      void sign(byte[] data, int offset, int length, CommonServerMessageBlock request, CommonServerMessageBlock response)
      Performs MAC signing of the SMB. This is done as follows. The signature field of the SMB is overwritten with the sequence number; The MD5 digest of the MAC signing key + the entire SMB is taken; The first 8 bytes of this are placed in the signature field.
      Parameters:
      data - The data.
      offset - The starting offset at which the SMB header begins.
      length - The length of the SMB data starting at offset.
      request - request message
      response - response message
    • verify

      boolean verify(byte[] data, int offset, int length, int extraPad, CommonServerMessageBlock msg)
      Performs MAC signature verification. This calculates the signature of the SMB and compares it to the signature field on the SMB itself.
      Parameters:
      data - The data.
      offset - The starting offset at which the SMB header begins.
      length - The length of the data to verify
      extraPad - extra padding to include in signature
      msg - The message to verify
      Returns:
      whether verification was unsuccessful