Полагаю, вы не хотите использовать какие-либо аппаратные устройства, такие как считыватель смарт-карт, считыватель отпечатков пальцев или генератор токенов.
Если вы используете сгенерированные на стороне сервера уникальные идентификаторы, такие как GUID, вам нужен способ их распространения среди клиентов, чтобы быть уверенным, что с клиентом все в порядке. В этом случае вы будете отслеживать выданные GUID и использовать их для аутентификации клиента. Или вы можете принять сгенерированные на стороне клиента идентификаторы, используя известный алгоритм, основанный на фактах, предоставленных в процессе регистрации (имя, адрес, адрес электронной почты и т. Д.).
В обоих случаях вы должны хранить ключ / факт на клиентском компьютере, что является еще одной проблемой.