Heim >Web-Frontend >H5-Tutorial >Verwenden Sie HTML5-Canvas, um einfachen Bestätigungscode zu knacken und Tutorial-Fähigkeiten für die ImageData-Schnittstelle application_html5 zu erhalten
Das akademische Verwaltungssystem unserer Schule (es scheint von mehr als nur unserer Schule genutzt zu werden) stürzt bei der Kursauswahl ohne Erklärung ab. Manchmal muss ich den Bestätigungscode wiederholt eingeben, um einen Kurs auszuwählen. Wenn ich an Tausende von College-Studenten denke, die ihre Zeit damit verschwenden, den Bestätigungscode einzugeben, fühlte ich mich verpflichtet, die Menschheit zu retten.
Nachdem ich gesucht habe, habe ich diesen Artikel gesehen, der vor 3 Jahren geschrieben wurde. Ich habe mich auf die erste Hälfte bezogen und das TamperMonkey-Plugin verwendet, um ungefähr den gewünschten Effekt zu erzielen. Sie können dieses Skript bei Userscript herunterladen, es ist auch auf GitHub verfügbar. Der Code ist hässlich, bitte debuggen Sie ihn, bitte geben Sie mir einen Rat.
Lassen Sie uns über die Idee sprechen: Der Canvas in HTML 5 verfügt über eine Schnittstelle getImageData, mit der Pixeldaten aus dem Verifizierungscodebild abgerufen werden können. Jedes Pixel hat vier Werte, die r, g, b entsprechen, und a, r, g und b sind die drei Farben Rot, Grün und Blau, und a ist die Transparenz.
Ich habe festgestellt, dass der Bestätigungscode des Bildungsmanagementsystems 5 Ziffern hat und die Schriftgröße gleich bleibt. Obwohl es im Hintergrund Störungen gibt, unterscheidet sie sich offensichtlich stark von der Schriftfarbe, die ich verwendet habe eine sehr große Methode: Wir wissen, dass der RGB-Wert umso größer ist, je heller die Farbe ist, und je dunkler die Farbe ist. Wenn die RGB-Summe kleiner als 350 ist (dieser Wert wird gemessen), stelle ich der Einfachheit halber den RGB-Wert auf 255 ein 0. Auf diese Weise entsteht ein Bild mit weißem Text auf schwarzem Hintergrund.