Поздравляю! Вы взялись просто за колоссальной сложности задачу. Крупнейшие корпорации тратят тысячи человеко-часов, годами корпят над этой темой, и при этом количество ложноположительных и ложноотрицательных срабатываний их систем защиты просто раздражающе велико.
Методов тоже уйма. Время захода, работы, отпечатки браузеров, диапазоны IP-адресов - это на поверхности, очень просто и нифига не продуктивно. В конечном итоге оно выливается в то, что клиент где-нить в командировке с IP местного провайдера и выданного на работе бука вынужден бороться с вашей системой. Сейчас копают в других направлениях. Например мышь. Для многих не очевидно, но паттерны движений курсора мыши уникальны для каждого человека. Там ведь не только наведение на элементы интерфейса, т.е. продуктивные движения, еще очень показательны т.н. холостые движения - к примеру, то, как вы крутите курсор, пока ждете загрузку чего-то. Только вот человек не постоянен. Стоит вам научиться выделять человека из прочих по тому, как он работает мышью, в каких ритмах набирает текст и т.п... как он ррраз! и заболел. И его вялое тыканье в элементы интерфейса начисто смажет вам всю картину) А если у него сдохла мышь, и он начинает пользоваться тачпадом?)
К чему это я. Сам буду рад услышать тех, кто в теме, но не рассчитывайте увидеть в ответах что-то действительно стоящее.