def METHOD_NAME(self, signature, hashData, padding=None, hashAlg=None,
           saltLen=None):
    """Verify the passed-in bytes with the signature.
    This verifies a DSA signature on the passed-in data.
    :type signature: bytearray
    :param signature: The signature.
    :type hashData: bytearray
    :param hashData: The value which will be verified.
    :type padding: str
    :param padding: Ignored, present for API compatibility with RSA
    :type hashAlg: str
    :param hashAlg: Ignored, present for API compatibility with RSA
    :type saltLen: str
    :param saltLen: Ignored, present for API compatibility with RSA
    :rtype: bool
    :returns: Whether the signature matches the passed-in data.
    """
    N = numBits(self.q)
    digest_len = len(hashData) * 8
    digest = bytesToNumber(hashData)
    if N < digest_len:
        digest >>= digest_len - N
    signature = compatHMAC(signature)
    # get r, s keys
    if not signature:
        return False
    body, rest = remove_sequence(signature)
    if rest:
        return False
    r, rest = remove_integer(body)
    s, rest = remove_integer(rest)
    if rest:
        return False
    if gmpyLoaded or GMPY2_LOADED:
        r = mpz(r)
        s = mpz(s)
    # check the signature
    if 0 < r < self.q and 0 < s < self.q:
        w = invMod(s, self.q)
        u1 = (digest * w) % self.q
        u2 = (r * w) % self.q
        v = ((powMod(self.g, u1, self.p) * \
              powMod(self.public_key, u2, self.p)) % self.p) % self.q
        return r == v
    return False