A következő címkéjű bejegyzések mutatása: deanonymizing. Összes bejegyzés megjelenítése
A következő címkéjű bejegyzések mutatása: deanonymizing. Összes bejegyzés megjelenítése

2016. január 2., szombat

Programozót kódjáról

Annak ellenére, hogy szinte mindenki, aki rendszeresen dolgozott csapatban valamilyen szoftverprojekten, tudja, hogy minden programozónak van egy sajátos stílusa. Azt azonban kevesen tudják, hogy ezek a stílusjegyek jóval egyedibb mintát alkotnak, mint azt gondolnánk. Legalábbis amerikai kutatók erre az álláspontra jutottak a 2015. évben, akik szerint a programok az ujjlenyomathoz hasonlóan alkalmasak lehetnek a készítők azonosítására, akkor is, ha a csak a forráskód áll rendelkezésre.

A Marylandi Egyetem munkatársai előálltak egy olyan, gépi tanulási és nyelvelemzési algoritmusokat használó programmal, ami képes a forráskódok sajátosságainak kiszűrésére. A módszerük annyira hatékony, hogy a Google Code Jam programozási versenyének kódjai közül 95%-os pontossággal volt képes az egyes programok szerzőit megállapítani. Viszonyításképpen az ujjlenyomatokkal 97%-os pontosság érhető el a gyakorlatban.

Továbbfejlesztve a módszert, az újabb kutatási eredményük szerint nem szükséges a forráskód, mivel akár a lefordított kód is elegendő lehet a fejlesztő azonosítására. Ennek teszteléséhez a GitHubon elérhető programokat és a készítőkről megadott információkat használták fel a tanításhoz. A létrejött neurális háló kis számú fejlesztő esetén eléggé pontos: 96%-os, azonban a fejlesztők számát több százra növelve már csak az esetek felében adott helyes választ.

Az eljárásnak lehet létjogosultsága a gyakorlatban is: kézenfekvő megoldás lehet a rosszindulatú kódok létrehozóinak azonosítására, valamint segítséget nyújthat szerzői jogi viták esetén a valódi alkotó megállapítása.