byte[] signAndEncryptMessage( final byte[] cleartextMessage ) throws NTLMEngineException
        {
            final byte[] encryptedMessage = encrypt( cleartextMessage );
            final byte[] signature = computeSignature( cleartextMessage );
            final byte[] outMessage = new byte[signature.length + encryptedMessage.length];
            System.arraycopy( signature, 0, outMessage, 0, signature.length );
            System.arraycopy( encryptedMessage, 0, outMessage, signature.length, encryptedMessage.length );
            advanceMessageSequence();
            return outMessage;
        }
Creates the LMv2 Response from the given hash, client data, and Type 2
challenge.

@param hash
           The NTLMv2 Hash.
@param clientData
           The client data (blob or client challenge).
@param challenge
           The server challenge from the Type 2 message.

@return The response (either NTLMv2 or LMv2, depending on the client
        data).
httpclient5/src/main/java/org/apache/hc/client5/http/impl/auth/NTLMEngineImpl.java