Научная статья на тему 'ИСПОЛЬЗОВАНИЕ ЛАТЕНТНО-СЕМАНТИЧЕСКОГО АНАЛИЗА ПРИ ПОДГОТОВКЕ ДАННЫХ ДЛЯ ИДЕНТИФИКАЦИИ АНОНИМНЫХ ПОЛЬЗОВАТЕЛЕЙ ПО ЦИФРОВЫМ ОТПЕЧАТКАМ'

ИСПОЛЬЗОВАНИЕ ЛАТЕНТНО-СЕМАНТИЧЕСКОГО АНАЛИЗА ПРИ ПОДГОТОВКЕ ДАННЫХ ДЛЯ ИДЕНТИФИКАЦИИ АНОНИМНЫХ ПОЛЬЗОВАТЕЛЕЙ ПО ЦИФРОВЫМ ОТПЕЧАТКАМ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
207
33
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ФИНГЕРПРИНТ / БАЗА ДАННЫХ / НАБОР ДАННЫХ / ТЕКСТОВЫЕ ДАННЫЕ / КАТЕГОРИАЛЬНЫЕ ДАННЫЕ / ПРИЗНАКИ / ТЕХНОЛОГИИ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Шелухин О. И., Ванюшина А. В., Желнов М. С.

Введение. Серьезной проблемой методики отслеживания и идентификации пользователей при помощи браузера (Фингерпринтинг (ФП) веббраузера ) является то, что цифровые отпечатки в следствие обновлений системы, плагинов, браузеров, установки различных программ, а с ними и шрифтов со временем изменяются. Набор анализируемых атрибутов может содержать как числовые, так и категориальные (в основном не числовые) значения, например такие параметры, как useragent, webgl, canvas и т.д. поэтому требуется предварительно произвести их кодирование для удобства дальнейшей обработки. Для этих целей все большее применение находят технологии искусственного интеллекта включающие в себя обработку текста на естественных языках NLP (Natural language Processing). Целью исследования является анализ особенностей реализации латентносемантического анализа (англ. Latent semantic analysis, LSA) при подготовке и анализе данных ФП для идентификации анонимных пользователей. Методы. Проведен сравнительный анализ распространенных способов преобразования категориальных значений атрибутов фингерпринтов (ФП) в числовые OneHotEncoding, LabelEncoder, LSA для идентификации анонимных пользователей с заранее известным количеством возможных значений категориальных признаков. Результаты. Показано преимущество LSA над OneHotEncoding, LabelEncoder. Показана возможность реализации кластеризации в рамках задачи идентификации пользователей путем визуализации ФП (ФП) относительно скрытых семантических тем с помощью модели латентного семантического анализа LSA. Показано, что при малом количестве скрытых тем с помощью полученных векторов объектов и векторов терминов для оценки схожести двух ФП предложенная модель позволяет уверенно отнести входной ФП к общей теме. С помощью полученных векторов объектов и векторов терминов для оценки схожести двух объектов ФП появляется возможность применять различные меры близости кластеров: евклидово расстояние, косинусная мера и т.д.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

USE OF LATENT-SEMANTIC ANALYSIS IN PREPARATION OF DATA FOR IDENTIFICATION OF ANONYMOUS USERS BY DIGITAL FINGERPRINTS

Digital fingerprints changings over time as a result of sys tem, plugins, browsers, installation of various programs updates and fonts is a serious problem in the method of tracking and identifying users using a browser (Fingerprinting (FP) of a web browser). The set of parsed attributes can contain both metrical and categorical (mostly nonnumeric) values, for example, parameters such as user-agent, webgl, canvas, etc. Considering this, it is required to pre-encode them for the convenience of further processing. For these purposes, artificial intelligence technologies, including the processing of text in natural languages NLP (Natural Language Processing), are widely used. The aim of the research is to analyze the peculiarities of the implementation of latent-semantic analysis (LSA) in the preparation and analysis of FP data for the identification of anonymous users. Methods. A comparative analysis of the common ways of converting categorical values of fingerprint attributes (FP) into numeric One-Hot-Encoding, Label-Encoder, LSA for identifying anonymous users with a predetermined number of possible values of categorical features is carried out. Results. The advantage of the LSA algorithm over One-Hot-Encoding, Label-Encoder is shown. The possibility of clustering implementation within the framework of the user identification problem by visualizing FP (FP) relative to hidden semantic topics using the LSA model of latent semantic analysis is shown. It is shown that with a small number of hid den topics using the obtained vectors of objects and vectors of terms for assessing the similarity of two FPs, the proposed model allows us to confidently classify the input FP to a com mon topic. With the help of the obtained vectors of objects and vectors of terms for assessing the similarity of two FP objects, it becomes possible to apply various measures of cluster proximity: Euclidean distance, cosine measure, etc.

Текст научной работы на тему «ИСПОЛЬЗОВАНИЕ ЛАТЕНТНО-СЕМАНТИЧЕСКОГО АНАЛИЗА ПРИ ПОДГОТОВКЕ ДАННЫХ ДЛЯ ИДЕНТИФИКАЦИИ АНОНИМНЫХ ПОЛЬЗОВАТЕЛЕЙ ПО ЦИФРОВЫМ ОТПЕЧАТКАМ»

doi: 10.36724/2409-5419-2022-14-1-36-44

использование латентно-семантического анализа при подготовке данных для идентификации анонимных пользователей по цифровым отпечаткам

ШЕЛУХИН Олег Иванович1

ВАНЮШИНА Анна Вячеславовна2

ЖЕЛНОВ

Максим Сергеевич3

Сведения об авторах:

1д.т.н., профессор, заведующий кафедрой "Информационная безопасность", Московский Технический Университет Связи и Информатики (МТУСИ), Москва, Россия, [email protected]

АННОТАЦИЯ

Введение. Серьезной проблемой методики отслеживания и идентификации пользователей при помощи браузера (Фингерпринтинг (ФП) веб-браузера ) является то, что цифровые отпечатки в следствие обновлений системы, плагинов, браузеров, установки различных программ, а с ними и шрифтов со временем изменяются. Набор анализируемых атрибутов может содержать как числовые, так и категориальные (в основном не числовые) значения, например такие параметры, как user-agent, webgl, canvas и т.д. поэтому требуется предварительно произвести их кодирование для удобства дальнейшей обработки. Для этих целей все большее применение находят технологии искусственного интеллекта включающие в себя обработку текста на естественных языках NLP (Natural Language Processing). Целью исследования является анализ особенностей реализации латентно-семантического анализа (англ. Latent semantic analysis, LSA) при подготовке и анализе данных ФП для идентификации анонимных пользователей. Методы. Проведен сравнительный анализ распространенных способов преобразования категориальных значений атрибутов фингерпринтов (ФП) в числовые One-Hot-Encoding, Label-Encoder, LSA для идентификации анонимных пользователей с заранее известным количеством возможных значений категориальных признаков. Результаты. Показано преимущество LSA над One-Hot-Encoding, Label-Encoder. Показана возможность реализации кластеризации в рамках задачи идентификации пользователей путем визуализации ФП (ФП) относительно скрытых семантических тем с помощью модели латентного семантического анализа LSA. Показано, что при малом количестве скрытых тем с помощью полученных векторов объектов и векторов терминов для оценки схожести двух ФП предложенная модель позволяет уверенно отнести входной ФП к общей теме. С помощью полученных векторов объектов и векторов терминов для оценки схожести двух объектов ФП появляется возможность применять различные меры близости кластеров: евклидово расстояние, косинусная мера и т.д.

2к.т.н., доцент кафедры "Информационная безопасность", Московский Технический Университет Связи и Информатики (МТУСИ), Москва, Россия, [email protected]

3студент магистратуры, Московский Технический Университет Связи и Информатики (МТУСИ), Москва, Россия, [email protected]

КЛЮЧЕВЫЕ СЛОВА: фингерпринт, база данных, набор данных, текстовые данные, категориальные данные, признаки, технологии искусственного интеллекта.

Для цитирования: Шелухин О.И., Ванюшина А.В., Желнов М.С. Использование латентно-семантического анализа при подготовке данных для идентификации анонимных пользователей по цифровым отпечаткам // Наукоемкие технологии в космических исследованиях Земли. 2022. Т. 14. № 1. С. 36-44. doi: 10.36724/2409-5419-2022-14-1-36-44

Введение

В сфере информационных технологий фингерпринтом (ФП) (fingerprint) принято называть возможность однозначно идентифицировать анонимного пользователя через его устройство, настройки, программное обеспечение и другие пользовательские характеристики [1, 3,4, 5]. На основе нескольких типов данных: языковые настройки, установленные шрифты системы, часовой пояс, разрешение экрана, установленные плагины, цифровые версии программ и т. д. - создается цельная картина браузера, которая по своему принципу напоминает отпечаток пальца.

Учитывая, что набор анализируемых данных ФП может содержать текстовые или категориальные значения (в основном нечисловые значения), например такие параметры, как user-agent, webgl, canvas и т.д., требуется предварительно произвести их кодирование для удобства дальнейшей обра-

Исходный набор,

ботки. Для этих целей все большее применение находят технологии искусственного интеллекта, включающие в себя обработку текста на естественных языках NLP (Natural Language Processing) [10, 11].

Целью исследования является анализ особенностей реализации латентно-семантического анализа (англ. Latent semantic analysis, LSA) при подготовке и анализе данных ФП для идентификации анонимных пользователей

Формирование базы данных

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

Таблица 1

гных фингерпринтов

№ Признак Описание № Признак Описание

1 user-agent Характеристика клиентского приложения 37 document dump functions Список собственных функций и типов реализуемых глобально доступными объектами

2 language Системный язык 38 document dump types

3 color depth Глубина цвета 39 style dump

4 device memory Объем ОЗУ 40 error messages Список ошибок браузера

5 hardware concurrency Многозадачность 41 silverlight installed Наличие SilverLight

6 resolution Текущее разрешение экрана 42 silverlight supported Поддержка SilverLight

7 available resolution Доступное разрешение экрана 43 silverlight versions Версия SilverLight

8 timezone offset Сдвиг часового пояса 44 ActiveBorder Фактическое значение RGB цветов CSS элементов, отображаемых экраном пользователя

9 session storage Наличие API HTML5 (хранение ключей/значений в браузере) 45 GrayText

10 local storage Браузерное хранилище 46 ActiveCaption

11 indexed db Наличие API HTML5 (постоянное хранение данных внутри браузера) 47 AppWorkspace

12 open database Поддержка OpenDB 48 Background

13 cpu class Разрядность ЦПУ 49 ButtonFace

14 navigator platform Платформа устройства 50 ButtonHighlight

15 regular plugins Список плагинов браузера 51 ButtonShadow

16 canvas Результат canvas изображения на странице 52 ButtonText

17 webgl Результат рендеринга ЗБ-графики 53 CaptionText

18 webgl vendor Производитель/модель ГПУ 54 ThreeDShadow

19 adblock Наличие блокировщика рекламы 55 Highlight

20 has lied languages Факт ложного языка 56 HighlightText

21 has lied resolution Факт ложного разрешения экрана 57 InactiveBorder

22 has lied os Факт ложной ОС 58 InactiveCaption

23 has lied browser Факт ложного браузера 59 InactiveCaptionText

24 touch support Поддержка тач-пада 60 InfoBackground

25 js fonts Список установленных шрифтов JS 61 InfoText

26 audio fp Результат обработки аудио 62 Menu

27 activex objects Наличие ActiveXObject 63 MenuText

28 ms components Наличие компонентов MS 64 Scrollbar

29 navigator dump functions Список собственных функций и типов реализуемых глобально доступными объектами 65 ThreeDDarkShadow

30 navigator dump types 66 ThreeDFace

31 toolbar dump functions 67 ThreeDHighlight

32 toolbar dump types 68 ThreeDLightShadow

33 crypto dump functions 69 Window

34 crypto dump types 70 WindowFrame

35 window dump functions 71 WindowText

36 window dump types

За основу скрипта для сбора информации была взята модификация открытой программной библиотеки fingerprintjs2. Fingerprintjs2 представляет собой открытую программную библиотеку JavaScript, которая может использоваться для извлечения уникальных характеристик браузера и технического устройства [6,7,8,9]. Разработанный скрипт позволил зафиксировать 37 параметров, некоторые из которых разделяются на подпараметры, что в общей сумме позволяет занести 71 параметр в базу данных, приведенные в таблице 1.

Разработанный скрипт позволяет извлекать 71 параметр браузера и технического устройства. Наличие и фиксация в базе данных всех подпараметров делают отпечаток устройства более уникальным. Для последующего детального анализа собранных данных требуется зафиксировать максимально возможное количество доступных к сбору параметров.

Универсальным решением для формирования базы данных (БД) является сочетание MySQL и языка программирования PHP. Таким образом, было собрано 6233 записей об устройствах.

Экспортируем полученные данный из БД в формат JSON (рис.1) выбранный из соображений универсальности по отношению к обработчикам информации.

2 {'datetiioe":'2021-01-22 OO:15:2T,"user_lp-:-37.151.14O.53-,-FF_lia3h-:"0eOecf43ab71tOba62ecc9£(bcO6de2b-,

3 ("datetime":'2021-01-22 00:15:29\"userip-:"77.51.70.75","FP_haah":"QeQ8cf43ab71f8ba62ecc9ffM6de2b","(

4 ("datetime":"2021-01-22 00:15:34","user_ip":"37.151.148.53","FP_liash":"dd365272fl£8dc80350f5d647cl£db7f",

5 Cdatetime-:'2021-01-22 00:15:36',"u3er_ip,:,5.44.168.176',"JP_ha3f:,£df842d79f79e362b3ccH3862364ei:12",'

6 ("datetime":"2021-01-22 00:15:39","u3er_ip-:-77.51.70.75","E'P_ha3li":"dl0362d5a5ccbl55830e629£c6a3a£eli","(

7 ("datetime":"2021-01-22 00:15:43","userip-:-5.44.168.176","ГР hash":"d204b5d46ffcaSa6a2SS20013d9412cfV

В ("datetime":"2021-01-22 00:15:44","u3er_ip":"a5.249.45.76","JP_ha3b":"f6f28cMba07bdd2c4a0235de3bec2B9",'

9 ("datetime"¡"2021-81-22 e0:15:45","u3er_ip-:488.163.20.37","FP_lia3h":"10aebb5601c557aee2ba3£al6200£cad',

Рис. 1. Фрагмент экспортируемой БД формата JSON Подготовка данных для обучения модели

Наиболее распространенными способами преобразования категориальных значений в числовые являются два: One-Hot-Encoding и Label-Encoder [12,13].

Label Encoder кодирование включает в себя преобразование каждого значения в столбце в число (рис. 2).

Label Encoding

user-agent (Text) user-agenï (label)

Mazils 54 0

Chrome 3.0.1 1

Safari 5.1 2

Chrome 3 0.5 3

Mozila 54 0

Chrome 3,0 5 3

Рис. 2. Пример кодирования меток классов Label Encoder

Произведем данную операцию над подготовленными ранее базах данных используя библиотеку 8шКй-1еагп. Перед выполнением кодирования произведем исключение дубликатов строк. После процесса кодирования, присвоим каждой уникальной записи свой уникальный id, что необходимо для обучения модели. На рисунке 3 представлен процесс кодирования каждой записи столбца меткой класса.

test .drop_dupUcatesO

le = preprocessing.LabelEncoderO Tar column_name in test.columns:

test[colUinn_naiiie] = le.rit_transforuittest[colouin_naine]) for i in test.index:

test.locCiJ in ]]-iflta)

Рис. 3. Кодирование меток классов Label Encoder

После кодирования меток класса, по каждому параметру формируется набор данных в виде таблицы значений меток классов, представленной на рисунке 4.

user-agent I language | can va б | webgl | webgl_vendor| adblock| hasliedlanguages

1062 23 647 310 144 1

779 23 1013 209 415

576 23 111 972 8

922 20 914 276 415

1062 23 647 310 144

565 23 292 185 415

1022 23 647 818 164

4 29 283 973 4

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

S72 20 26S 1257 2S1

712 20 522 1076 370

1021 20 53 7 165

475 23 428 971 7

Рис. 4. Фрагмент данных, после кодирования меток

После кодирования информации данные разделяются на тестовые и тренировочные ['user_agent':'WindowsText'] и ожидаемые значения ['id'].

Недостатком метода является использование последовательности чисел никак не связанных с типом данных. Так, например, между различными значениями canvas может не быть никакой связи, но сравнение чисел их характеризующих может ошибочно привести к выводу, что canvas второй записи имеет более высокий приоритет над canvas первой записи.

One-Hot-Encoder кодирование состоит в замене категориальной переменной комбинацией двоичных переменных, принимающих значение 0 или 1, для указания, присутствует ли в наблюдении определенная категория, как это показано на рисунке 5.

Кодер может создавать к двоичных переменных для каждой категориальной переменной, где k-количество уникальных категорий.

One n:-' cr:ccir;i

Id user-agent (Text) user-agent_ Mozila54 user-agent_ Chrome 3.0.1 user-agent_ Safari 5.1 user-agent_ Chrome 3.0.5

1 Mmitott 1 0 0 0

2 Chrome 3.0.1 0 1 0 0

3 Safari 5.1 ф 0 0 1 0

4 Chrome 3.0.5 0 0 0 1

1 Mozila54 1 0 0 0

4 Cftrortie 5.0.5 0 0 0 1

Рис. 5. Пример кодирования меток классов One-Hot-Encoder

Произведем данную операцию над подготовленными ранее базах данных используя библиотеку Pandas. Функция get dummies выполняет ohe-hot кодирование только категориальных данных, при этом численные данные остаются без изменений. Перед выполнением кодирования производится исключение дубликатов строк (рис. 6).

test=test. drop_dup~LIcates O features = pd . get_dumnnies (test) feature_list = list[features.columns)

for i in features.index:

features . Loc [i^t :' ]] = int{i)

Рис. 6. Кодирование меток классов One-Hot Encoder

Кодировщик берёт столбец с категориальными данными, который был предварительно закодирован в признак, и создаёт для него несколько новых столбцов. Категории заменяются на единицы и нули, в зависимости от того, какому столбцу какое значение соответствует (рис. 7).

После кодирования данные разделяются на тестовые и тренировочные данные ['colordepth:' WindowText rgb (53, 64, 74)'] и ожидаемые значения ['id'].При этом размер закодированного датафрейма увеличивается с первоначальных 71 колонки до 5622 , что является особенностью данного способа кодирования.

Проблема использования данного способа кодирования в задаче идентификации пользователя заключается в неопределенном количестве значений категориальных признаков. Каждое новое значение признака, ранее не встречавшееся при обучении модели не будет ею восприниматься, так как нарушится размерность входных данных.

Данный метод кодирования целесообразно использовать в закрытых компьютерных системах для идентификации пользователей с заранее известным количеством возможных значений категориальных признаков.

LSI Embendings

Для реализации вышеупомянутых методов кодирования предлагается использовать векторизацию признаков ФП. Для этого необходимо получить числовые признаки, полезные для решения задач классификации (обучение с учителем) или кластеризации (обучение без учителя) [1,2].

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

Термин «эмбеддинг» (от англ. embedding - вложение) используется в описаниях систем искусственного интеллекта. Эмбеддинг в NLP означает процесс или, чаще, результат процесса преобразования языковой сущности - слова, предложения, параграфа или целого текста в набор чисел - числовой вектор.

ID loca l_E.t orage indexed _db open_dat aba ве audiojp uber-agent_"Mozilla/5.0 (Macintosh; Intel Mac OSX 10_15_3| AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/S37.}6" u5er-agent_Mozilla/S.O (Linux; Android 10; A7S) AppleWebKit/SÎ7.36 (KHTML, like Gecko) Chrome/S7.0.42S0.141 Mobile Salari/537.36 user-agent_Mozilla/S.O (Linux; Android 10; AQM-LX1; HMSCore 5.1.0.309] AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 HuaweiBrowser/11.0.4.302 Mobile Salari/537.36 uber-agent_Mozilla/5.0 (Linux; Android 10; ART-L29; HMSCore 5.0.S.300) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 HuaweiBrowser/11.0.3.304 Mobile Safari/SÎ7.36

0 124,043 0 0 0 0

1 122,428 0 0 0 0

2 124,081 0 0 0 0

Î 124,043 0 0 0 0

4 124,043 0 0 0 0

S 122,201 0 0 0 0

6 124,043 0 0 0 0

7 124,081 0 0 0 1

S 124,043 0 0 0 0

9 124,043 0 0 0 0

10 124,043 0 0 0 0

11 124,081 0 0 0 0

12 124,043 0 0 0 0

13 124,043 0 0 0 0

Рис. 7. One-Hot-Encoder кодирование исходных данных

Рис. 8. Схема кодирования эмбеддингов

С этой целью каждый объект (все параметры одного фингерпринта) преобразовывается в строку определенного вида как это показано на рисунке 9 [8].

Varl Name Va г2 Name

Value 1 Value 2

характерные факторы (тематики), присущие всем документам и терминам.

Алгоритм кластеризации, основанный на использовании LSA ориентирован на группировании данных по схожести примеров функций. Например, путем оценки евклидова или манхэттенского расстояния между выборками данных.

LSA, также известный как латентное/неявное, семантическое индексирование LSI latent semantic indexing, использует модель "мешок слов" (BoW англ. bag-of-words), которая приводит к матрице терминов-документов (вхождение терминов в документ) [14,15]. Строки представляют собой термины, а столбцы-документы. LSA изучает скрытые темы, выполняя матричную декомпозицию матрицы терминов документа с использованием разложения по сингулярным значениям как это показано на рисунке 11.

"Уаг1Мате_\/а1ие1 Уаг2Мате_\/а1ие 2..." Рис. 9. Преобразование категориальных данных объекта в строку

Каждой уникальной записи присваивается идентификатор ¿ё (рис. 10).

ûefjc^bEM^^

new„data^list = [] ccTUmjiris = listidata. columns) for line in tqdmCdata.values): newj-ine -

for pair in zip(columns, line):

new_line = new.line + r {pair [Q]]-..{pair [1]}-new_data_list.append(new_line) return new_data_List

cateqorical_cols = [col for col in test2»columns if col ! =

X_train =■ test[categorical_cols] y_train t= test['i ■ J X_test = test2[categorical_cols] y_test = test2[,in,J

Рис. 10. Присвоение уникальным записям

Важно знать, что перед созданием эмбеддингов требуется очистить исходные данные от пустых строк и дубликатов.

Рассматривая полученные строки ФП как некоторые тексты, будем искать их тематические профили используя латентный семантический анализ Ь8А [14,15]. Ь8А — это метод обработки информации на естественном языке (КЪР,) анализирующий взаимосвязь между библиотекой документов и терминами, в них встречающимися, и выявляющий

X=UDVT*Xk =UkDk VTk Рис. 11. Разложение по сингулярным значениям

Здесь к - количество тем, то есть размерность обрабатываемых векторов.

С полученными в результате разложения профилями (VkDk) уже можно работать, как с векторами. Они и будут являться эмбеддингами объектов.

Для построения модели LSI требуются словарь и корпус. Словарь, содержит идентификаторы как ключи, а слова в документе как значения. Корпус содержит сам идентификатор слова и количество раз, которое это слово встречается в каждом документе. В результате формируется матрица документ-термин как показано на рисунке 12.

Рис. 12. Преобразование документов в матрицу «документ-термин»

Матрица «документ-термин» содержит подсчет всех слов в корпусе для каждого документа (документ в рассматриваемом случае - это 1 ФП устройства).

[: to, i (0, 1 (17, 125, (33, (41, (4 9, (57,

:2

(37, (61,

(69, (77, (85, (52, (100, (107, (114,

>, (1, 1 ), (10, 1 2),(18, 1) , (26, 1) , (34, 1) r(42, 1), (50, l):, >, (6, i) 1) , (33, 1), (62, 1), (70, l), na, 11,(66, 1), (53,

11, (101

1] , (10S

2): ]

>, (2, 1}, (3, 1] , (4

), (11, 1), (12, 1),

1),(1?, 1), (20, 1) ,

21 , (27, 1), (2:, 21,

li , (35, li , (36, 1) ,

11,(43, 1), (44, li,

1), (51, 1),(52, 1),

, (6, 1) , (14, 5) , ¡16 li , (40, 5) , (54, 2) , 1) , (63, 3) , (64, 1) ,

1) , (71, 1) , (72, 1) , 11 , (70, 1) , (3 0, 11 , li , (87, li , (85, 3) ,

2) , (94, li , (95, li , 1) , {102, 1} , (103, II , (100, 1} , (110,

, 1)

(13, (21, (20, (37, (45, (53,

, 1)

(56, (65, (7 3, (31, (3 0,

(56, 1), 1),

(5, li, 1), (14, 1), (22, 1) , (30, 1) , (3;, 1) , (46, 1), (54,

, ¡17, 5), 1) , (53, 1), (66, 1), (74, 1) , (32, 1) , (03, 1), (57, (104, 1), (111, 1),

¡6, 2), (7, 1}, (S, li,

3) , (15, 1) , (16, 1) ,

1) , (23, 1) , (24, 1) ,

1) , (31, 1) , (32, li ,

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1) , (35, 1) , (40, 2i ,

1) , (47, 2) , (48, li ,

1) , (55, 1) , (56, 1),

¡28, 4) , (32, 1) , 1) , (55, 1) , (63, li, 1) , (67, 2) , (6;, 1) , 1), (75, 1), (76, 1), 1) , (83, 1) , (34, 11 , 1) , (01, 1), 1) , (5;, 1), (55, 1), (105, 11,{10 6, 1), ¡112, II,{113, 1},

матрицы М и разлагает ее на 3 матрицы и, V и Б [18]. Матрица и соотносит термины с темами, V связывает документы с темами, а в - диагональная матрица сингулярных значений, которые сортируются от наиболее важной (наибольшего значения) темы до наименее важной (наименьшего значения) темы.

В результате размерность матрицы до к измерений уменьшается, где к - число, указанное пользователем. В этом контексте к будет числом тем, которые будут сохранены, а все остальные темы будут отброшены. Преобразование матрицы «документ-термин» ё в конечную матрицу эмбе-дингов документов иллюстрируется на рисунке 14.

Рис. 13. Корпус модели

В корпусе каждый список представляет собой документ, содержащий кортежи идентификатора слова и его частоту (рис.13). Например, в первом списке:(0,1) означает, что идентификатор слова 0 встречается один раз в первом документе; (1,1) идентификатор слова 1 встречается один раз в первом документе.

Во втором списке (4,2) означает, что идентификатор слова 4 встречается 2 раза во втором документе; (6,1) означает, что идентификатор слова 6 встречается 1 раз во втором документе; и т.д.

Таким образом применение способа LSI заключается в том, что он использует матрицу терминов документа, где строки - это уникальные слова, которые появляются в корпусе, а столбцы - это разные документы в корпусе.

В результате происходит уменьшения размерности путем декомпозиции вещественной матрицы, называемое сингулярным разложением (Singular Value Decomposition, SVD),

* » . ji „ " — rf. "Ц» * ... Ш * » * — * * т. •щ: *

SI 32 S3 S4 S5

dog 11111

Матрица i-et 110 10

"Документ-Терми н" сои (J 0 1 0 1

lion 0 0 1 1 0

tiger .110 0 1.

— Bpwapi терминов

^циничные значения

Внпоры документа

Сингулярное разложение (SVD] С с»,. =

\

Уменьшение с».»

размерности с г до к к

сп

ъ. к

с*.

к»..

Рис. 14. Преобразование матрицы «документ-термин» d в конечную матрицу эмбедцингов документов

(I)

Ь)

R

L 1 1 »

d) с)

Рис. 15. Визуализация фингерпринтов согласно обученной модели (num topics =

70) LSI

Для визуализации 70% объектов многомерных данных ФП использован алгоритм машинного обучения для визуализации t-SNE(t-distributed Stochastic Neighbor Embedding) [16, 17].

На рисунке 15 представлена визуализация ФП относительно скрытых семантических тем с использованием алгоритма t-SNE. Каждая из 70 тем представляет собой кластер. На рисунке 15а - красным квадратом выделен один из кластеров относящийся к n-теме, к которому относятся ФП устройства. При масштабировании рассматриваемого кластера, на рисунке 156 видно скопление ФП. При дальнейшем масштабировании группировок ФП внутри рассматриваемого кластера (рис. 15(c) - 15(d)) можно сделать вывод, что данные группировки имеют максимальные сходства между собой относительно п-темы.

При увеличении количества скрытых тем (т.е. кластеров модели) возрастают и минимальные найденные дистанции [19,20]. Это связано с тем, что при увеличении количества тем повышается размерность пространства. При низком количестве скрытых тем (от 25до 100), модель без труда относит входной фингерпринт к общей теме модели.

Заключение

Проведенный сравнительный анализ распространенных способов преобразования категориальных значений атрибутов фингерпринтов (ФП) в числовые для идентификации анонимных пользователей с заранее известным количеством возможных значений категориальных признаков показал преимущество LSA над One-Hot-Encoding, Label-Encoder.

Показана возможность реализации кластеризации в рамках задачи идентификации пользователей путем визуализации ФП (ФП) относительно скрытых семантических тем с помощью модели латентного семантического анализа LSA. Показано, что с помощью полученных векторов объектов и векторов терминов для оценки схожести двух ФП можно при малом количестве скрытых тем предложенная модель позволяет уверенно отнести входной ФП к общей теме. С помощью полученных векторов объектов и векторов терминов для оценки схожести двух объектов ФП появляется возможность применять различные меры близости кластеров: евклидово расстояние, косинусная мера и т.д.

Литература

1. Шелухин О.И., Осин А.В. Безопасность сетевых приложений / Под ред. О. И. Шелухина. М.: Горячая линия - Телеком, 2021. 224 с.

2. Шелухин О.И., Ерохин С.Д., Полковников М.В. Технологии машинного обучения в сетевой безопасности / Под ред. О. И. Шелухина. М.: Горячаялиния-Телеком, 2021. 360 с.

3. Шелухин О.И., Желнов М.С. Идентификация анонимных пользователей ВЕБ-ресурса на основе нечетких хэш-функций цифровых отпечатков устройств. REDS: Телекоммуникационные устройства и системы 2021. №2. С. 57-63.

4. Шелухин О.И., Ванюшина А.В. Анонимизация и деаноними-зация пользователей интернет-порталов. М.: МТУСИ, 2021. 47 с.

5. Liu Q., LiuX. Wang, Z. Jia. Fingerprinting web browser fortrac-ing anonymous web attackers. In IEEE First International Conference on Data Sciencein Cyberspace, DSC 2016, Changsha, China, June 13-16, 2016, pp. 222-229. IEEE Computer Society, 2016. 4.

6. S. Luangmaneerote, E. Zaluska, and L. Carr. Survey of existing Fingerprint countermeasures. In 2016 International Conference on Information Society (i-Society), pp. 137-141. IEEE Computer Society, October 2016. 65,66,68, 69.

7. Identification of persons [Электронный источник]. URL: https://allegro.tech/2015/03/browser-fingerprints.html.

8. Gomez-Adorno H. et al. Document embeddings learned on various types of n-grams for cross-topic authorship attribution 11 Computing. 2018. P. 1-16. doi: 10.1007/s00607-018-0587-8

9. F. Alaca and P.C.V. Oorschot. Device Fingerprinting forAug-menting Web Authentication: Classification and Analysis ofMethods 11 Annual Computer Security Applications Conference (ASAC'32), 2016. [Online], Электронный ресурс. Доступ: http://people.scs.carleton.ca/ paulv/papers/acsac2016-device-fingerprinting.pd.

10. J. Devlin, M.-W. Chang, K. Lee, and K. Toutanova, "Bert: Pre-training of deep bidirectional transformers for language understanding," arXiv preprint arXiv:1810.04805, 2018.

11. Федюшкин H.A., Федосин С А. Основные технологии интеллектуального анализа текста - Развитие технических наук в современном мире. Сборник научных трудов по итогам международной научно-практической конференции. № 3. Воронеж, 2016. 128 с.

12. ML. Label Encoding of datasets in Python. What is One Hot Encoding? [Электронный ресурс]. 2019. Режим доступа: https://www.geeksforgeeks.org/ml-label-encoding-of-datasets-in-python.

13. What is One Hot Encoding? Why And When do you have to use it? [Электронный ресурс]. 2019. Режим доступа: https://hackernoon.com/what-is-one-hot-encoding-why-and-when-do-you-have-to-use-it-e3c6186d008f

14. https://heartbeat.fritz.ai/the-7-nlp-techniques-that-will-change-how-you-communicate-in-the-future-part-i-roil4b2f0497

15. Suhyeon Kimb, Haecheong Parka, Junghye Lee. Word2vec-based latent semantic analysis (W2V-LSA) for topic modeling: A study on blockchain technology trend analysis. Expert Systems with Applica-tions.Volume 152, 15 August2020, 113401

16. Pezzotti N, Boudewijn P. F. Lelieveldt, Laurens van der Maaten, Hollt T, Eisemann E, Vilanova A. Approximated and User Steerable tSNE for Progressive Visual Analytics II IEEE Transactions on Visualization and Computer Graphics. 2017. Vol. 23, No. 7. doi:10.1109/tvcg.2016.2570755

17. George C. Linderman, Stefan Steinerberger Clustering with t-SNE, provably. 2017.

18. Алгоритм Лоуренса ван дер Маатена «t-Distributed Stochastic Neighbor Embedding». [Электронный ресурс] 2019. Режим доступа: https://lvdmaaten.github.io/tsne/

19. Dorenskaya E.A., Semenov Yu.A. The improved algorithm for calculation of the contextual words meaning in the text 11 Modern Information Technologies and IT-Education. 2019. T. 15. C. 954-960. doi:10.25559/SITIT0.15.201904.954-960

20. Top 10 Open Source Data Mining Tools» [Электронный ресурс] 2017. Режим доступа, http://opensourceforu.com/2017/03/top-Ю-open-source-data-mining-tools/

USE OF LATENT-SEMANTIC ANALYSIS IN PREPARATION OF DATA

FOR IDENTIFICATION OF ANONYMOUS USERS BY DIGITAL FINGERPRINTS

OLEG I. SHELUHIN,

Moscow, Russia, [email protected]

ANNA V. VANYUSHINA,

Moscow, Russia, [email protected]

KEYWORDS: fingerprint, database, dataset, text data, categorical data, features, artificial intelligence technologies.

MAKSIM S. ZHELNOV,

Moscow, Russia, [email protected]

ABSTRACT

Digital fingerprints changings over time as a result of system, plugins, browsers, installation of various programs updates and fonts is a serious problem in the method of tracking and identifying users using a browser (Fingerprinting (FP) of a web browser). The set of parsed attributes can contain both metrical and categorical (mostly non-numeric) values, for example, parameters such as user-agent, webgl, canvas, etc. Considering this, it is required to pre-encode them for the convenience of further processing. For these purposes, artificial intelligence technologies, including the processing of text in natural languages NLP (Natural Language Processing), are widely used. The aim of the research is to analyze the peculiarities of the implementation of latent-semantic analysis (LSA) in the preparation and analysis of FP data for the identification of anonymous users.

Methods. A comparative analysis of the common ways of

converting categorical values of fingerprint attributes (FP) into numeric One-Hot-Encoding, Label-Encoder, LSA for identifying anonymous users with a predetermined number of possible values of categorical features is carried out. Results. The advantage of the LSA algorithm over One-Hot-Encoding, Label-Encoder is shown. The possibility of clustering implementation within the framework of the user identification problem by visualizing FP (FP) relative to hidden semantic topics using the LSA model of latent semantic analysis is shown. It is shown that with a small number of hidden topics using the obtained vectors of objects and vectors of terms for assessing the similarity of two FPs, the proposed model allows us to confidently classify the input FP to a common topic. With the help of the obtained vectors of objects and vectors of terms for assessing the similarity of two FP objects, it becomes possible to apply various measures of cluster proximity: Euclidean distance, cosine measure, etc.

REFERENCES

1. O.I. Sheluhin, A.V. Osinra Bezopasnost' setevyh prilozhenij [Network application security]. Moscow: Gorjachaja linija - Telekom, 2021. 224 p. (In Rus)

2. O.I. Sheluhin, S.D. Erokhin M.V. Polkovnikov. Machine learning technologies in network security. Moscow: Gorjachaja linija - Telekom, 2021. 360 p. (In Rus)

3. O.I. Sheluhin, M.S. Zhelnov. Identification of anonymous users of a WEB resource based on fuzzy hash functions of device digital fingerprints. REDS: Telekommunikacionnye ustrojstva i sistemy. 2021. No. 2. Pp. 57-63. (In Rus)

4. O.I. Sheluhin, A.V. Vanjushina. Anonymization and deanonymiza-tion users of Internet portals. Moscow. MTUCI. 2021. 47 p. (In Rus)

5. 5. Liu, Q. Liu, X. Wang, and Z. Jia. Fingerprinting web browser for tracing anonymous web attackers. IEEE First International Conference on Data Sciencein Cyberspace, DSC 2016, Changsha, China, June 13-16, 2016, pp. 222-229. IEEE Computer Society, 2016.

6. S. Luangmaneerote, E. Zaluska, and L. Carr. Survey of existing Fingerprint countermeasures. In 2016 International Conference on Information Society (i-Society), pp. 137-141. IEEE Computer Society, October 2016. 65, 66, 68, 69.

7. Identification of persons. URL: https://allegro.tech/2015/03/ browser-fingerprints.html (date of access 08.12.2021).

8. H. Gomez-Adorno et al. Document embeddings learned on various types of n-grams for cross-topic authorship attribution.

Computing. 2018, pp. 1-16. doi: 10.1007/s00607-018-0587-8

9. F. Alaca and P.C.V. Oorschot, "Device Fingerprinting for Augmenting Web Authentication: Classification and Analysis of Methods," Annual Computer Security Applications Conference (ASAC'32), 2016. URL: http://people.scs.carleton.ca/paulv/papers/acsac2016-device-fingerprinting.pd

10. J. Devlin, M.-W. Chang, K. Lee, and K. Toutanova, "Bert: Pre-training of deep bidirectional transformers for language understanding," arXiv preprint arXiv:1810.04805, 2018.

11. N.A. Fedjushkin, S.A. Fedosin. The main technologies of text mining - The development of technical sciences in the modern world. Collection of scientific papers based on the results of the international scientific and practical conference. Voronezh, 2021. No.3. 128 p.

12. ML. Label. Encoding of datasets in Python. What is One Hot Encoding? URL: https://www.geeksforgeeks.org/ml-label-encoding-of-datasets-in-python/ (date of access 11.12.2021).

13. What is One Hot Encoding? Why And When do you have to use it? URL: https://hackernoon.com/what-is-one-hot-encoding-why-and-when-do-you-have-to-use-it-e3c6186d008f (date of access 11.12.2021).

14. The 7 NLP Techniques That Will Change How You Communicate in the Future (Part I). URL: https://heartbeat.fritz.ai/the-7-nlp-techniques-that-will-change-how-you-communicate-in-the-future-part-i-f0114b2f0497 (date of access 10.12.2021)

15. Suhyeon Kimb, Haecheong Parka, Junghye Lee . Word2vec-based latent semantic analysis (W2V-LSA) for topic modeling: A study on blockchain technology trend analysis. Expert Systems with Applications.Volume 152, 15 August 2020, 113401

16. Pezzotti N, Boudewijn P F. Lelieveldt, Laurens van der Maaten, Hollt T, Eisemann E, Vilanova A. Approximated and User Steerable tSNE for Progressive Visual Analytics. IEEE Transactions on Visualization and Computer Graphics. 2017. Vol. 23. No. 7. doi:10.1109/tvcg.2016.2570755

17. George C. Linderman, Stefan Steinerberger. Clustering with t-SNE, provably. 2017.

18. Lawrence van der Maaten's algorithm "t-Distributed Stochastic Neighbor Embedding". 2019. URL: https://lvdmaaten.github.io/tsne/ (date of access 10.12.2021).

19. E.A. Dorenskaya, Yu.A. Semenov. The improved algorithm for calculation of the contextual words meaning in the text. Modern Information Technologies and IT-Education. 2019. Vol. 15, pp. 954960. doi:10.25559/SITITO.15.201904.954-960

20. Top 10 Open Source Data Mining Tools. URL: http://open-sourceforu.com/2017/03/top-10-open-source-data-mining-tools/ (date of access 10.12.2021).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

INFORMATION ABOUT AUTHORS:

Oleg I. Sheluhin, PhD, full professor, Head of department of Information security, MTUCI, Moscow, Russia Anna V. Vanyushina, PhD, associate Professor at the Department of Information security, MTUCI, Moscow, Russia Maksim S. Zhelnov, student, MTUCI, Moscow, Russia

For citation: Sheluhin O.I., Vanyushina A.V., Zhelnov M.S. Use of latent-semantic analysis in preparation of data for identification of anonymous users by digital fingerprints. H&ES Reserch. 2022. Vol. 14. No.1. P 36-44. doi: 10.36724/2409-5419-2022-14-1-36-44 (In Rus)

; .'M .

\ при поддержке

......................\ S^J.......................

ASIC АНИК

Международная Ассамблея

/g «Каспийский Диалог Ш 2022»

и^, - Ml

а и ■ к мь

Br оф-h ■

ЧГ Ш f ky. ;

i î m^.

ц V r, 'j-

-/. -Ч7Ч

О С К В A

11 МАЯ

2 0 2 2

культурный центр главупдк

ПРИ МИД РОССИИ *

WWW.CASPIANSOVET.Ft

à

www.caspiandialogue.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.