Kredit:CC0 Public Domain
En af de pænere ting ved videregående uddannelse:Opnå bevidsthed om forfatteres signaturstile, malere, musikere, selv før vi får at vide deres navne. Godt, signaturstilarter er ikke kun begrænset til kunsten.
To forskere kan vise verden deres arbejde med stilistiske fingeraftryk, og hvordan disse kan bruges til potentielt at identificere programmører fra kode og binære filer.
"Maskinlæring kan afdække programmørers identitet, "lød overskriften fra Fossbytes . Artiklen talte om Rachel Greenstadt og Aylin Caliskan, der præsenterede deres arbejde på DefCon. Greenstadt er lektor, Drexel University; Caliskan er adjunkt i datalogi, George Washington University.
"Stilistiske fingeraftryk"? Betyder? Louise Matsakis i Kablet kiggede på noget, der kaldes stylometri - den statistiske analyse af sproglig stil. Hun sagde, at "nyere forskning viser, at stylometri også kan gælde kunstige sprogprøver, som kode. Softwareudviklere, det viser sig, efterlade også et fingeraftryk. "
I dette område, anonyme programmører kan identificeres. Fossbytes opsummerede forskningsindsatsen:De testede koder indsendt af programmører, og systemet kunne korrekt identificere 83 procent af de gange, algoritmen blev kørt.
De undersøgte "programmer-de-anonymisering" med maskinlæring. De ankom til konferencen klar til at vise, hvordan abstrakte syntakstræer har "stilistiske fingeraftryk, "og sleuths kan potentielt bruge disse fingeraftryk til at identificere programmører, fra kode og binære filer. Spørgsmålet kommer op:er disse algoritmer fra himlen eller fra helvede? To sider af mønten.
Plusfaktoren, naturligvis, ville være i at identificere de forfattere, der planter malware. Negativ faktor:Kodere, der kan lide at bidrage med kode anonymt, kan blive afskrækket af dette, som bemærket i Fossbytes . "Der er tidspunkter, hvor programmører gerne vil forblive ukendte af legitime grunde, og at blive identificeret er ikke altid en god ting."
Matsakis bemærkede også konsekvenser for privatlivets fred, "især for de tusinder af udviklere, der bidrager med open source -kode til verden."
Kablet beskrev deres udforskning som et binært eksperiment, hvor Caliskan og andre forskere brugte kodeprøver fra Googles årlige Code Jam -konkurrence. Maskinlæringsalgoritmen identificerede korrekt en gruppe på 100 individuelle programmører 96 procent af tiden, ved hjælp af otte kodeprøver fra hver.
Som interessant, selv når stikprøvestørrelsen blev udvidet til 600 programmører, "algoritmen lavede stadig en nøjagtig identifikation 83 procent af tiden."
Cory Doctorow i Boing Boing , imens, nævnt yderligere indsigt i programmeringsstile. Doctorow rapporterede, at rent faktisk, de fandt ud af, at erfarne udviklere syntes lettere at identificere end nybegyndere. Jo mere dygtig du er, jo mere unikt dit arbejde tilsyneladende bliver.
Hvordan det? Doctorow kommenterede, at det kan være "delvist, fordi begynderprogrammerere ofte kopierer og indsætter kodeløsninger fra websteder som Stack Overflow."
© 2018 Tech Xplore