How-To Analyze Everyone – Teil X: Wie Computer herausfinden können, wer hier welche Texte schreibt

CC-BY-ND 2.0

Trinkt man aus einem Glas, hinterlässt man seine Fingerabdrücke. Kämmt man sich das Haar, bleiben eindeutige DNA-Spuren zurück. Schreibt man einen Text, hinterlässt man seinen stilistischen Fingerabdruck, heißt es oft. Doch die Frage ist: Kann man anhand des Geschriebenen ablesen, wer einen Text verfasst hat? Und reicht dazu ein einzelner Tweet oder muss es schon eine mehrseitige Abhandlung sein? Dem wollen wir in der heutigen Folge von „How-To Analyze Everyone“ nachgehen.

Die Disziplin, mit der wir es zu tun haben nennt sich Stilometrie – das „Messen“ von Stil mithilfe statistischer Methoden. Damit lassen sich eine ganze Reihe von Fragestellungen behandeln, eine Hauptanwendung ist die Autorenerkennung beziehungsweise -zuordnung. Weitere sind die Autorenverifikation, auch zum Nachweisen von Plagiaten, das Ermitteln von Autoreneigenschaften wie Alter und Geschlecht sowie die Ermittlung stilistischer Inkonsistenzen, etwa um bei gemeinsamen Werken Rückschlüsse auf die Autorschaft bestimmter Teile zu treffen.

Die Algorithmen, mit denen man Autorenerkennung angehen kann, sind zahlreich. Wie immer steht quasi die ganze Palette aus der künstlichen Intelligenz zur Verfügung und jeder Forscher hat seine Lieblingsverfahren (Stichwort: „Wer einen Hammer hat, …“). Wir wollen uns erstmal den groben Verfahrensweg vornehmen, bevor wir uns um die konkrete Erkennung kümmern. Praktischerweise versammeln wir auf netzpolitik.org eine Menge Autoren, die eine Menge Text produzieren, bieten ergo eine ideale Ausgangsbasis, um alles einmal am eigenen Leib durchzuspielen.

Zum Mitmachen

Forscher der Drexel University haben zwei Tools entwickelt, die dabei helfen sollen, sich vor Autorenidentifikation zu schützen. JStylo analysiert den individuellen Stil des Nutzers und Anonymouth baut auf den Ergebnissen auf und versucht als Gegenpart dem Nutzer Hinweise zu geben, wie er ihn verschleiern kann. Wir werden JStylo nutzen, um Texte von Markus, Andre und mir zu untersuchen. Das Tool dazu kann sich jeder selber runterladen und Schritt für Schritt mitmachen.

Schritt 1: Testdaten sammeln

Disclaimer: Im Vergleich zu einer realen Anwendung ist die Menge an Daten, die wir hier zum Testen nutzen, lächerlich winzig und die Ergebnisse daher auch nicht verallgemeinerbar. Das Prinzip aber bleibt gleich.

Grundlage aller Klassifizierungs- und Lernverfahren sind Daten, idealerweise viele Daten. Wir geben uns mit einer kleinen Beispielmenge zufrieden, nämlich mit je zehn Texten pro Autor zum Erlernen der Charakteristika und je zwei zum Testen. Die Texte sind von großen Wortzitaten bereinigt, denn sonst würden wir ja beispielsweise nicht den Stil von Andre lernen, sondern den von Regierungssprecher Seibert oder Kanzlerin Merkel. Und, um es mit deren Worten zu sagen: „das geht gar nicht“.

Damit ihr euch die Texte nicht selbst zusammenkopieren müsst, hier das Tarbällchen zum Download.

Öffnet man JStylo, muss man dem Programm sagen, welche Daten es für die Erkennung benutzen soll. Das könnt ihr entweder manuell tun, oder ihr wählt unter ‚Load problem set …‚ die ‚problemset_desc.xml‚-Datei aus dem .tar.gz-Archiv aus. Vorher müsst ihr in der Datei noch *customdir* durch das Verzeichnis ersetzen, in das ihr das Archiv entpackt habt.

Schritt 2: Features wählen

Features sind diejenigen Merkmale, die dazu genutzt werden sollen, Autoren zu unterscheiden. Dazu gehören Eigenschaften des gesamten Textes an sich – wir hatten ja schon einmal festgestellt, dass sich die durchschnittliche Länge unserer Texte teilweise stark unterscheidet -, als auch Auffälligkeiten bei der Wortwahl, Satzstellung, Interpunktion bis hin zu typischen, immer wieder auftauchenden Fehlern.

Wir wählen einfach das bereits vorgegebene Set ‚Write Prints (Limited) (German)‚ aus. Das Writeprints-Featureset enthält unter anderem, wie viele Ziffern im Text vorhanden sind, wie oft Wörter mit bestimmter Länge vorkommen, welche Satzkonstruktionen häufig sind und wie häufig Zweier- und Dreierwortgruppen auftauchen. Bei einigen von uns laut Analyse besonders beliebt: ‚in Berlin‘ oder auch ‚wir sind gespannt‘.

Schritt 3: Algorithmus aussuchen

Im ‚Classifiers‚-Tab von JStylo finden sich unzählige Klassifikationsverfahren, die zur Autorenbestimmung eingesetzt werden können. Wir wählen ‚MultilayerPerceptron‚ und heben uns die Erklärung für später auf.

Schritt 4: Let the magic happen!

Im letzten Schritt drücken wir einfach mal auf das ‚Run Analysis‚-Knöpfchen und schauen, was sich ergibt. Als Analysetyp soll unser Algorithmus die Trainingsdaten, also die je zehn Dokumente von Markus, Andre und mir, nehmen, ein Modell daraus bauen und am Ende die Zuordnung der Testdokumente schätzen. Und das klappt auch ganz gut, nach einigem Warten zeigt sich folgender Output:

jstylo_screen

Das ‚+‘ hinter dem Namen zeigt, wer als wahrscheinlichster Autor erkannt wurde, die Zahl weist darauf hin, wie eindeutig oder „sicher“ die Zuordnung ist. Die Testtexte ‚mbTx‘ wurden korrekterweise Markus, die ‚amTx‘-Beispiele Andre und der Rest mir zugeordnet.

Doch was passiert da im Hintergrund, was macht das „vielschichtige Perzeptron“ mit den Texten?

Multilayer-Perzeptron: Vorwärts füttern und rückwärts Fehler beseitigen

Ein Multilayer-Perzeptron ist eine Form eines künstlichen neuronalen Netzes. Ein einzelnes Perzeptron stellt dabei ein Modell einer realen Nervenzelle dar. Sie erhält Eingaben verschiedener anderer Zellen und anhand dieser Eingaben entscheidet sich, ob sie „aktiv“ ist oder nicht.

neuron

Formalisiert ausgedrückt: Die Eingaben I werden, multipliziert mit dem ihnen jeweils zugeordneten Gewicht w von der Aktivierungsfunktion Σ aufsummiert. Danach entscheidet eine Schwellwertfunktion, ob das Neuron aktiv ist, also ob die Ausgabe O den Wert ‚1‘ oder ‚0‘ hat. Dabei kann – muss aber nicht – auch mit einbezogen werden, welchen Aktivierungszustand das Neuron vorher hatte.

Genaugenommen ist ein einzelnes Neuron nichts anderes als eine Trennfunktion à la: „Wenn das Ergebnis größer als X ist, dann sei aktiv, sonst nicht“. Betrachten wir ein einfaches „Anna-Entscheidungs-Neuron“ mit einer binären Schwellwertfunktion: Das Neuron erhält als Eingabe, wie viele Wörter ein Text hat, wie oft ein Ausrufezeichen darin vorkommt, wie groß die durchschnittliche Wortlänge ist ebenso wie die Angabe der Häufigkeit der Wortgruppe „in Berlin“. Unser Neuron wurde bereits trainiert, das heißt, es kennt die Gewichtung der einzelnen Werte, die einen für mich typischen Text charakterisiert und den Schwellwert, ab dem es „feuern“ soll.

annaneuron

Setzen wir unserem Neuron jetzt einen Text von mir mit 213 Wörtern, 0 Ausrufezeichen, einer durchschnittlichen Wortlänge von 6,2 und dem einmaligen Vorkommen von „in Berlin“ vor. Die Aktivierungsfunktion Σ ergibt demnach:

Σ = 213 * 0,2 + 0 * -1 + 6,2 * 2 + 1 * 0,5 = 55,5

Da der Schwellwert Θ bei 50 liegt, ist unser „Anna-Entscheidungs-Neuron“ aktiv, also der Meinung, der analysierte Text sei von mir.

Ein so einfaches Modell reicht für die meisten realen Probleme nicht aus und man kann die Flexibilität eines Perzeptrons dadurch erhöhen, dass man mehrere Schichten einführt und Perzeptronen hintereinander schaltet, deren Ergebnisse sich auf die folgenden auswirken. Ein zweischichtiges Perzeptron zur Autorenerkennung könnte aussehen wie im folgenden Bild:

mlp

Die Input-Neuronen, die numerische Repräsentationen bestimmter Texteigenschaften repräsentieren, und die Outputneuronen, die entscheiden, ob ein Text zu einem Autor gehört oder nicht, bleiben erhalten. Es wird aber eine Schicht „versteckter“ Neuronen eingeführt, die eine größere Flexibilität bei der Formulierung von Bedingungen bietet. Was auffällt: Eine real-intuitive Bedeutung dieser verborgenen Schicht(en) ist nicht greifbar. Die Parameter, die für die einzelnen Gewichte und Aktivierungsfunktionen gesetzt werden müssen, können nicht einfach so geschätzt werden. Vor allem wenn man nicht nur von einigen wenigen wie hier, sondern von Modellen mit über hundert Neuronen ausgeht.

Das Training des Netzes muss daher automatisiert erfolgen. Dafür füttert man in drei sich wiederholenden Phasen das Netz mit Beispielen bekannter Autorschaft (Forward Pass) und schaut sich den Fehler an. Wenn er oberhalb einer festgelegten Akzeptanzschwelle liegt, modifiziert man von hinten nach vorn die Gewichte (Backward Pass) und beginnt von vorn.

hh
Zufällig gewählter Gewichtsvektor w und iterative Ermittlung des kleinsten Fehlers

Die Modifikation der Gewichte erfolgt mit dem Gradienabstiegsverfahren. Ausgehend von anfänglich zufällig ausgewählten Gewichten wird ein Gradient ermittelt. Vereinfachend kann man sagen, dass die Steigung bestimmt wird, in welcher Richtung der Fehler größer und in welcher er kleiner wird.

Man kann sich leicht vorstellen, dass es dabei einige Fallstricke gibt. Werden die Anfangsgewichte ungünstig gewählt, kann es sein, dass man in einem lokalen Minimum endet und das globale Minimum viel kleiner ist – man landet im falschen Fehler-Tal. Wählt man eine zu große „Lernrate“, das heißt sind die Schritte in absteigende Gradientenrichtung zu groß, kann es passieren, dass enge, aber tiefe Täler übersprungen werden. Ist eine Fehlerkurve sehr flach, dauert das Verfahren sehr lange.

Herausforderungen

Wie immer stellt sich die reale Welt nicht so einfach dar, wie unser Spielzeugbeispiel. Alle Texte auf Deutsch, alle in ausreichender Länge, alle von der selben Gattung und in einem begrenzten Zeitraum verfasst – keine Standardbedingungen. Und dann auch noch manuell auf Zitate durchsucht. Im echten Leben steht man vor einer ganzen Reihe Probleme, die bewältigt werden wollen. Sehr kurze Texte lassen beispielsweise wenig Raum für individuelle Merkmale, wie beispielsweise auf Twitter oder in anderen Microblogs. Hinweise lassen sich durch teils inflationäre Nutzung von Satzzeichen à la ‚!!!!!?!!‘ oder die Verwendung von Emoticons ziehen. Die Feststellung der Autorschaft wird ebenso über verschiedene Textgattungen oder sogar Sprachen hinweg erschwert. Ein Tagebucheintrag ist in einem anderen Stil verfasst als ein wissenschaftlicher Artikel oder gar Quellcode von Software. Und letztlich ist der sprachliche Ausdruck keine Konstante wie ein tatsächlicher Fingerabdruck, sondern entwickelt sich im Lauf des Lebens weiter.

Wo ist das Problem?

Stilometrische Verfahren zur Autorenerkennung wurden bereits lange vor dem Aufkommen des Internets als Massenpublikationsmedium genutzt. Diskussionen um die Autorschaft von Shakespeares Dramen haben bereits im 17. Jahrhundert Menschen auf die Suche nach individuellen Merkmalen im geschriebenen Wort getrieben. Weitere Anwendungsfälle sind Bekennerschreiben und andere politische Texte, an deren Autorschaft Strafverfolger im Besonderen interessiert sind. Die forensische Linguistik versucht, einen sprachlichen Fingerabdruck von Tätern zu ermitteln, um ihn dann zu überführen oder zu verfolgen.

Die Fülle von Texten im Netz bietet eine gute Ausgangslage für solcherlei Anliegen. Man kann sich vorstellen, dass alle Autoren unserer Seite willkommene Zielpersonen für eine Sprachanalyse darstellen. Jede Menge Fließtext, die dazu verwendet werden kann, ihren oder seinen stilistischen Fingerabdruck zu erstellen. Vom leichtfertigen Schreiben eines Bekennertextes für eine Gruppe sollte man daher lieber absehen, wenn man häufig Text unter seinem Realnamen publiziert.

Autorenidentifikation ist gefährlich für Whistleblower, Hacker und andere, die Grund haben, ihre Identität nicht offenlegen zu wollen. Auch die Nutzung von Pseudonymen wird durch Korrelationen zwischen Veröffentlichungen erschwert. In einer Studie des  Privacy, Security, und Automation Lab der Drexel University gelang es in „Untergrund“-Foren wie blackhatpalace.com oder L33tcrew.org 72% der Nutzer korrekt zuzuordnen und das obwohl die Aufgabe durch mehrsprachige Beiträge und die Nutzung von leetspeak erschwert wurde.

Aber am Ende gilt, dass nur Schätzungen und Ähnlichkeiten ermittelt werden können. Kennt man auffällige Stilmerkmale, kann man sie vermeiden. Will man seine Autorschaft verschleiern, kann man Ghostwriter einsetzen. Und über die Zeit verändern sich auch die persönlichen Charakteristiken. So eindeutig, wie Strafverfolger Autorenidentifikation also manchmal gern sehen würden, ist sie nicht. Vor allem nicht im Internet.

Die Wissenschaftler der Universität Drexel haben auch herausgefunden, dass ihre Verfahren am besten dann funktionieren, wenn der Kreis der Personen, unter denen der Autor sich mutmaßlich befindet, auf weniger als 50 Personen begrenzt ist und pro Person Beispieltexte von insgesamt zumindest 6500 Wörtern vorliegen. Diese Bedingungen gelten, wenn man einen Plagiatsverdacht oder ein geschlossenes Forum von Personen hat, aber nicht, wenn man den Urheber eines politisch motivierten Textes „im Internet“ sucht.

Also: Vermeintliche Analysen immer mit Vorsicht genießen, aber auch daran denken, dass Pseudonyme nicht helfen, wenn der Text doch arge Ähnlichkeit mit dem restlichen eigenen Schriftmaterial hat. Und bitte nicht vergessen, dass alle stilistische Verschleierung wertlos ist, wenn man die Urheberschaft zwar nicht am Text, sondern beispielsweise an der IP-Adresse eines veröffentlichten Postings oder einer Mail nachvollziehen kann.

Frohes Schreiben!

In dieser Reihe erschienen:

21 Ergänzungen

  1. Liebe Anna,

    vielen Dank. Die „How-To…“-Serie ist durchgehend interessant und fundiert, immer wieder sind Sachen dabei, die mir ein „Ach, echt?“ oder ein „Ach, deshalb!“ entlocken.

    Zu diesem Text habe die etwas pingelige Anmerkung, ob es nicht eigentlich schon „Teil X“ sein müsste?

    Viele Grüße und nochmal danke.

      1. Ich habe gerade mal wieder ungewollt und ohne mir einer Schuld bewusst zu sein einen „comment is awaiting moderation“ getriggert, könntet ihr vielleicht die Bayesianischen Tabellen eures Filterbots mal nachjustieren oder seine simulierten Neuronen mal etwas besser anlernen, ihn also etwas umerziehen?! :)

        1. Wenn das mal in unsrer Macht läge ;) Aber tatsächlich, Filterbots kann mensch sich auch mal anschauen.

      2. Wie jetzt, seine Technik nicht im Griff zu haben würdet ihr dem BND ja wohl auch nicht durchgehen lassen, oder? False positives sind digitale Diskriminierung in industriell automatisiertem Maßstab! Keine Meinungsäußerung darf einfach mal so anlasslos eingeknastet werden! (Ja, det war een kühlet Blondet zu viel! :-)

  2. Und wenn man den Text durch irgendein übersetzungsprogramm zieht und dann wieder rückübersetzt ?

    Ist zwar aufwändig sollte aber dennoch möglich sein das zu verschleiern.


    1. „But this can also distort the meaning completely.“
      „Lakin bu da tamamilə mənasını təhrif edə bilər.“
      „Dies kann jedoch völlig den Sinn zu verfälschen.“
      „Тым не менш, гэта можа цалкам сказіць сэнс.“
      „Madankollu, li tista ‚tgħawweġ kompletament bla sens.“
      „तथापि, तो पूर्णपणे निरर्थक तपशील शकते.“
      „Bisan pa niana, kini mahimong bug-os nga kapuslanan nga mga detalye.“
      „Si kastaba ha ahaatee, waxay noqon kartaa faahfaahinta wax micno ah.“
      „然而,详情可以是一个大问题。“
      „Allerdings können die Details ein großes Problem sein.“

      Oh, gar nicht so schlecht. (Quelle: https://translate.google.com)

    2. Hin und her übersetzen erscheint mir zu verlustreich, die üblichen SEO Tools zum Textspinning sollten für eine erfolgreiche Verschleierung eines Bekennerbriefes der DAF genügen!

      (Falls sich beim Lesen der Neuwort-Abküzung DAF einem unserer verbeamteten Mitleser die Fussnägel hochrollen sollten, er möge sich hiermit getrollt fühlen! :)

  3. Der Vollständigkeit halber: Was wäre passiert, wenn ihr von einem anderen Autor die Texte genommen hättet, wären die einem von euch zugewiesen worden? Oder wären die unter „Unknown“ gelandet?

    1. Gute Nachfrage, danke! Zugegeben, der Fall hier ist ein bisschen „ideal“ gewählt, das heißt, natürlich kann man nicht immer erwarten, dass der richtige Autor klassifiziert wird, besonders nicht bei der kleinen Beispielmenge. Deshalb muss man immer auf die Wahrscheinlichkeitswerte schauen. Zum Beispiel beim zweiten Testtext findest du nur eine Zuverlässigkeit von knapp über 0.5, heißt, fast hätte auch Andre den Text zugewiesen bekommen. Wenn dann bei allen dreien 0.33 steht, weißt du, es gibt keine eindeutige Zuordnung.

      „Unknown“ wäre es hier aber nicht geworden, da wir nur drei Output-Möglichkeiten haben. Das ist eher bei anderen Methoden relevant, bei denen man „Markus – unbekannt“, „Andre – unbekannt“ und „Anna – unbekannt“ testet. Wenn dann bei keinem eine Zuordnung anschlägt, fiele der Text in die „Unknown“-Kategorie. Ich vermute, die Spalte ist aufgrund der Standard-Programm-Formatierung noch mit drin.

  4. Dein Aufsatz vermittlet mir eine erste Einsicht in die Stilometrie. Man kann sich nunmehr denken, wie übergriffige Behörden im Rahmen von Big Data & Co. mit den Möglichkeiten der Stilometrie umgehen. Wenn ich mir vorstelle Deep Package Inspection mit Echtzeit-Stilometrie zu verschränken, wird mir schnell bewußt welches Potential darin liegt.
    Danke für die Einsicht!

  5. Das ganze stößt auch an seine Grenzen. Ich habe als Test mal Texte und Autoren aus der Redaktion, bei der ich mitarbeite, zusätzlich zu euren im Archiv mit hineingenommen, und wahlweise bekommt ihr teils Testartikel aus meiner Redaktion oder meine Redakteure eure Testartikel zugewiesen.

  6. Es gibt allerdings auch Menschen, die ganz bewusst ihre Wortwahl ändern.

    Allerdings existieren auch Wesenheiten in unserer Menschheit, die sich völlig im Klaren darüber sind, dass sie ihre Wahl der verwendeten Worte manipulieren.

    Ihc knan auhc gnaz bewust Felher in meinhe Texste einbuaen.

    Und nun ? ;)
    In solchen Fällen würde doch wahrscheinlich auch die Software scheitern, oder?

    In gegebenen Fällen eines solchen Ausmasses wäre es doch nicht unwahrscheinlich, dass auch das Programm falsche Ergebnisse liefert, oder irre ich?

    :D

    1. Naja, die Software könnte auch spezielle Wörter, die sonst keiner verwendet, als Kriterium aufnehmen. Wenn man unbewusst/unbeabsichtigt Fehler macht, ist es relativ wahrscheinlich, dass man diese Fehler öfter macht und sich damit identifizieren könnte. Ob die Software so etwas macht (Verwendung von Wörtern, Wortgruppen, Neologismen, Schreibfehler, Sonderzeichen … zu analysieren) weiß ich nicht – wäre aber prinzipiell möglich.

  7. Danke für den Text. Was mich daran erinnert, dass ich euch endlich auch mal etwas spenden wollte. Noch dieses Jahr.

  8. Könntet ihr bitte einen Text über Gentrifizierung machen; Ich würde gerne das BKA auf euch hetzen. :)

  9. Interessant und vermutlich bin ich da etwas zu spät dran^^

    Ich habe ja selbst so meine kleinen Erfahrungen gesammelt, hauptsächlich im Internet und das in erster Linie auf High-Fantasy schreib Boards… Mehr so role play games in reiner Schreibform, soll bedeuten: Spieler schreibt Text und lässt seinen Char irgendwo auf in die Wiese setzen. Dies ist jetzt nur grob, natürlich kann es noch viel mehr geben aber das ist uninteressant. Interessant wird es doch eher wenn man sich neben dem Board noch in einem Skype oder ICQ, Plattform bewegt. Den Online, wie in einer Chatplatform, da gibt man ja nie wirklich seinen eigenen Namen und Geschlecht an.^^ Wäre ja zu einfach^^

    Wenn man sich jetzt aber mit einer unbekannten Person unterhält, will man ja doch wissen was diese Person ist. Männlich, Weiblich. Das ist vermutlich das einfachste herauszufinden. 10 Texte sind zwar schon eeeetwas wenig^^ aber je mehr Erfahrung man hat desto einfacher wird es. Es geht ohne Programm. Es zählt nur die Erfahrung. Auf was man achten muss… Keine Ahnung xD Ich muss teilweise auch den Text mehrmals lesen, aber meist ist es mir schon beim ersten Satz bewusst ob ein Mann oder eine Frau dahinter steckt. Das alter herauszufinden ist so eine Sache, aber nicht unmöglich. Ältere Menschen haben meist noch fast eine schönere Schreibweise oder eine andere und vor allem beim Lesen fällt das auf. Von Anna selbst würde ich behaupten das sie so ungefähr 27 ist… Von Dr. Murke das er schon über 50 ist und von Grauhut das er schon über 30 ist.

    Es muss natürlich nicht stimmen, da ich es ja nur aus den Texten gelesen haben, aber das kann ja jeder andere auch. Es ist die Auffassung wie ein jeder den Text liest und schreibt. Ich selbst habe keine hundert prozentige Übereinstimmung… Aber sie ist doch sehr weit oben.

  10. Die Seite TLZ (The Love Zone) war die größte Pedo Seite im Darknet (Deep Web). Der Admin davon wurde nun gefasst ! Und zwar aufgrund seines Schreibstils ! Da sieht man wie wichtig es ist nicht nur auf die technischen Sachen zu schauen, wie man sich anonymisieren kann, sondern eben auch auf solche. Lest auf jeden Fall regelmäßig über neue Pläne und Strategien usw. von der Polizei und Staat. Netzpolitik ist da wirklich mit die beste Seite die ich kenne dazu. Ansonsten natürlich ebenfalls täglich HEISE.DE reinziehen sowie GOLEM.DE und auch DOTCOMSECURITY.DE

    Ach so, hier die Meldung wie die den gefasst haben. Lest UNBEDINGT alles durch
    http://www.couriermail.com.au/news/queensland/heroes-of-task-force-argos-went-to-extreme-lengths-to-track-shannon-mccoole-and-shut-down-sickening-pedophile-site/story-fnn8dlfs-1227365887039?nk=e693a60f7e3fae7018c06a4aab11882e

    Hier die wichtigen Ausschnitte zwecks Festnahme:

    „However the needle-in-a-haystack breakthrough came when Argos victim identification manager Paul Griffiths last year noticed the head administrator habitually used an unusual greeting in online communications. Scouring the web for other instances of this greeting, Griffiths zeroed in on McCoole, who had been chatting on unrelated, innocuous internet forums. Not only did McCoole use similar language, but the handles he went by were startlingly similar to the one used by the administrator on the abuse site.

    As Griffiths looked into McCoole’s background he learned he had access to a wide variety of children through his role at Families SA and alarm bells rang. With children in danger police immediately coordinated a raid on McCoole’s home in Adelaide. His computer was logged on to the site with his username visible, confirming the arrest of one of the biggest players in child pornography globally.

    Over the next six months, the detectives secretly ran the site from Brisbane’s police HQ while feeding information to international law enforcement colleagues to take down the network’s top echelon.

    After one key arrest of a co-administrator in the Netherlands, Argos was able to move the computer server hosting the site to Brisbane – giving them full access to every private message and exchange between members.“

Dieser Artikel ist älter als ein Jahr, daher sind die Ergänzungen geschlossen.