Gemacht für Studierende, Autoren und Forschende
Code-Plagiatsprüfer von ZeroTell · umbenannte Variablen verbergen keine Kopien
Füge mehrere Abgaben ein oder lade sie hoch und erhalte eine Ähnlichkeitsmatrix mit übereinstimmenden Zeilen nebeneinander – oder prüfe eine einzelne Datei gegen im Web veröffentlichten Code.
Ähnlichkeitsbericht
Hier erscheint dein Bericht: eine Ähnlichkeitsmatrix, die ähnlichsten Paare mit übereinstimmenden Zeilen nebeneinander oder die Webseiten, die deinen Code enthalten.
So funktioniert der Code-Plagiatsprüfer
Code wird normalisiert
Kommentare und Leerzeichen werden entfernt, und jede Variable, jeder Funktionsname, jede Zahl und jeder String wird durch einen Platzhalter ersetzt – Umbenennen und Umformatieren ändern also nichts.
Jede Datei erhält Fingerabdrücke
Überlappende Folgen von acht Tokens werden gehasht, und ein Winnowing-Schritt behält eine repräsentative Auswahl – die Methode hinter dem bekannten MOSS-System.
Jedes Paar wird verglichen
Der Anteil gemeinsamer Fingerabdrücke zweier Abgaben ergibt ihre Ähnlichkeit, dargestellt in einer Matrix für bis zu 10 Dateien.
Du liest die übereinstimmenden Zeilen
Wähle ein Paar, um beide Dateien nebeneinander mit hervorgehobenen Übereinstimmungen zu sehen.
Zwei Arten zu prüfen
Für wen es gedacht ist
Programmier-Lehrkräfte
Finde Abgabenpaare mit gleicher Struktur, auch wenn Variablennamen geändert wurden.
Tutoren
Grenze eine große Menge auf die wenigen Paare ein, bei denen sich genaues Lesen lohnt.
Studierende
Stell vor der Abgabe sicher, dass Code aus einem Tutorial korrekt als Quelle angegeben ist.
Engineering-Manager
Prüfe, ob ein Code-Schnipsel in öffentlichen Repositorys oder Foren auftaucht, bevor er ausgeliefert wird.
Häufige Fragen
Nein. Namen, Literale, Kommentare und Leerraum werden vor dem Fingerprinting entfernt, daher erzielt eine Kopie mit lauter umbenannten Variablen denselben Wert wie eine exakte Kopie. Das Umsortieren ganzer Funktionen senkt den Wert nur leicht, weil Übereinstimmungen bereichsweise gefunden werden.
Jede Abgabe wird auf eine Menge von Fingerabdrücken aus Folgen von acht Tokens reduziert. Die Ähnlichkeit ist die Überschneidung zweier Mengen (gemeinsame Fingerabdrücke geteilt durch die durchschnittliche Mengengröße), und der Bericht zeigt außerdem, welcher Anteil jeder Datei abgedeckt ist.
Nicht für sich allein. Startercode, Aufgabenvorlagen, Standardalgorithmen und sehr kurze Übungen überschneiden sich zwangsläufig. Lies die hervorgehobenen Zeilen und sprich mit den Beteiligten, bevor du Schlüsse ziehst.
Bis zu 12 markante Zeilen deiner Datei werden als exakte Phrasen im öffentlichen Web gesucht. Private Repositorys oder Abgaben anderer Nutzer werden nicht durchsucht – ein unauffälliges Ergebnis beweist also nicht, dass der Code original ist.
Nicht in den Pro-Plänen* (*Fair Use: Jeder Vergleich und jede Websuche zählt als ein Durchlauf, bis zu 300 Durchläufe pro Tag, und die Suchen einer Websuche werden außerdem auf 1.000 Websuchen pro Tag angerechnet). Ohne Plan verbraucht der Vergleich von 2–10 Abgaben 1 Credit und eine Websuche 2 Credits. Für beides brauchst du ein ZeroTell-Konto.
Nein. Abgaben werden im Arbeitsspeicher verglichen und danach verworfen. Im Web-Modus werden die ausgewählten Zeilen für die Suche an unseren Suchanbieter gesendet.
Finde die Paare, die einen genaueren Blick verdienen
Füge zwei oder mehr Abgaben ein und sieh, was sie gemeinsam haben.
Code vergleichen