Saya menemukan SVGCaptcha , dan segera tahu itu adalah ide yang buruk.
Saya ingin Anda menunjukkan betapa buruknya ide ini dengan mengekstraksi kode validasi dari gambar SVG yang dihasilkan kode.
Contoh gambar terlihat seperti ini:
Berikut adalah sumber dari contoh gambar:
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve"
width="200" height="40"
> <rect x="0" y="0" width="200" height="40"
style="stroke: none; fill: none;" >
</rect> <text style="fill: #4d9363;" x="5" y="34" font-size="20" transform="translate(5, 34) rotate(-17) translate(-5, -34)">8</text>
<text style="fill: #be8b33;" x="125" y="29" font-size="21" transform="translate(125, 29) rotate(17) translate(-125, -29)">f</text>
<text style="fill: #d561ff;" x="45" y="35" font-size="20" transform="translate(45, 35) rotate(-2) translate(-45, -35)">4</text>
<text style="fill: #3de754;" x="85" y="31" font-size="21" transform="translate(85, 31) rotate(-9) translate(-85, -31)">8</text>
<text style="fill: #5ed4bf;" x="25" y="33" font-size="22" transform="translate(25, 33) rotate(16) translate(-25, -33)">u</text>
<text style="fill: #894aee;" x="105" y="28" font-size="25" transform="translate(105, 28) rotate(9) translate(-105, -28)">1</text>
<text style="fill: #e4c437;" x="65" y="32" font-size="20" transform="translate(65, 32) rotate(17) translate(-65, -32)">x</text>
</svg>
Input adalah gambar SVG, yang merupakan format tekstual.
Satu-satunya batasan nyata adalah bahwa kode Anda harus menghasilkan nilai dalam urutan yang benar . Elemen
input <text>
dalam urutan acak sehingga Anda harus memperhatikan x
atribut dalam <text>
tag
Skor adalah jumlah byte dalam kode
Karena kode saat ini melakukan dua transformasi yang membatalkan satu sama lain Anda dapat mengabaikannya, tetapi jika Anda mempertimbangkannya, teruskan dan ambil pengurangan 30% dari skor Anda.