Машинное обучение поможет обнаружить анонимного кодера по его коду!


hacker identity

Специалисты из области стилометрии (наука занимающаяся исследованием стилистики, включающая в себя проведение статистического анализа) хорошо знают, что письмо и процесс написания чего-то – это уникальный процесс. Словарный запас, синтаксис и грамматика создают индивидуальный почерк каждого автора, позволяя определить его в будущем. Конечно, на сегодняшний день существуют даже автоматизированные системы, способные идентифицировать человека, написавшего сообщение или публикацию в интернете. Недавнее исследование показало, что данную науку можно применить и к искусственным языкам (речь идет о языках программирования). Как оказалось, программисты точно так же имеют свой стиль, который можно распознать зная его особенности.

Кстати о текстах: если вам необходим качественный перевод текста, статьи, документа, сервис idiom.com.ua готов вам в этом помочь! Сертифицированные переводчики подготовят ваш заказ в кратчайшие сроки!

Исследователи Рэйчел Гринстадт из Дрексельского университета и Айлин Калискан из Университета Джорджа Вашингтона пришли к выводу, что код, как и другие формы стилистического выражения, не является анонимным и вполне поддается анализу. Результаты своей работы они представили на конференции DefCon. В исследовании учёные использовали машинное обучение для выявления авторов образцов кода.

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

Гринстадт и Калискан вместе с другими учёными показали, как можно деанонимизировать программиста, используя его скомпилированный двоичный код. Им также удалось декомпиллировать его обратно на C++, сохранив уникальный стиль. Это работает примерно так, как если бы вы перевели документ в Google Translate на другой язык – текст выглядит совершенно иначе, но он сохранил орфографию и синтаксис.

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



Смотрите также:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.