Разделы

ПО Свободное ПО Софт Техника

Россияне спасают честь программистов. Технология из России мгновенно определяет плагиатора, даже если это ИИ

Ученые из Томска разработали технологию определения авторства того или иного программного кода или куска кода по уникальному «почерку» программиста. Система позволяет обнаружить, например, украденный код в составе программы, распространяемой на платной основе, или установить автора вируса. Точность определения в некоторых случаях превышает 80%.

Больше никакого воровства

В России создана технология определения авторства программного кода, даже если речь идет о нескольких строчках кода, и они интегрированы в гигантский проект на несколько сотен тысяч строк. Она разработана специалистами Томского государственного университета систем управления и радиоэлектроники (ТУСУР).

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

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

В случае разработки экспертов ТУСУР речь идет о том же самом, но в плане программного кода. Система позволяет не только вычислить автора кода, но и обнаружить, что те или иные строки писал вовсе не человек, а, например, искусственный интеллект GitHub Copilot, который всеми фибрами души ненавидят авторы свободного ПО, или суперсекретный проект Google – ИИ, способный самостоятельно писать код с нуля.

Сферы применения

Ученые ТУСУР опубликовали информацию о своей разработке в журнале Future Internet. В своей статье они заявляют, что их творение позволяет быстро решать споры об авторском праве в сфере программного обеспечения, в том числе коммерческого. Например, если в коде той или иной программы сторонний разработчик обнаружит код, который писал он, но который не передавал авторам программы, система ТУСУР поможет доказать его правоту. И наоборот, если в программе нет чужого кода, система защитит ее авторов, доказав, что сторонний разработчик лукавит.

В октябре 2022 г. CNews писал, что разработчик открытого ПО уличил Copilot не только в воровстве чужого программного кода, но и в присвоении себе авторства. Вполне вероятно, система ТУСУР поможет выявить еще немало подобных случаев.

Еще одна сфера применения отечественной разработки – это кибербезопасность. Любое вредоносное ПО, будь то вирус, троян, шифровальщик и т. д. – это в любом случае ПО, следовательно, это все те же строчки программного кода. Технология экспертов ТУСУР позволит выявить автора вредоноса.

Повышенная точность

В настоящее время эксперты ТУСУР продолжают работать над своей системой. Они уже добились выдающихся результатов, однако пока не могут похвастаться 100-процентной точностью установления авторства программного кода.

Сергей Голицын, T1: 70% компаний, применяющих ИИ, подтверждают положительный эффект
Цифровизация

Пока что точность определения обратно пропорциональна количеству языков, на которых пишет разработчик. Если он знает два языка программирования, то точность составляет в среднем 87%. Если система столкнулась с «полиглотом», освоившим три и более языка, то точность падает до 76%.

В то же время точность определения написавшей код нейросети составляет в среднем 81,5%. Наконец, средняя точность выявления исходных кодов, сгенерированных из коммитов, находится на уровне 84%.

Искусственный интеллект на страже копирайта

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

В дальнейшем на основе этих данных и выносится решение о принадлежности или не принадлежности того или иного кода или его части разработчику. То же касается и виртуальных программистов. В настоящее время существует множество сервисов автоматической генерации программного кода – в этом направлении, помимо GitHub, работают OpenAI, Amazon и многие другие компании. Например, у входящей вместе с Google в холдинг Alphabet компании DeepMind есть своя система AlphaCode, которая использует ИИ для генерации кода. Она была представлена в начале 2022 г.

Евгений Черкесов