public function identifyTargetName($username, $nt_domain, ServerChallenge $server_challenge)
    {
        // If a domain name wasn't supplied, fall back to the server challenge's supplied value
        $target_name = $nt_domain ?: $server_challenge->getTargetName();

        /**
         * If the username is in the "UPN" (Kerberos) format, the target name should be empty
         *
         * @link https://msdn.microsoft.com/en-us/library/windows/desktop/aa380525(v=vs.85).aspx
         * @link http://davenport.sourceforge.net/ntlm.html#nameVariations
         */
        if (false !== strpos($username, static::USER_PRINCIPAL_NAME_SEPARATOR)) {
            $target_name = '';
        }

        return $target_name;
    }