Panduan Penggunaan SIWE: Membuat Dapp Anda Lebih Kuat
SIWE(Masuk dengan Ethereum) adalah cara untuk memverifikasi identitas pengguna di Ethereum, mirip dengan transaksi yang dimulai oleh dompet, yang membuktikan kontrol pengguna atas dompet. Saat ini, proses verifikasi identitas sudah sangat mudah, cukup dengan menandatangani informasi di plugin dompet, dan sebagian besar plugin dompet umum telah mendukungnya. Artikel ini terutama membahas skenario tanda tangan di Ethereum.
Apakah SIWE Diperlukan
Jika Dapp Anda memiliki kebutuhan berikut, Anda dapat mempertimbangkan untuk menggunakan SIWE:
Memiliki sistem pengguna sendiri
Perlu memeriksa informasi yang terkait dengan privasi pengguna
Namun, jika Dapp Anda terutama berfungsi untuk melakukan query, seperti aplikasi yang mirip dengan etherscan, maka tidak selalu diperlukan SIWE.
Anda mungkin bertanya-tanya, setelah terhubung dengan dompet di Dapp, bukankah itu sudah membuktikan kepemilikan dompet? Ini hanya berlaku untuk frontend. Untuk panggilan antarmuka yang memerlukan dukungan backend, hanya mengirimkan alamat tidak cukup, karena alamat adalah informasi publik, siapa pun dapat "meminjam" identitas Anda.
Prinsip dan Proses SIWE
Proses SIWE dapat diringkas menjadi tiga langkah: Menghubungkan dompet - Menandatangani - Mendapatkan identitas.
Sambungkan dompet
Ini adalah operasi Web3 yang umum, menghubungkan dompet melalui plugin dompet di Dapp.
tanda tangan
Langkah-langkah tanda tangan termasuk mendapatkan nilai Nonce, tanda tangan dompet, dan verifikasi tanda tangan backend.
Backend menghasilkan nilai Nonce acak dan mengaitkannya dengan alamat. Frontend mendapatkan nilai Nonce dan membangun konten tanda tangan, termasuk nilai Nonce, nama domain, ID rantai, dll, menggunakan metode yang disediakan dompet untuk menandatangani. Terakhir, tanda tangan tersebut dikirim ke backend.
Dapatkan identitas
Setelah verifikasi tanda tangan di backend berhasil, kembalikan identitas pengguna ( seperti JWT). Permintaan selanjutnya dari frontend harus menyertakan alamat dan identitas, yang dapat membuktikan kepemilikan dompet.
Praktik SIWE
Kami akan menggunakan Next.js untuk mengembangkan demo SIWE sederhana, yang menunjukkan alur dasar. Perhatikan, demo ini hanya untuk tujuan pengenalan, penggunaan di lingkungan produksi mungkin memiliki masalah keamanan.
Optimasi: menggunakan layanan node khusus untuk meningkatkan kecepatan respons
Dengan langkah-langkah di atas, kami telah membangun kerangka dasar untuk login SIWE. Menggunakan layanan node profesional dapat secara signifikan meningkatkan kecepatan verifikasi, disarankan untuk digunakan di lingkungan produksi.
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
SIWE Praktis: Tiga Langkah Membangun Sistem Verifikasi Identitas Ethereum
Panduan Penggunaan SIWE: Membuat Dapp Anda Lebih Kuat
SIWE(Masuk dengan Ethereum) adalah cara untuk memverifikasi identitas pengguna di Ethereum, mirip dengan transaksi yang dimulai oleh dompet, yang membuktikan kontrol pengguna atas dompet. Saat ini, proses verifikasi identitas sudah sangat mudah, cukup dengan menandatangani informasi di plugin dompet, dan sebagian besar plugin dompet umum telah mendukungnya. Artikel ini terutama membahas skenario tanda tangan di Ethereum.
Apakah SIWE Diperlukan
Jika Dapp Anda memiliki kebutuhan berikut, Anda dapat mempertimbangkan untuk menggunakan SIWE:
Namun, jika Dapp Anda terutama berfungsi untuk melakukan query, seperti aplikasi yang mirip dengan etherscan, maka tidak selalu diperlukan SIWE.
Anda mungkin bertanya-tanya, setelah terhubung dengan dompet di Dapp, bukankah itu sudah membuktikan kepemilikan dompet? Ini hanya berlaku untuk frontend. Untuk panggilan antarmuka yang memerlukan dukungan backend, hanya mengirimkan alamat tidak cukup, karena alamat adalah informasi publik, siapa pun dapat "meminjam" identitas Anda.
Prinsip dan Proses SIWE
Proses SIWE dapat diringkas menjadi tiga langkah: Menghubungkan dompet - Menandatangani - Mendapatkan identitas.
Sambungkan dompet
Ini adalah operasi Web3 yang umum, menghubungkan dompet melalui plugin dompet di Dapp.
tanda tangan
Langkah-langkah tanda tangan termasuk mendapatkan nilai Nonce, tanda tangan dompet, dan verifikasi tanda tangan backend.
Backend menghasilkan nilai Nonce acak dan mengaitkannya dengan alamat. Frontend mendapatkan nilai Nonce dan membangun konten tanda tangan, termasuk nilai Nonce, nama domain, ID rantai, dll, menggunakan metode yang disediakan dompet untuk menandatangani. Terakhir, tanda tangan tersebut dikirim ke backend.
Dapatkan identitas
Setelah verifikasi tanda tangan di backend berhasil, kembalikan identitas pengguna ( seperti JWT). Permintaan selanjutnya dari frontend harus menyertakan alamat dan identitas, yang dapat membuktikan kepemilikan dompet.
Praktik SIWE
Kami akan menggunakan Next.js untuk mengembangkan demo SIWE sederhana, yang menunjukkan alur dasar. Perhatikan, demo ini hanya untuk tujuan pengenalan, penggunaan di lingkungan produksi mungkin memiliki masalah keamanan.
Persiapan kerja
npx create-next-app@14
npm install antd @ant-design/web3 @ant-design/web3-wagmi wagmi viem @tanstack/react-query --save
Implementasikan tombol sambungkan dompet
Mewujudkan antarmuka backend
Optimasi: menggunakan layanan node khusus untuk meningkatkan kecepatan respons
Dengan langkah-langkah di atas, kami telah membangun kerangka dasar untuk login SIWE. Menggunakan layanan node profesional dapat secara signifikan meningkatkan kecepatan verifikasi, disarankan untuk digunakan di lingkungan produksi.