Ingen kan gemme sig: Programmørers skrivestil kan afkodes så nøjagtigt som fingeraftryk

Ny analysemetode af små detaljer og forskellige i programmerings-kode kan vise helt nøjagtigt, hvem der har skrevet koden. Det kan komme til at gøre en forskel, når det gælder malware samt i copyright-sager og lignende.

Artikel top billede

(Foto: Dan Jensen)

Alle programmører har bestemte måder at skrive kode på, selv om det godt kan være, at de ikke selv er særligt bevidste om det.

Det kan være en forkærlighed for eksempelvis bestemte måder at skrive comments på eller tabs eller navngivning.

Et stort forskningsprojekt viser nu, at skrive-stilen faktisk er en slags fingeraftryk, der ret nøjagtigt kan pege i retning af en bestemt programmør, hvis der skulle være brug for at afgøre, hvem der har skrevet hvad.

Det kan for eksempel være i forbindelse med malware eller copyright-sager og lignende.

Forskerne - der er fra en række forskellige universiteter - har udviklet en særlig metode, der kan genkende skrive-måde og koble det til bestemte programmører.

Du kan læse om deres resultater i papiret 'De-anonymizing Programmers via Code Stylometry.'

Analyseværktøjet kigger på layout og på fordelingen af de forskellige tokens-typer.

Det helt nye er imidlertid en funktion, som forskerne kalder for 'abstract syntax trees,' der ifølge forskerne kigger på kode-stil 'helt uafhængigt af skrive-stilen.'

Kan gennemskue ændringer

Det betyder, at værktøjet ikke bliver forvirret og vildledt, hvis programmøren pludselig ændrer sin måde at anvende eksempelvis navngivning, spacing eller comments på - så længe den bagvedliggende funktionalitet er den samme.

Forskerne har testet deres teorier på større mængder data indsamlet fra Googles Code Jam for at se, om det faktisk kunne lade sig gøre at identificere bestemte programmører.

Her kiggede de på C++-kode skrevet fra 2008 til 2014 af mere end 100.000 forskellige programmører.

Her nåede de frem til, at analyseværktøjet i 95 procent af tilfældene kunne identificere programmøren, der havde skrevet koden baseret på analyse af 640 kodelinier skrevet af 250 forskellige programmører.

I en analyse af 30 programmører, der havde skrevet 1.900 kodelinier, ramte værktøjet rigtigt i 97 procent af tilfældene.

Annonce

Jyske Bank

AI-udvikler

Midtjylland

Politiets Efterretningstjeneste

Sektionsleder til IT Porteføljestyring i PET

Københavnsområdet

IT Forum Gruppen

Senior Sales Manager hos ITF

Midtjylland

Netcompany A/S

Microsoft Operations Engineer

Københavnsområdet

Navnenyt fra it-Danmark

Norriq Danmark A/S har pr. 1. juli 2026 ansat Nanna-Louise Aae Kudahl som Project Manager. Hun skal især beskæftige sig med drive vores Business Central-projekter i samarbejde med resten af sine nye kollegaer i ERP. Hun kommer fra en stilling som Product Manager hos KMD A/S. Hun er uddannet på Aalborg Universitet i kommunikation og Digitale Medier og har en kandidat i IT-ledelse. Nyt job

Nanna-Louise Aae Kudahl

Norriq Danmark A/S

Norriq Danmark A/S har pr. 1. juni 2026 ansat Ida Laursen som Junior Consultant. Hun skal især beskæftige sig med at understøtte vores konsulenter med praktiske og analytiske opgaver på diverse kundeprojekter. Hun kommer fra en stilling som Webassistent hos PWT Group A/S. Hun er uddannet bachelor i International Virksomhedskommunikation og er i gang med en kandidat i IT-ledelse. Hun har tidligere beskæftiget sig med kommunikation og webindhold. Nyt job

Ida Laursen

Norriq Danmark A/S

Norriq Danmark A/S har pr. 2. februar 2026 ansat Vlad-Andrei Fagarasan som Solution Architect. Han skal især beskæftige sig med moderne dataplatforme og arkitekturer hvilket er med til at sikre at vi fortsat tilbyder vores kunder skræddersyede løsninger. Han har tidligere beskæftiget sig med BI- og dataprojekter i både privat og offentlig regi. Nyt job

Vlad-Andrei Fagarasan

Norriq Danmark A/S

Netip A/S har pr. 11. august 2026 ansat Emil Kristoffersen som IT-Supporterelev ved netIP's kontor i Thisted. Han er uddannet Fisker, - Emil har dermed valgt et karriereskifte. Nyt job

Emil Kristoffersen

Netip A/S