У веб-браузеров есть уникальный идентификатор, который можно передать на скрипты Perl? (Например, уникальные серийные продукты, которые вы покупаете в магазине)
Например: если я устанавливаю веб-браузер, может ли этот веб-браузер предоставить уникальный идентификационный идентификатор для PHP или Perl script?
Причина, по которой я ищу что-то уникальное, заключается в следующем:
-
У меня есть пользовательская база данных с именами пользователей и паролями.
-
Имена пользователей/пароли зашифровываются и устанавливаются как файлы cookie для веб-браузеров пользователей, чтобы пользователи могли войти в мое веб-приложение и выйти из него. (Каждая веб-страница, загруженная при входе в систему, просматривает файлы cookie и предоставляет доступ, если пользователь/пропуск cookie правильно)
-
Если хакеру удается украсть зашифрованное имя пользователя и парольный файл cookie у пользователя, он сможет войти в систему с помощью этих украденных зашифрованных данных.
Если браузеры всех пользователей имели уникальные идентификаторы для передачи, я мог бы записывать эти идентификаторы и сопоставлять их каждый раз, когда пользователь использует свой зашифрованный файл cookie пользователя /pass. Таким образом, если уникальный идентификатор не соответствует (то, что было записано ранее), пользователь выйдет из системы и попросит вручную снова войти в систему.
В случае похищения зашифрованного пользователя/прохода хакер не сможет войти с ним, потому что уникальный идентификатор браузера не будет соответствовать. Файл cookie пользователя /pass зашифрован, и хакер не может видеть имя пользователя или пароль. Когда уникальный идентификатор браузера не совпадает с веб-приложением, он попросит пользователя войти в систему вручную, и хакер не сможет войти в систему вручную, потому что пользователь/пароль, который он украл, зашифрован.
Использование IP-адресов - это возможное решение, но это плохое решение, потому что многие, если не большинство ISP, назначают динамические IP-адреса для интернет-подключений своих клиентов.
Использование времени также не является хорошим решением, потому что я хотел бы, чтобы пользователи оставались в системе на одном компьютере в течение нескольких недель (если они этого выбрали), чтобы сделать его удобным.
У кого-нибудь есть какие-либо решения для вышеупомянутого сценария?
Я искал способ получить что-то уникальное из браузеров, но это не представляется возможным. Это возможно или нет?