lukoie, вот что удалось найти... пока - лучший из всех просмотренных (можно всё что угодно вставлять в страницу: аудио, видео, файлы, javascript и т.д.)...
DTX,
1. Для браузера - всё верно: храним в куках! Там самое безопасное и надёжное место.
Как я уже выше сообщал, что есть куки с флагом "secure" и httpOnly. Их данные недоступны никаким веб-скриптам. Они используются только для сервера в HTTP-заголовках. Сервер может сказать браузеру: "Установи", "Дай значение", "Удали". При этом через document.cookie - будет невозможно получить куки из Cookie's-хранилища с флагом httpOnly и secure-cookie.
HttpOnly Optional
HTTP-only cookies aren't accessible via JavaScript through the Document.cookie property, the XMLHttpRequest and Request APIs to mitigate attacks against cross-site scripting (XSS).
2. ID-устройства - это уникальный идентификатор.
2.1 В приложениях - обычно это hash на основе данных HW-компонентов, которые нельзя поменять. В Android - есть ADID. Полный список параметров, по которым мы можем формировать HASH - можно увидеть здесь
2.2 Для браузера - применяется технология отпечатка пальца "fingerprint". Подробно, можно почитать здесь. Она используется крупными финансовыми организациями и банками!