Машинное обучение поможет установить личность анонимного кодера по его стилю

Машинное обучение поможет установить личность анонимного кодера по его стилю
Специалисты в области стилометрии (исследование стилистики, включающее статистический анализ) хорошо знают, что письмо – это уникальный процесс. Словарный запас, синтаксис и грамматика создают индивидуальный почерк, позволяя определить автора текста. Существуют даже автоматизированные системы, способные идентифицировать человека, написавшего сообщение или публикацию в интернете. А недавнее исследование показало, что стилометрию можно применить и к искусственным языкам (программирование). Как оказалось, кодеры точно так же имеют свой стиль, который можно распознать.Исследователи Рэйчел Гринстадт (Rachel Greenstadt) из Дрексельского университета и Айлин Калискан (Aylin Caliskan) из Университета Джорджа Вашингтона пришли к выводу, что код, как и другие формы стилистического выражения, не является анонимным. Результаты своей работы они представили на конференции DefCon. В исследовании учёные использовали машинное обучение для выявления авторов образцов кода. Алгоритм сначала идентифицирует все особенности в примерах, затем это список сокращают до 50, оставив только те, которые отличают разработчиков. Таким образом Гринстадт и Калискан создают «абстрактные синтаксические деревья», отражающие базовую структуру кода.Для данного метода необходимо как можно больше образцов кода, чтобы научить алгоритм сопоставлять их с авторами. В таком случае, достаточно небольшого фрагмента кода из репозитория GitHub, чтобы отличить одного кодера от другого с высокой точностью, утверждают авторы исследования.Гринстадт и Калискан вместе с другими учёными показали, как можно деанонимизировать программиста, используя его скомпилированный двоичный код. Им также удалось декомпиллировать его обратно на C++, сохранив уникальный стиль. Это работает примерно так, как если бы вы перевели документ в Google Translate на другой язык – текст выглядит совершенно иначе, но он сохранил орфографию и синтаксис.Новая работа исследователей может быть использована для определения плагиата, особенно для новичков, которые часто копируют куски кода, или для выявления разработчиков вредоносного ПО. Они также надеются, что в будущем им удастся получить ответы на многие интересующие их вопросы, например, какие факторы влияют на стиль программирования, что происходит, когда члены одной команды работают вместе над проектом, отличаются ли стили программирования людей из разных стран и так далее. К слову, уже на данном этапе их алгоритм смог различить образцы кода канадских и китайских программистов с точностью более 90%.Источник: wired
Stfw.Ru
Читайте также


Оставить комментарий
Имя:  

Комментарий:

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

Сводка событий

23:11 lifecell при поддержке Ericsson открыл учебную телеком-лабораторию в Харьковском национальном университете радиоэлектроники


23:11 Nintendo не планирует выпускать игровую консоль Nintendo 64 Classic


23:11 Netflix запустил в Индии, Малайзии и других азиатских странах тариф стоимостью $4 для мобильных устройств


23:11 NVIDIA отчиталась за квартал. Абсолютно все основные финансовые показатели существенно выросли


23:11 Microsoft наконец разрешила разработчикам создавать 64-разрядное ПО для Windows 10 на ARM


23:11 11 декабря ASUS представит новый «игровой» смартфон Zenfone Max Pro M2 на базе SoC Snapdragon 660


23:11 Смартфон Vivo X23 Symphony Edition представлен официально


23:11 Gihosoft iPhone Data Recovery Free поможет восстановить данные из памяти вашего iPhone


23:11 В России представлены смартфоны Inoi 5X и Inoi 5X Lite


23:11 Сможет ли Россия вновь стать ведущей космической державой? Такие разные пути в космос: российский и американский. Какой лучше? Время покажет


23:11 Раймонд Паулс сообщил об эмиграции своей семьи из Латвии


23:11 Польская православная церковь запретила своим священникам контакты с Киевским патриархатом


23:11 На фоне "холодомора" МВФ требует от Украины еще раз поднять тарифы


События из мира ИТ