1:a april, desinformationens dag
Dagen i ära kommer dagens blogg handla om nya verktyg som används för att sprida desinformation, samt hur man kan identifiera detta. Desinformation är information som är medvetet falsk eller vilseledande. Ofta sprids detta på ett målinriktat sätt i syfte att påverka en viss målgrupp.
Inom informationssäkerhet arbetar vi ofta med behovet av riktig information, samt konsekvenser eller potentiella konsekvenser av skadat anseende vid informationssäkerhetsincidenter. Här finns en tydlig koppling till desinformationen, där anseende kan skadas när oriktiga uppgifter sprids. Utöver att direkt skada anseende, kan desinformation även användas för att manipulera fram önskade reaktioner, som t.ex. marknadspåverkan.
Desinformation ett modernt samhälle
Det har funnit och nyttjats sedan urminnes tider. Desinformation har dock fått större spridningsmöjligheter i och med Internet och diverse sociala media-plattformar där information kan spridas på ett öppet sätt och med begränsad källkritik. En aktuell utveckling inom detta område är även de nya verktyg som nyttjar maskininlärning för att förbättra eller automatisera tekniker för att skapa eller sprida desinformation. Detta inkluderar områden som:
- Text och bild, t.ex. för att skapa falska profiler.
- Ljud. Text-to-speech eller speech-to-speech med någon annans röst. En AI kan lära sig imitera en person, se t.ex. [1].
- Video. Ansikten i videoklipp ersätts, så kallade “DeepFakes”. Görs ofta via mjukvaran DeepfaceLabs [2]. Nyligen kom även DeepfaceLive [3], som möjliggör DeepFakes i realtid (t.ex. webkamera). Detta mMöjliggör avancerade och trovärdiga phishing attacker.
Just DeepFakes är troligtvis den mest spridda formen av maskininlärning för desinformation. Det var inte länge sedan det spreds DeepFakes på en kapitulerande Volodymyr Zelenskyj till exempel. I stort sett vem som helst kan nu skapa DeepFakes med en hög nivå av realism. DeepFakes ser ut att utvecklas till ett påtagligt hot mot integriteten och trovärdigheten hos multimedia.
Så funkar deepfakes
Rent praktiskt är det inte särskilt svårt att göra DeepFakes. Skapare av [2] och [3] har gjort användarvänliga applikationer och det finns en stor uppsjö av instruktioner och stödmaterial att tillgå på Internet. Filmen nedan, där mitt ansikte har pryder Hulkens polare, skapade jag på en laptop utan några nämnvärda förkunskaper.
DeepfaceLive är möjligtvis ännu enklare då det kommer med en rad för-tränade modeller. Dock kräver det liknande förberedelser för att byta ut ansikten till godtyckliga personer istället för de förvalda alternativen.
Under huven är detta skapt av en GAN (Generative Adversarial Networks), som använder träningsdata och ställer två olika typer av maskininlärningsmodeller mot varandra. En modell kallas en “generator” och dess mål är att skapa syntetisk data som inte går att skilja från träningsdatan. Den andra modellen kallas “diskriminatorn” och dess mål är att korrekt avgöra om datan som den tittar är syntetisk (skapad av generatorn) eller om det är verklig. Dessa två modeller arbetar fram och tillbaka, och lär sig långsamt att skapa syntetisk data som är en bättre och bättre representation av den verkliga datan, och diskriminatorn lär sig att upptäcka allt mer subtila skillnader mellan syntetisk data och verkliga data.
Så identifierar man DeepFakes
Att lära sig känna igen tecken på att en film är manipulerad med DeepFakes en bra färdighet att ha. Även om detta blir svårare och svårare allt eftersom teknologin utvecklas finns det fortfarande tecken som kan användas för att identifiera en DeepFake.
- Plötsliga ryck vid skarpa kanter. Eftersom DeepFakes skapas bild för bild kan det lätt bli inkonsekvenser i exakt var AI:n drar skarpa gränser mellan två områden med stor kontrast (vid tänder, läppar, skuggor). Detta kan vara svårt att se i en film som spelas upp, men enklare att se om man stegar sig genom filmen bild för bild.
- Konstig riktning på skuggor och belysning. En DeepFake kan ha svårt att ljusriktning helt korrekt. Framförallt tydligt vid skarpa skuggor runt näsan och i munnen.
- Ansiktet ser platt ut. När AI:n tränas utgår den från en mängd bilder på målet, vanligtvis tagna med olika skärpedjup (närbild, vidvinkel, inzoomad, osv). När dessa kombineras i modellen har det en tendens att ge en platt 2-dimensionen känsla på ansiktet, vilket blir tydligast när ansiktet rör sig.
- Reflektioner i ögon. Mänskliga ögon sitter nära varandra och har (eftersom de är sfärer), samma orientering relativt varandra. Detta medför att i de allra flesta fall så har vänster och höger öga identiska reflektioner. Ser man olika mängd, form eller styrka på reflektioner i ögonen är det en indikation på att bilden är manipulerad.
- imperfektioner i synkronisering av tal och mun. DeepFakes är bra på att matcha ansiktsuttryck, men inte perfekt, och vi människor är mycket bra på att upptäcka att något ser lite fel ut i synkroniseringen av detta. Det ser dubbat ut.
Om du vill testa dina färdigheter i att upptäcka AI-manipulerade bilder finns ett roligt test för detta här, https://www.whichfaceisreal.com/.
Automatiserad detektion
Det har gjorts många försök att automatisera detektionen av DeepFakes. Vissa metoder är baserade på traditionella digitala forensiska metoder, medan andra är starkt beroende av maskininlärning för bild- eller video-klassificering (t.ex. MesoNet [5], Xception [6]). Många av dessa automatiserade algoritmer har möjlighet att detektera aspekter hos DeepFakes som är omöjliga för våra mänskliga sinnen eller vårt intellekt att hitta.
En spännande möjlighet är “Deeprhythm” [7], som använder en indirekt metod för att mäta hjärtrytm. Antagandet som görs här är att hjärtrytmen från bakomliggande verkligt ansikte bryts ned i en DeepFake, vilket skulle medföra att puls kan användas som en indikator för manipulation av video. Till detta används en teknik som kallas rPPG (Remote Photoplethysmography), vilket innebär att förändringar i hudfärg mäts från videon. Detta sker i takt med att blod pulserar genom ytliga blodkärl i huden, och är därför direkt korrelerat till hjärtrytmen. Densamma metod används t.ex. i appar som mäter pulsen via finger på kameralinsen.
Eftersom DeepFakes försöker matcha hudfärg på det ersatta och bakomliggande ansiktet kan dock förändringar i hudfärg replikeras till viss del, men inte helt perfekt. Att upptäcka att en hjärtrytm existerar är därför inte tillräckligt, utan istället undersöks mönstren i verkliga kontra falska hjärtrytmer. Ett artificiellt hjärta slår inte likadant som ett riktigt mänskligt hjärta. Bedömningen mellan riktigt eller falsk puls görs av an maskinlärd klassificerare, och har visat sig vara en träffsäkert indikator för en DeepFake. Se bilder nedan för en översikt över hur flödet i algoritmen ser ut, samt exempel på skillnader i hjärtrytm mellan verkliga människor och DeepFakes.
Referenser
[1] https://www.descript.com/lyrebird
[2] https://github.com/iperov/DeepFaceLab
[3] https://github.com/iperov/DeepFaceLive
[4] https://www.aftonbladet.se/nyheter/a/rE1qol/fejkad-video-pa-zelenskyj-spreds-barnslig-provokation
[5] https://arxiv.org/abs/1809.00888