Rumah >hujung hadapan web >tutorial js >12306 kod pengesahan memecahkan idea berkongsi_kemahiran javascript

12306 kod pengesahan memecahkan idea berkongsi_kemahiran javascript

WBOY
WBOYasal
2016-05-16 16:07:331713semak imbas

Idea untuk memecahkan kod pengesahan 12306,
Kebarangkalian Pengumpulan Imej

//Analisis:
1. Terdapat 8 gambar dalam satu kod pengesahan, dengan maksimum 8 jenis dan sekurang-kurangnya tidak pasti
2. 8 gambar itu disusun secara teratur dan boleh diasingkan dengan mudah
3. Pustaka gambar hendaklah dihadkan dan boleh dikumpul, dicincang dan disimpan dalam pustaka Gambar dari jenis yang sama perlu dikaitkan di sini
(seperti "cawan", "berus", dll.)
Nota: Cincang imej di sini bukan md5. Terdapat banyak algoritma, jadi cari sendiri.

//Seterusnya, saya menganggap bahawa gambar telah dikumpul dan klasifikasi telah selesai, dan saya akan memulakan pengiktirafan:
1. Pilih kod pengesahan, bahagikannya kepada 8 gambar, kirakan cincangan masing-masing dan kemudian tanyakan
yang sepadan bagi cincang ini Taip (seperti "cawan", "berus", dsb.), di sini diandaikan bahawa kadar ketepatan pengecaman imej ialah 100%

2. Pilih secara rawak jenis yang ditanya dalam langkah sebelumnya dan klik kedudukan yang sepadan. Tidak perlu mengenal pasti
di atas di sini Aksara Cina, dari segi kebarangkalian, dalam kes yang melampau, kesemua 8 gambar adalah berbeza, dan kadar pemilihan rawak yang betul ialah 12.5%. Jadi,
Secara teorinya, anda boleh berjaya log masuk dalam 8 percubaan.

//Kesukaran:
1. Masalahnya mungkin untuk mengklasifikasikan, anda perlu mengaitkan gambar dari jenis yang sama

//Beberapa cadangan untuk meningkatkan kesukaran pengecaman
1. Tambahkan gangguan linear pada gambar, atau herotkan gambar
2. Susun 8 gambar secara tidak teratur untuk menyukarkan untuk diasingkan

// Hanya beberapa idea berdasarkan pengalaman lalu, tetapi belum dilaksanakan. Komen dialu-alukan...

Di atas adalah keseluruhan kandungan artikel ini Sila luangkan sedikit masa untuk berkongsi artikel dengan rakan anda atau tinggalkan komen. Kami akan berterima kasih atas sokongan anda!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn