Panduan menggunakan kod pengesahan golang

PHPz
Lepaskan: 2023-03-30 09:23:19
asal
1985 orang telah melayarinya

Dengan perkembangan berterusan teknologi Internet dan senario aplikasi, kod pengesahan telah menjadi salah satu teknologi keselamatan yang paling penting dalam sistem Internet semasa. Dalam aplikasi web yang dibangunkan menggunakan bahasa golang, bagaimana menggunakan kod pengesahan untuk memastikan keselamatan log masuk pengguna, pendaftaran dan operasi lain? Artikel ini akan memberikan panduan untuk menggunakan kod pengesahan golang untuk rujukan anda.

1. Pustaka kod pengesahan Golang

golang menyediakan banyak perpustakaan kod pengesahan pihak ketiga untuk membantu kami membangunkan fungsi kod pengesahan, antaranya yang lebih popular ialah:

  1. Golang.org/x/image

Golang.org/x/image ialah perpustakaan pemprosesan imej yang disediakan secara rasmi oleh golang. Ia menyediakan pelbagai alat untuk memproses imej, termasuk kod pengesahan. Dalam pustaka ini, kita boleh menggunakan pustaka freetype untuk menjana kod pengesahan teks, atau menggunakan pustaka gif atau pustaka png untuk menjana kod pengesahan imej, dsb.

  1. Github.com/dchest/captcha

Github.com/dchest/captcha ialah perpustakaan kod pengesahan sumber terbuka yang menjana nombor berdasarkan bahasa go dan pemprosesan imej perpustakaan dan kod pengesahan surat. Pada masa yang sama, perpustakaan ini juga menyediakan pilihan kod pengesahan yang boleh disesuaikan, seperti panjang, fon, latar belakang, dsb.

  1. Github.com/mojocn/base64Captcha

Github.com/mojocn/base64Captcha ialah perpustakaan kod pengesahan yang dibangunkan berdasarkan bahasa go Ia akan dijana mengikut berbeza konfigurasi Jenis kod pengesahan yang berbeza, seperti nombor, huruf, bahasa Cina, dsb. Pada masa yang sama, perpustakaan juga menyokong pelbagai corak latar belakang kod pengesahan dan kesan gangguan, dan boleh mengembalikan imej kod pengesahan dalam pengekodan base64.

2. Hasilkan kod pengesahan golang

Di sini kami mengambil Github.com/mojocn/base64Captcha sebagai contoh untuk bercakap tentang cara menggunakan golang untuk menjana kod pengesahan.

  1. Pasang perpustakaan base64Captcha

Masukkan arahan berikut dalam terminal:

go get -u github.com/mojocn/base64Captcha
Salin selepas log masuk
  1. Buat dan tetapkan konfigurasi kod pengesahan

Kod sampel adalah seperti berikut:

config := captcha.ConfigCharacter{
    Height:             60,
    Width:              240,
    Mode:               captcha.CaptchaModeNumberAlphabet,
    ComplexOfNoiseText: captcha.CaptchaComplexLower,
    ComplexOfNoiseDot:  captcha.CaptchaComplexLower,
    IsShowHollowLine:   false,
    IsShowNoiseDot:     true,
    IsShowNoiseText:    true,
    IsShowSlimeLine:    false,
    ChLen:              4,
}
Salin selepas log masuk

Dalam contoh ini, kami mencipta konfigurasi kod pengesahan bernama config, yang mengkonfigurasi ketinggian, lebar, warna dan garisan gangguan bagi kod pengesahan , bilangan aksara, dsb.

  1. Jana kod pengesahan dan kembalikan hasilnya ke bahagian hadapan

Kod untuk menjana kod pengesahan adalah seperti berikut:

id, b64s, err := captcha.Generate(base64Captcha.DriverString, config)
Salin selepas log masuk

Di sini, kami menggunakan captcha.Generate()Fungsi menjana kod pengesahan dan menyimpan keputusan dalam pembolehubah b64s.

Akhir sekali, kami mengembalikan id kod pengesahan dan rentetan b64s yang dikodkan base64 ke bahagian hadapan untuk paparan di bahagian hadapan.

3. Sahkan kod pengesahan golang

Selepas memasukkan kod pengesahan di bahagian hadapan, kami perlu mengesahkan kod pengesahan di bahagian belakang.

Kod sampel adalah seperti berikut:

// verifyCode 为前端提交的验证码值
// verifyID 为前端提交的验证码ID
isCorrect := captcha.VerifyString(verifyID, verifyCode)
if !isCorrect {
    // 验证码不正确
} else {
    // 验证码正确
}
Salin selepas log masuk

Dalam contoh ini, kami menggunakan fungsi captcha.VerifyString() untuk mengesahkan sama ada kod pengesahan yang diserahkan oleh bahagian hadapan adalah betul. Jika kod pengesahan adalah betul, ia mengembalikan benar, jika tidak ia mengembalikan palsu.

Ringkasan

Artikel ini terutamanya memperkenalkan cara golang menggunakan kod pengesahan untuk mengukuhkan keselamatan aplikasi web dan mengambil Github.com/mojocn/base64Captcha sebagai contoh untuk menerangkan cara menjana dan mengesahkan golang kod pengesahan. Semoga artikel ini dapat membantu pemula belajar golang.

Atas ialah kandungan terperinci Panduan menggunakan kod pengesahan golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan