Для отличения ботов от людей можно использовать (так как у вас мутно описаны подробности задачи, пишу все сразу): проверку поддержки Cookie, Expires, Last-Modified, проверку поддержки HTTPS, проверку возможности и правильности исполнения JS/Flash-кода, проверку соответствия версии юзер-агенты и поддерживаемым возможностям, проверку загрузки статических ресурсов, проверку информации о локальных сетевых интерфейсах через Java-апплет, поведенческий анализ (анализ записываемых действий пользователя: например, пользователь должен подвести мышь или указатель фокуса к ссылке, прежде чем перейти по ней), статистический анализ (выявление тенденций), анализ источников запросов (например, запросы из Китая на русскоязычный сайт; запросы с Ip из спам-листов; запросы с IP дата-центров; запросы с компьютеров с открытыми портами прокси), сопоставление клиентской информации с параметрами запроса (например, яваскриптом видна русская локаль и московский часовой пояс на клиенте, а запрос приходит с китайского IP с немецкой локалью в заголовках = используется прокси + средство подмены заголовков).
Для предотвращения обхода системы необходимо периодически менять анализируемые факторы (чтобы боты, приспособившиеся к старому набору факторов, выдали себя).
Умная система учитывает все эти факторы, накапливая и анализируя их в соответствие с набором правил. Вряд ли вы осилите сделать тот же объем работы, что например делает команда яндекс-рекламы. Но даже такую систему, как мне кажется, при желании можно обойти, если понимать, как она работает. И если например привлечь к этому делу человека вроде egorinsk и дать ему много денег.
Предложенный вами способ примитивен и обходится несколькими строчками кода.