Больше никакого воровства
В России создана технология определения авторства программного кода, даже если речь идет о нескольких строчках кода, и они интегрированы в гигантский проект на несколько сотен тысяч строк. Она разработана специалистами Томского государственного университета систем управления и радиоэлектроники (ТУСУР).
Разработанная отечественными учеными технология – это своего рода аналог почерковедения – раздела криминалистики, посвященного почерку человека. Почерковедение позволяет установить, например, является ли подпись на документе фальшивой, а также идентифицировать человека, оставившего эту подпись или написавшего тот или иной текст.
В случае разработки экспертов ТУСУР речь идет о том же самом, но в плане программного кода. Система позволяет не только вычислить автора кода, но и обнаружить, что те или иные строки писал вовсе не человек, а, например, искусственный интеллект GitHub Copilot, который всеми фибрами души ненавидят авторы свободного ПО, или суперсекретный проект Google – ИИ, способный самостоятельно писать код с нуля.
Сферы применения
Ученые ТУСУР опубликовали информацию о своей разработке в журнале Future Internet. В своей статье они заявляют, что их творение позволяет быстро решать споры об авторском праве в сфере программного обеспечения, в том числе коммерческого. Например, если в коде той или иной программы сторонний разработчик обнаружит код, который писал он, но который не передавал авторам программы, система ТУСУР поможет доказать его правоту. И наоборот, если в программе нет чужого кода, система защитит ее авторов, доказав, что сторонний разработчик лукавит.
В октябре 2022 г. CNews писал, что разработчик открытого ПО уличил Copilot не только в воровстве чужого программного кода, но и в присвоении себе авторства. Вполне вероятно, система ТУСУР поможет выявить еще немало подобных случаев.
Еще одна сфера применения отечественной разработки – это кибербезопасность. Любое вредоносное ПО, будь то вирус, троян, шифровальщик и т. д. – это в любом случае ПО, следовательно, это все те же строчки программного кода. Технология экспертов ТУСУР позволит выявить автора вредоноса.
Повышенная точность
В настоящее время эксперты ТУСУР продолжают работать над своей системой. Они уже добились выдающихся результатов, однако пока не могут похвастаться 100-процентной точностью установления авторства программного кода.
Пока что точность определения обратно пропорциональна количеству языков, на которых пишет разработчик. Если он знает два языка программирования, то точность составляет в среднем 87%. Если система столкнулась с «полиглотом», освоившим три и более языка, то точность падает до 76%.
В то же время точность определения написавшей код нейросети составляет в среднем 81,5%. Наконец, средняя точность выявления исходных кодов, сгенерированных из коммитов, находится на уровне 84%.
Искусственный интеллект на страже копирайта
В основе технологии томских ученых лежат алгоритмы машинного обучения, по сути, искусственный интеллект. Они изучают исходный код программ и могут выявлять «почерк» программиста по тем или индивидуальным особенностям написания.
В дальнейшем на основе этих данных и выносится решение о принадлежности или не принадлежности того или иного кода или его части разработчику. То же касается и виртуальных программистов. В настоящее время существует множество сервисов автоматической генерации программного кода – в этом направлении, помимо GitHub, работают OpenAI, Amazon и многие другие компании. Например, у входящей вместе с Google в холдинг Alphabet компании DeepMind есть своя система AlphaCode, которая использует ИИ для генерации кода. Она была представлена в начале 2022 г.