Extrem einfache Identifizierung des PHP-Bestätigungscodes
藏色散人nach vorne
2021-04-27 11:20:213847Durchsuche
Dieser Artikel führt Sie in die supereinfache Identifizierung des PHP-Bestätigungscodes ein. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.
Bestätigungscodes finden Sie überall auf der Anmeldeseite, der Registrierungsseite usw. der Website, aber ist Ihr Bestätigungscode wirklich sicher? Vielleicht genügt ein einfaches kleines Programm, und Ihr Bestätigungscode gleicht einer Fälschung. Dieser Artikel ist nur eine einfache Implementierung und wird nicht zu tief gehen.
Wo Angriff ist, gibt es Verteidigung
Ich habe diesen Artikel ausschließlich geschrieben, weil der öffentliche Account meines Kollegen einen Artikel mit dem Titel „Üben Sie – schreiben Sie einen Bestätigungscode“ veröffentlicht hat, und ich werde ihn einfach knacken und ihm einen geben Probieren Sie es aus. Leben Viel Spaß überall ~
Bestätigungscode generieren
Kopieren Sie den Code, führen Sie ihn aus und generieren Sie den folgenden Bestätigungscode:
Wie im Bild gezeigt, können wir feststellen, dass das Format dieses Bestätigungscodes ist Insbesondere „Standard“, die Schriftgröße ist gleich und die Farbe ist Schwarz, was uns viel Ärger erspart.
Binarisierung
Das Programm liest das Bild und binarisiert es (der entscheidende Punkt besteht darin, den Schwellenwert für die Schriftfarbe zu finden. Dieser Bestätigungscode ist komplett schwarz, also ...), und das Programm beurteilt Pixel für Pixel, um zu bestimmen, welche Schriftart, zu der es gehört. Die Farbe ist mit * markiert und die Nicht-Schriftfarbe ist mit 0 markiert.
/code>)YTAD)
分析图像,切割
切割出字符串(先切绿线,再分别切蓝线,这样即使这个字符上下移动一下,也不太容易影响我们的切割)
提取特征码
将字符串拆分后,我们多次获取验证码,将a-z,A-Z,0-9等验证码的特征码全部记录下来。
这个是提取出来的字母Y Analysieren Sie das Bild, schneiden Sie es ausSchneiden Sie die Zeichenfolge aus (schneiden Sie zuerst die grüne Linie und dann die blaue Linie separat ab, sodass dies auch dann der Fall ist, wenn sich das Zeichen auf und ab bewegt beeinträchtigt unseren Schnitt nicht so leicht) f.png "/>Feature-Code extrahieren
Nachdem wir die Zeichenfolge geteilt haben, haben wir den Bestätigungscode mehrmals erhalten und alle Feature-Codes von a-z, A-Z, 0-9 und andere Bestätigungscodes aufgezeichnet.
< ;center>Dies ist der extrahierte Buchstabe Y🎜🎜Erkennung🎜🎜Der Erkennungsprozess besteht darin, den obigen Vorgang zu wiederholen: Binarisierung->Schneiden->Feature-Code extrahieren und dann Nach dem Vergleich der Ähnlichkeit mit dem zuvor extrahierten Feature-Code ist alles in Ordnung. 🎜🎜PHP-Code-Implementierung🎜
Das obige ist der detaillierte Inhalt vonExtrem einfache Identifizierung des PHP-Bestätigungscodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen