ringkasan

  • "Bukan kunci Anda, bukan koin Anda", terlepas dari dompet kontrak pintar atau dompet akun pribadi, kunci pribadi memiliki kendali mutlak atas dompet tersebut. Setelah kunci pribadi hilang, dompet kami sepenuhnya terkena risiko.

  • Kunci pribadi adalah dasar dari dompet, dan frasa mnemonik adalah solusi pemulihan untuk kunci pribadi, yang juga merupakan hambatan saat ini dalam pengembangan dompet.

  • Solusi memori kata tak berdaya yang dibawa oleh MPC dan pemulihan sosial adalah dasar dari Adopsi Massal

  • Lebih banyak kemungkinan untuk dompet masa depan, ekspektasi untuk EIP-4337

teks

Pada tahun 2010, Vitalik Buterin, pendiri Ethereum, memiliki akun warlock di World of Warcraft. Suatu hari, Blizzard memutuskan untuk secara drastis mengurangi karakter warlock dan menghapus bagian kerusakan ajaib dari mantra siphon kehidupan. Dia menangis hingga tertidur, dan pada hari itu, menyadari kengerian server terpusat, dia memutuskan untuk berhenti dan membuat jaringan terdesentralisasi Ethereum. Pada November 2022, FTX, bursa derivatif terbesar di dunia, terungkap melakukan penyelewengan dana pengguna. Pendiri SBF ditangkap oleh polisi Bahama dan bersiap untuk dipindahkan ke Amerika Serikat untuk diadili.

Dari pemain Warlock yang ditikam dari belakang oleh Blizzard 13 tahun yang lalu hingga pengguna korban FTX yang membela hak-hak mereka saat ini, kami semakin menyadari pentingnya frasa "Bukan kunci Anda, bukan koin Anda": bahkan dengan audit pihak ketiga/ Badan pengatur dan server terpusat masih dapat mengutak-atik dan menghapus data sesuka hati. Pada jaringan terdesentralisasi, buku besar on-chain bersifat transparan dan tidak dapat dirusak atas aset pribadi kita.

Desentralisasi memang luar biasa, tapi apa dampaknya?

Kita yang tinggal di jaringan blockchain adalah orang pertama yang bertanggung jawab atas aset pribadi kita. Pertimbangan paling penting bagi sebagian besar pengguna ketika memilih dompet on-chain adalah, seberapa besar risiko dan tanggung jawab yang bersedia saya ambil untuk aset saya? Ambil contoh lembaga keuangan tradisional:

  • Di mata pengguna yang mengejar keamanan, mereka berharap untuk menaruh uang mereka di bank dengan langkah-langkah pembukaan rekening yang rumit tetapi berskala besar: Keamanan dana (risiko) bank besar > Langkah-langkah pembukaan rekening yang standar dan ketat (tanggung jawab)

  • Di mata pengguna yang mengejar kepraktisan, mereka cukup menaruh uangnya di WeChat dan Alipay. WeChat dan Alipay dapat dengan mudah menyelesaikan transaksi P2P, dan hanya memerlukan KTP dan nomor ponsel untuk menyelesaikan registrasi, meskipun WeChat dan Alipay hanya sekedar akun. Dua perusahaan tercatat dan bukan lembaga perbankan yang didukung negara: kenyamanan WeChat (kewajiban) > status operasional WeChat (risiko)

Kembali ke web3, kami memiliki dua cara untuk menyimpan aset di web3, dompet kustodian dan dompet non-penahanan. Sebelum itu, kami perlu memberikan pengenalan singkat tentang prinsip dompet:

Dompet dan kunci pribadi

Pembuatan akun adalah proses pembuatan kunci pribadi. Di Ethereum, ada dua jenis akun: akun EOA (Akun Milik Eksternal, akun eksternal) dan akun kontrak (kontrak pintar yang diterapkan pada rantai melalui akun EOA):

  1. Mengambil akun EOA sebagai contoh,

    alamat EOA

  • Dengan menghasilkan nomor acak 256-bit sebagai kunci pribadi, dan kemudian menggunakan kunci pribadi untuk mendapatkan kunci publik yang sesuai menggunakan algoritma SHA3, dan kemudian menggunakan keccak-256 untuk menghitung alamat (20 byte terakhir dari hash asli) , akun pribadi unik yang sesuai dengan kunci pribadi. Selama proses ini, kunci privat akan menghitung dan menghasilkan 12 mnemonik, dan kita dapat menggunakan mnemonik tersebut untuk mendapatkan kembali kunci privat.

  • Saat ini, dompet dApp paling mainstream di rantai utama utama adalah dompet EOA, seperti Metamask, Phantom (Solana), BSC Wallet (BSC), dan Keplr (Cosmos).

2. Akun pintar adalah bagian dari kode EVM yang diterapkan pada rantai melalui akun EOA, yang dapat mewujudkan fungsi berbeda. Namun tidak seperti akun EOA, akun kontrak tidak memiliki kunci pribadi dan tidak dapat dijalankan secara aktif. Akun tersebut hanya dapat dipanggil oleh akun EOA. Oleh karena itu, kontrol akhir dari dompet kontrak pintar = kunci pribadi akun EOA yang digunakan untuk menyebarkan kontrak. Dipahami pada tingkat ini, akun kontrak pintar juga dikendalikan oleh kunci pribadi. Selama alamat dompetnya berupa kontrak, maka itu adalah dompet kontrak cerdas.

  • Dompet kontrak pintar dibagi menjadi dompet multi-tanda tangan (akun Multisig) dan dompet abstrak akun (akun Abstrak):

  • Dompet multi-tanda tangan: Pada awal tahun 2013, dompet multi-tanda tangan telah menjadi pilihan utama IMF. Teknologi ini awalnya dikembangkan di ekosistem Bitcoin, dan sekarang ada dompet multi-tanda tangan yang sangat baik di Ethereum (seperti Gnosis Safe): Ethereum Foundation menggunakan dompet multi-tanda tangan 4-dari-7 ( Artinya, buat kontrak pintar untuk menyimpan dana, dan mengontrol kontrak melalui 7 akun EOA. Hanya jika lebih dari 4/7 akun EOA ditandatangani, penandatanganan dapat diselesaikan)

  • Abstraksi akun menggunakan dompet EOA tunggal untuk mengontrol alamat kontrak guna mencapai efek simulasi EOA dengan kontrak pintar. Proyek populer seperti Argent/Loopring semuanya termasuk dalam dompet abstraksi akun.

  • Alamat Kontrak Apecoin

3. Setelah akun dibuat, aktivitas on-chain apa pun yang kami ikuti tidak dapat dipisahkan dari partisipasi kunci privat.

  • Menurut perkenalan guru Liao Xuefeng:

Dalam jaringan yang terdesentralisasi, tidak ada lembaga kepercayaan seperti bank. Jika Anda ingin mencapai transaksi antara dua node, Anda harus menerapkan mekanisme transaksi aman di bawah zero trust.

Misalkan Xiao Ming dan Xiao Hong ingin membuat kesepakatan. Salah satu cara untuk membuat kesepakatan adalah dengan mengklaim bahwa Xiao Ming memberinya 10.000 yuan, yang jelas tidak dapat dipercaya;

Cara lain untuk melakukan transaksi adalah: Xiao Ming mengaku telah memberi Xiao Hong 10.000 yuan. Selama dapat diverifikasi bahwa pernyataan tersebut memang dibuat oleh Xiao Ming, dan Xiao Ming benar-benar memiliki 10.000 yuan, maka transaksi tersebut dianggap Efektif. .

  • Bagaimana cara memverifikasi pernyataan yang dibuat oleh Xiao Ming?

  1. Tanda tangan yang dibuat melalui kunci pribadi memungkinkan pemverifikasi untuk mengonfirmasi pemrakarsa pernyataan: siapa pun dapat menggunakan kunci publik untuk membandingkan tanda tangan digital dan hasil transfer Karena hanya Xiao Ming dengan kunci pribadi yang dapat memulai pernyataan ini, saya juga bisa Saya yakin pernyataan ini memang dibuat oleh Xiao Ming.

  2. Di jaringan Ethereum, transaksi tersebut tidak hanya mencakup transaksi transfer P2P, tetapi juga panggilan ke kontrak pintar.

  3. Jadi ketika kita menggunakan dompet setiap hari, itu setara dengan memanggil kunci pribadi lokal melalui platform dompet untuk melengkapi tanda tangan pada rantai tersebut.

Keamanan dompet, ambang batas, dan ketahanan sensor

Segala sesuatu tentang dompet dibangun berdasarkan kunci pribadi. Dompet pada dasarnya adalah alat yang 1. membuat kunci pribadi, 2. menyimpan kunci pribadi, 3. menggunakan kunci pribadi, 4. membuat cadangan kunci pribadi, 5. memulihkan kunci pribadi saat ini. solusi pemulihannya adalah Kata-kata mnemonik, yaitu kombinasi kata 12/24 yang muncul saat mendaftarkan dompet:

  1. Frasa mnemonik dapat menyimpulkan teks biasa dari kunci pribadi. Saat pengguna memigrasikan dompet ke perangkat baru, ia hanya perlu memasukkan frasa mnemonik pada aplikasi dompet untuk menyimpulkan kunci pribadi dan mendapatkan kembali kendali atas dompet.

  2. Bagi pengguna, kunci pribadi = frasa mnemonik, namun kedua konsep ini masih berbeda dalam penggunaan dompet sehari-hari: frasa mnemonik adalah solusi pencadangan dan pemulihan untuk kunci pribadi pengguna

  3. Sebuah analogi: mnemonik sama dengan menyalin kunci Anda. Ketika kunci Anda hilang, Anda dapat menggunakan mnemonik untuk menghasilkan kunci yang identik.

Karena kunci pribadi adalah satu-satunya kredensial kami untuk berinteraksi dengan jaringan blockchain, maka tanggung jawab kami adalah menjaga kunci pribadi dompet dan frase mnemonik kami tetap aman. Tentu saja, cara paling aman untuk membuat akun adalah dengan membuat akun di lingkungan offline dan membuat alamat Anda sendiri dengan menjalankan nomor acak (kunci pribadi) dan algoritma SHA256 melalui kode untuk sebagian besar pengguna. Oleh karena itu, ketika memilih dompet, pengguna perlu mempertimbangkan tiga poin: keamanan, ambang batas, dan ketahanan sensor:

  1. Keamanan: Seberapa mahal bagi seorang peretas untuk memecahkan kunci pribadi dompet/frasa mnemonik?

    Mengambil dompet perangkat keras sebagai contoh, peretas hanya dapat memperoleh kunci pribadi pengguna melalui phishing atau mencuri kunci pribadi secara offline.

  2. Ambang Batas: Seberapa mudahkah dompet ini digunakan?

    Proses registrasi Metamask mengharuskan pengguna untuk mencatat 12 mnemonik, dan 12 mnemonik perlu dimasukkan kembali saat mengganti perangkat. Registrasi pertukaran Binance dan login perangkat dapat diselesaikan dengan satu klik melalui login email.

  3. Resistensi sensor: Apakah kendali akhir dompet ada di tangan pengguna

    Jika aplikasi dompet menyimpan teks jelas dari frasa mnemonik yang diimpor oleh pengguna dan mengunggahnya ke server, peretas dapat mencuri dompet pengguna dengan meretas server. Dan meskipun tidak ada serangan hacker, masih ada kemungkinan pihak proyek Slope melakukan pencurian dan belum mencapai resistensi sensor.

Ada dua kategori utama dompet: dompet non-penahanan dan dompet kustodian terpusat.

  1. Dompet non-penahanan: pengguna menyimpan frasa mnemonik mereka sendiri

    a. Ambil contoh dompet utama Metamask. MetaMask adalah dompet mata uang kripto non-penahanan (atau hak asuh mandiri). Non-penahanan berarti MetaMask tidak menyimpan data apa pun tentang dompet, dan semua data kunci pribadi ada di browser atau aplikasi seluler di tingkat lokal. Saat pengguna perlu melakukan aktivitas penandatanganan on-chain, MetaMask akan memanggil pribadi kunci dari file lokal untuk ditandatangani. Dan jika kunci pribadi dan frase mnemonik pengguna hilang/dicuri, Metamask tidak akan dapat membantu pengguna memulihkannya, dan aset pengguna akan hilang secara permanen.

    b.Diakui sebagai dompet perangkat keras yang paling aman (seperti Ledger), perangkat keras digunakan untuk menghasilkan kunci pribadi dan alamat dompet secara offline, dan kemudian kunci publik dari alamat tersebut diimpor ke dompet web seperti Metamask tanda tangan diperlukan, Buku Besar Perangkat keras dikonfirmasi secara offline. Karena kunci pribadi tidak menyentuh Internet sama sekali, sulit bagi peretas untuk mencuri kunci pribadi di dompet perangkat keras. Namun, jika pengguna kehilangan frase mnemonik atau terkena phishing, efek perlindungan dompet perangkat keras akan dikurangi menjadi nol, dan aset pengguna akan tetap dicuri.

Dompet yang dihosting

Dompet pertukaran seperti Coinbase/Binance mengadopsi metode dompet terkelola. Perbedaannya adalah akun yang ditampilkan di Coinbase tidak memiliki kunci pribadi pengguna, tetapi hanya nomor akuntansi yang ditampilkan di program Coinbase dan bukan ditampilkan di Etherscan. aset rantai dapat dipahami sebagai pengguna mempercayai Coinbase dan mempercayakan aset ke Coinbase alih-alih memilikinya sendiri, sehingga akun coinbase tidak dapat berinteraksi dengan dAPP seperti Uniswap.

Sumber: Binance

Secara umum, dalam dompet kustodian, pihak proyek menyimpan frasa mnemonik atas namanya, dan ambang batas untuk mendaftarkan dan memulihkan dompet rendah, namun keamanan dompet bergantung pada pihak proyek, bukan pada pengguna itu sendiri, dan pihak proyek memiliki kendali sebenarnya atas dompet; dompet non-penahanan Frasa mnemonik ada di tangan pengguna, dan ambang batas untuk mendaftarkan dan memulihkan dompet tinggi, tetapi ketahanan keamanan dan sensor keduanya tinggi.



Kerugian dari skema mnemonik

Seiring berkembangnya WEB3, semakin banyak permintaan dan skenario aplikasi yang muncul, dan ekologi dalam rantai tersebut berkembang pesat. Terutama Defi Summer pada tahun 2021 telah menarik sejumlah besar pengguna yang awalnya hanya berdagang di bursa untuk memigrasikan aset mereka ke On. rantainya, pada Maret 2022, pengguna aktif bulanan MetaMask telah mencapai 30 juta. Namun, pada saat yang sama, sebagai solusi pemulihan akun mnemonik paling utama, frasa mnemonik telah menjadi target utama para peretas: untuk pengguna biasa, Yang paling umum Insiden pencurian dompet adalah frasa mnemonik disalin ke clipboard, atau file kunci pribadi yang disimpan secara lokal dicuri oleh situs web phishing.

  • Ketika seorang peretas menyerang, dia perlu mengukur biaya serangan dan imbalan yang diperoleh. Semua kunci pribadi (12 kata mnemonik) adalah bagian dari kamus. Selama kamus tersebut habis, peretas dapat memperoleh semua aset di dalamnya rantai. . Namun, rasio input-output ini buruk. Jika kamus mengatur semua kombinasi melalui algoritma brute force;

  • Kata mnemonik arus utama saat ini adalah 12 kata bahasa Inggris, dan kosakatanya memiliki total 2048 kata. Artinya, 2048^12=5.44e39 jenis (54445178707350000000000000000000000000000);

  • Jika kekuatan komputasi sebesar itu digunakan, peretas sudah dapat mengendalikan jaringan BTC melalui serangan 51%;

  • Oleh karena itu, metode dengan tingkat pengembalian yang lebih tinggi bagi peretas adalah dengan mendapatkan frasa mnemonik pengguna melalui phishing, atau mencuri kunci pribadi yang disimpan di perangkat lokal pengguna.

Melanjutkan contoh Metamask, ada dua tempat di mana seorang hacker dapat memperoleh frase mnemonik dan kunci pribadi yang disimpan:

  1. Ungkapan mnemonik

    a. Setelah dompet dibuat, pengguna perlu menyimpan mnemonik yang dihasilkan. Biasanya disarankan untuk menyalinnya ke kertas putih dengan pena dan kertas dan menyimpannya dengan benar salin dan tempel dan simpan di dokumen, atau bahkan riwayat obrolan WeChat;

    b. Jika seorang hacker telah menginstal malware pada ponsel/komputer pengguna dan memantau clipboard pengguna setiap saat, dia dapat mencuri kunci pribadi yang baru dibuat. Misalnya, QuickQ VPN diketahui menyalin papan klip pengguna untuk mencuri frasa mnemonik.

  2. kunci pribadi

    a. Pada saat yang sama, Metamask umumnya mengenkripsi kunci pribadi dan menyimpannya di perangkat lokal tempat dompet dibuat sehingga dapat dipanggil kapan saja jika plugin Metamask diinstal di Chrome:

    i. Di lokasi penyimpanan di Windows, alamat penyimpanan kunci pribadi Metamask:

    C:\Pengguna\NAMA_PENGGUNA\AppData\Lokal\Google\Chrome\Data Pengguna\Default\Pengaturan Ekstensi Lokal\nkbihfbeogaeaoehlefnkodbefgpgknn

    ii. Lokasi penyimpanan di Mac: Perpustakaan>Dukungan Aplikasi>Google>Chrome>Default>Pengaturan Ekstensi Lokal>nkbihfbeogaeaoehlefnkodbefgpgknn

    b. Keamanan Metamask bergantung pada keamanan Chrome. Setelah firewall Chrome dibobol oleh peretas, peretas dapat memperoleh kunci pribadi alamat pengguna dan mentransfer semua aset. Inilah sebabnya mengapa dompet perangkat keras lebih aman dibandingkan dompet plug-in seperti Metamask.

Selain Metamask, beberapa dompet yang tidak dikelola bahkan tidak mencapai ketahanan sensor yang tinggi, seperti insiden pencurian dompet Slope di Solana: Aplikasi seluler Slope mengirimkan kata-kata mnemonik ke server Sentry mereka melalui TLS saat membuat dompet Phantom kemudian disimpan dalam bentuk teks yang jelas, artinya siapa pun yang memiliki akses ke Sentry dapat mengakses kunci pribadi pengguna.

Selain itu, ada lebih banyak insiden keamanan dompet yang patut kita renungkan:

Akun EOA dicuri

  1. Dompet pendiri Fenbushi Capital dicuri:

    Alasan pencurian dompet Shen Bo adalah kebocoran frase mnemonik. Dompet yang digunakan pada saat pencurian adalah Trust Wallet. Jumlah yang dicuri termasuk sekitar 38,23 juta USDC, 1,607 ETH, 720,000 USDT, dan 4,13 BTC.

  2. Dompet Wintermute diserang dan kehilangan sekitar US$160 juta. Alasan pencurian tersebut adalah karena Wintermute menggunakan kata-kata kotor untuk membuat dompet Vanity guna menghemat biaya bahan bakar (dimulai dengan 0x0000000, yang dapat menghemat bahan bakar saat menelepon kontrak pintar):

    Kata-kata kotor dirancang untuk membantu orang membuat akun dengan efek visual khusus, seperti akun yang dimulai atau diakhiri dengan karakter khusus. Di sisi lain, beberapa pengembang menggunakannya untuk membuat akun yang dimulai dengan banyak angka nol.

    Setelah Profanity mendapatkan kunci pribadi 32-bit pertama SeedPrivateKey, agar sesuai dengan alamat akun yang diperlukan, ia akan terus mengulangi kunci pribadi melalui algoritma tetap, hingga 2 juta kali (nilainya berasal dari artikel yang diungkapkan oleh 1 inci) . Ketika PublicKey diketahui, kita bisa mendapatkan SeedPrivateKey dengan menghitung secara mendalam SeedPrivateKey dan Iterator. Jumlah penghitungannya sekitar 2^32 kali 2 juta kali jam.

Akun kontrak dicuri

  1. Alamat penerapan kontrak Paraswap dicuri:

    Menurut laporan investigasi SlowMist: alamat peretas (0xf358..7036) telah memperoleh izin kunci pribadi dari ParaSwap Deployer dan QANplatform Deployer. Peretas menarik $1.000 dari ParaSwap Deployer dan mentransfernya masuk dan keluar dari alamat penyebar platform QAN sebagai ujian. Kami menggunakan platform AML untuk menganalisis 0xf358..7036 dan menemukan bahwa peretas juga mencuri The SolaVerse Deployer dan beberapa alamat cantik lainnya. Hingga saat ini, peretas telah mencuri lebih dari $170.000.

  2. Jembatan Ronin diretas pada bulan Maret tahun ini, mengakibatkan hilangnya 173,600 ETH dan 25.5 juta USDC:

    Peretas tersebut membuat sebuah perusahaan yang tidak ada, terhubung dengan insinyur senior Axie melalui Linkedin dan WhatsApp, memikatnya dengan peluang kerja baru, mengatur wawancara, dan akhirnya menawarkan gaji yang besar. Namun, file tawaran itu beracun, jadi dia berhasil menyerbu sistem Axie dan mencuri Insinyur menyebarkan kunci pribadi alamat EOA dari kontrak.

Selain menjadi sasaran utama para peretas, skema mnemonik juga merupakan ambang batas tinggi yang mencegah pengguna baru memasuki WEB3.

  1. Saat membuat dompet, Anda perlu menyalin 12 kata secara manual untuk alasan keamanan, dan yang terbaik adalah tidak mengambil gambar kertas putih ini dan menyimpannya. Bahkan dengan menggunakan perangkat lunak penyimpan kata sandi sumber terbuka yang tepercaya (seperti 1password), kami tidak dapat menggunakan penyimpanan salin-tempel yang nyaman karena risiko pencurian clipboard

  2. Saat memulihkan dompet, yaitu saat mengganti perangkat login, Anda perlu membuka kertas putih ini dan memasukkan kembali 12 kata.

Menyimpan selembar kertas putih dengan 12 kata tertulis di atasnya terdengar sangat tidak dapat diandalkan dan tidak web3: Kami berharap untuk hidup di masa depan metaverse, tetapi keamanan akun kami bergantung pada selembar kertas putih yang ditemukan pada Dinasti Song. Pada titik ini, dua langkah ini sudah cukup untuk menghalangi sebagian besar pemain web2. Lagi pula, di dunia web2, sebagian besar proses pendaftaran dapat login dengan satu klik menggunakan akun Google/akun ios.

Solusi baru untuk pemulihan akun tanpa menghafal kata-kata

Untuk menurunkan ambang batas dompet dan menarik lebih banyak pengguna untuk memasuki WEB3, kita perlu menggunakan solusi login akun sosial seperti Web2 tanpa kehilangan keamanan dan ketahanan sensor dompet. Oleh karena itu, kita memerlukan solusi pemulihan akun yang lebih nyaman dan aman. Semua diskusi saat ini mengarah pada akhir: memori yang tidak berdaya. Saat ini ada dua solusi implementasi untuk menghafal kata-kata yang tidak berdaya: solusi MPC dan solusi pemulihan sosial.

  1. Solusi MPC: Kunci pribadi dihitung dan dihasilkan oleh banyak pihak, sehingga menghindari kecelakaan satu titik yang disebabkan oleh kehilangan/pencurian kunci pribadi pengguna.

    Dapat dipahami sebagai: MPC adalah 3FA. Setiap metode verifikasi menyimpan bagian kunci. Kunci pintu tidak memiliki kunci terpisah. Jika salah satu bagian kunci hilang, pengguna dapat menggunakan metode verifikasi lain untuk memulihkan kunci yang hilang .fragmen kunci

  2. Solusi pemulihan sosial: Simpan dana dalam kontrak pintar, dikendalikan oleh dompet EOA melalui solusi multi-tanda tangan/tanda tangan tunggal, dan tunjuk wali pihak ketiga yang tepercaya. Ketika kunci pribadi dompet EOA hilang, wali pihak ketiga akan menggantikannya kendali kontrak, sehingga pengguna tidak perlu menyimpan frase mnemonik.

    Diskusi saat ini biasanya membahas pemulihan sosial dan dompet abstraksi akun secara berdampingan. Perlu dicatat bahwa solusi pemulihan sosial adalah standar dan fungsi kontrak pintar, yang diusulkan oleh EIP-2429 pada tahun 2019, yang berarti bahwa pengguna dapat mengontrol kontrak melalui wali. . Kunci privat diganti; EIP-4337 yang baru-baru ini hangat dibicarakan adalah pembahasan tentang abstraksi akun, yang akan kita bahas pada bab berikutnya.

solusi MPC

Solusi MPC adalah ketika membuat dompet EOA, banyak pihak bersama-sama membuat fragmen kunci pribadi. Pada tahun 2019, makalah "Tanda tangan digital kurva elips dua pihak berdasarkan komputasi multi-pihak yang aman" diterbitkan di CRYPTO 2019, secara resmi membawa penerapan MPC ke dalam pandangan semua orang. MPC adalah singkatan dari Secure Multi-Party Computation.

  1. Komputasi multi-pihak (MPC) adalah cabang kriptografi yang dimulai dengan karya perintis Andrew C. Yao hampir 40 tahun yang lalu. Dengan menggunakan komputasi multi-pihak, pembuatan kunci privat tidak lagi perlu diselesaikan pada satu titik, namun dapat dihitung dan dipegang oleh sekelompok beberapa pihak (n pihak) yang tidak saling percaya (n kunci privat terfragmentasi) Teknologi tersebut adalah DKG (Distributed Key Generation).

  2. Pembuatan kunci terdistribusi dapat dilakukan dengan cara yang memungkinkan berbagai jenis struktur akses: pengaturan "t dari n" biasa (tanda tangan yang valid dapat dibuktikan selama t dari n fragmen kunci pribadi berpartisipasi dalam tanda tangan) akan mampu Menoleransi hingga t kegagalan sewenang-wenang dalam operasi yang terkait dengan kunci privat tanpa mengorbankan keamanan.

  3. Threshold Signature Scheme (TSS) adalah nama yang diberikan untuk kombinasi Distributed Key Generation (DKG) dan tanda tangan terdistribusi.

  4. Pada saat yang sama, ketika fragmen kunci pribadi salah satu pihak hilang/terkena, solusi MPC mendukung pemulihan dan penggantian fragmen kunci pribadi, memastikan keamanan akun tanpa mengubah akun.

Solusi MPC memastikan bahwa tidak ada kunci pribadi lengkap yang muncul selama pembuatan, penggunaan, penyimpanan, pencadangan, dan pemulihan akun melalui beberapa pihak yang bersama-sama menghasilkan/memegang fragmen kunci pribadi dan skema tanda tangan ambang batas TSS "t out of n", solusi ini mencapai tingkat yang lebih baik. daripada Metamask. Lebih mudah untuk membuat/menyimpan dompet kunci pribadi pada satu titik. Resistensi keamanan dan sensor: Dibandingkan dengan solusi frase mnemonik tradisional, solusi ini sangat meningkatkan keamanan pengguna dan bahkan sebanding dengan dompet perangkat keras

  1. keamanan

    a. Tidak ada kunci pribadi/mnemonik: Selama proses pembuatan dompet, masing-masing pihak (pihak proyek dompet dan pengguna) menghasilkan fragmen kunci pribadi melalui MPC. Kunci pribadi yang lengkap tidak pernah muncul selama keseluruhan proses dompet tanpa kunci;

    b. Biaya serangan peretasan sangat meningkat: Bahkan jika seorang peretas menyerang perangkat lokal pengguna, ia hanya dapat memperoleh bagian dari kunci pribadi. Hanya ketika seorang peretas menguasai server dompet + perangkat lokal pengguna, dia dapat mencuri properti pengguna.

  2. ambang:

    Login sosial: Pengguna dapat membuat akun di dompet MPC melalui metode verifikasi identitas seperti email (dengan asumsi dompet MPC mengadopsi skema tanda tangan 2/2, yaitu dua fragmen kunci pribadi dapat digunakan secara bersamaan untuk menandatangani).

  3. Resistensi Sensor:

    Institusi terpusat (sisi dompet/perangkat cadangan) hanya menyimpan sebagian dari kunci pribadi akun dan tidak dapat mengontrol akun pengguna.

program pemulihan sosial

Solusi pemulihan sosial diterapkan pada akun kontrak pintar. Dompet kontrak pintar dapat dipahami sebagai menggunakan akun EOA untuk menyebarkan kontrak untuk mengelola dana pada rantai kontrol atas kontrak pintar dengan benar.

  • Dompet kontrak pintar bukanlah solusi tanpa kunci pribadi karena dompet EOA yang dikontrol memiliki kunci pribadi;

  • Namun dompet kontrak pintar dapat mengubah kunci pribadi penandatanganan pengguna melalui skema pemulihan sosial;

  • Solusi pemulihan sosial adalah dengan meminta wali Anda untuk mengganti kunci Anda setelah hilang.

Dua tahun setelah proposal EIP-2929, Vitalik pertama kali mengajukan kasus penerapan dompet pemulihan sosial di forum pada tahun 2021:

  1. Saat membuat dompet kontrak pintar, pengguna dapat menunjuk alamat EOA lain sebagai "wali". Alamat "wali" perlu ditandatangani pada rantai untuk konfirmasi dan membayar biaya bahan bakar;

  2. Akun EOA pengguna berfungsi sebagai "kunci pribadi penandatanganan" dan dapat digunakan untuk menyetujui transaksi;

  3. Setidaknya ada 3 (atau lebih) "penjaga" akun EOA yang tidak dapat menyetujui transaksi, tetapi dapat mengubah "penandatanganan kunci pribadi". Mengubah "kunci pribadi penandatanganan" juga mengharuskan "wali" membayar biaya bahan bakar untuk konfirmasi tanda tangan;

  4. Penandatanganan kunci pribadi memiliki fungsi menambah atau menghapus wali, namun keseluruhan prosesnya memakan waktu (biasanya 1-3 hari).

  5. Dalam skenario penggunaan sehari-hari, pengguna dapat menggunakan dompet kontrak pintar dengan kemampuan pemulihan sosial (seperti Argent dan Loopring) seperti dompet biasa, mengonfirmasi transaksi dengan kunci penandatanganan mereka. Dengan cara ini, setiap transaksi diselesaikan dengan cepat hanya dengan satu konfirmasi, seperti di dompet tradisional seperti Metamask:

    a.Buat kunci pribadi

    Dompet abstrak akun tidak berbeda dengan Metamask dalam pembuatan kunci pribadi.

    b.Simpan kunci pribadi

    Karena dompet EOA yang mengontrol kontrak hanya digunakan sebagai "kunci pribadi tanda tangan" dan dapat mentransfer kendali melalui wali, pengguna tidak perlu menyimpan frasa mnemonik secara khusus.

    c.Gunakan kunci pribadi

    ○ Dompet kontrak juga merupakan transfer/transaksi, dan karena harus disebut kontrak, maka harganya akan lebih mahal dibandingkan dompet MPC dan dompet tradisional;

    ○ Namun karena ini adalah kontrak panggilan, maka mendukung penggunaan token non-asli seperti USDC/USDT untuk pembayaran (misalnya, ETH adalah token asli yang digunakan untuk membayar biaya bahan bakar di Ethereum). Hal ini pasti akan sangat mengurangi kesulitan interaksi untuk pemain Web3 baru: pada prinsipnya, Dalam transaksi yang sama, tim proyek menukar USDC pengguna menjadi ETH dan kemudian membayar biaya bahan bakar atas nama mereka.

    d. Cadangkan kunci pribadi

    Langkah pencadangan kunci pribadi dompet abstrak akun digantikan oleh "wali", namun hal ini kontra-intuitif dan mahal:

    ① Pengguna menggunakan web3 untuk pertama kalinya dan ingin mendaftarkan dompet, tetapi perlu mencari tiga teman tepercaya yang sudah memiliki dompet EOA di web3 dan meminta mereka membayar biaya bahan bakar untuk menjadi wali mereka;

    ② Jika pengguna ingin mengkompensasi biaya bahan bakar teman dan menggunakan dompet yang baru dibuat untuk melakukan tiga transfer, total 6 biaya bahan bakar harus dibayar untuk membuat dompet. Tidak ada biaya untuk membuat akun di dompet MPC.

    e.Pulihkan kunci pribadi

    Jika pengguna kehilangan kunci penandatanganannya, mereka dapat meminta untuk menggunakan fitur pemulihan sosial. Pengguna perlu menghubungi wali mereka dan meminta mereka untuk menandatangani transaksi khusus (pengguna atau wali membayar biaya gas) dan mengubah kunci publik tanda tangan yang terdaftar dalam kontrak dompet menjadi tanda tangan baru. Ini jauh lebih sederhana: wali dapat melihat permintaan pemulihan dan menandatanganinya dengan mengunjungi halaman web seperti security.loopring.

    Namun, keamanan kunci privat belum mencapai level dompet MPC:

    1. Akibat diserang: Peretas masih bisa mendapatkan kunci pribadi lengkap dengan menyerang perangkat pengguna. Dengan kata lain, pengguna yang menggunakan dompet kontrak pintar hanya memiliki satu cara lagi untuk mengambil kunci pribadi jika kunci pribadi hilang.

    2. Resistensi sensor yang rendah: Karena program pemulihan sosial memerlukan penunjukan “wali”, ada kemungkinan “wali” berkolusi satu sama lain untuk melakukan kejahatan.

    3. Risiko utama pemulihan sosial adalah:

      ① Kolusi: Jika beberapa pengguna mengetahui bahwa mereka adalah bagian dari pemulihan, mereka mungkin tertarik untuk melakukan serangan pemulihan;

      ②Serangan target: Agen eksternal mungkin mengetahui pemilik pemulihan dan menargetkan titik terlemah yang diperlukan untuk melakukan serangan pemulihan;

      ③ Paparan umum: Jika penyerang berhasil menginfeksi ketergantungan lingkungan basis pengguna yang besar dan mendapatkan akses ke banyak identitas, hal itu mungkin juga menimbulkan efek samping pada pengguna yang tidak terpengaruh melalui pemulihan.

    Solusi MPC vs. solusi pemulihan sosial: keamanan, ambang batas, resistensi sensor

Masa depan Adopsi Massal: dompet Web3

Dengan solusi pemulihan akun yang tidak berdaya, kita dapat menantikan generasi baru dompet Web3, yaitu dompet yang dapat didaftarkan dan login menggunakan email. Kami telah memilih proyek perwakilan dompet MPC dan dompet abstrak akun untuk dianalisis masing-masing: dalam hal akses pengguna, mereka telah mencapai ambang batas rendah memori tanpa kata. Kami mengevaluasinya secara terpisah dari perspektif keamanan dan ketahanan sensor—

#OrangBitizin

Di antara dompet MPC, dompet Bitizen, yang lebih teliti dalam anti-sensor dan kenyamanannya, mengadopsi solusi 2/3 TSS. Mari kita analisis dari perspektif keamanan dan anti-sensor dompet:

  1. Keamanan:

    a.Membuat

    Untuk mencapai kemampuan audit yang kuat, setelah menyelesaikan pendaftaran dompet, pengguna dapat menggunakan perangkat kedua untuk mencadangkan fragmen kunci pribadi melalui Bluetooth, menggunakan solusi 2/3TSS: server Bitizen, perangkat lokal pengguna, dan perangkat kedua pengguna.

    b.Menjaga

    Karena kunci pribadi lengkap tidak dihasilkan selama proses pembuatan dompet, tidak ada mnemonik: akun Bitizen pengguna akan dikaitkan dengan disk cloud dan email pengguna, dan pengguna hanya perlu masuk melalui email untuk menggunakan dompet Bitizen secara normal .

    c.Gunakan

    ① Pengguna dapat memperoleh fragmen kunci pribadi yang disimpan di cloud Bitizen dan fragmen kunci pribadi yang disimpan di perangkat lokal melalui otentikasi pengenalan wajah untuk tanda tangan (2/3);

    ②Setelah perangkat kedua mencadangkan fragmen kunci pribadi melalui Bluetooth, itu dapat disimpan sepenuhnya secara offline dan tidak perlu digunakan pada hari kerja (penandatanganan hanya memerlukan server Bitizen dan perangkat utama pengguna untuk menyelesaikannya).

    d.Cadangan

    ① Cadangkan fragmen kunci pribadi lokal ke disk cloud pengguna;

    ② Ketika pengguna perlu mengganti perangkat untuk masuk, dia hanya perlu mengautentikasi melalui email dan wajah. Bitizen akan meminta pengguna untuk memulihkan cadangan fragmen kunci pribadi dari disk cloud.

    e.Pemulihan

    ①Demikian pula, ketika perangkat pengguna kehilangan/secara tidak sengaja menghapus file lokal Bitizen, fragmen kunci pribadi dapat dipulihkan melalui cloud disk;

    ② Ketika pengguna bahkan tidak dapat masuk ke cloud disk, Bitizen akan menghitung ulang fragmen kunci pribadi melalui fragmen kunci pribadi di server dan perangkat cadangan kedua pengguna, sehingga pengguna dapat melanjutkan penggunaan normal.

    Sumber: Bitizen
  2. Resistensi Sensor:

    2/3 dari solusi TSS memungkinkan pengguna untuk memiliki kendali mutlak atas dompet mereka sendiri (2/3 dari fragmen kunci pribadi ada di tangan pengguna). Bahkan jika Bitizen bangkrut atau melarikan diri, pengguna masih dapat melakukan kontrol normal atas dompet mereka.

#Unipass

Dompet abstrak akun mengambil Unipass sebagai contoh. Unipass mengadopsi pendekatan kontrak pintar + dompet MPC, yang menggabungkan keunggulan dari dua solusi:

  1. Dalam transaksi, Anda dapat menggunakan token apa pun yang didukung oleh dompet (token mainstream yang sangat likuid) untuk membayar biaya bahan bakar;

    Dalam hal penyimpanan kunci privat, digunakan teknologi MPC (2/2) dan TSS untuk menghasilkan kunci privat secara terdistribusi, sehingga tidak ada kemungkinan kunci privat tersebut akan diperoleh oleh hacker pada satu titik – private key. kunci dibagi menjadi dua bagian, dan satu bagian disimpan di Unipass. Di server, salinannya disimpan di perangkat lokal pengguna;

  2. Untuk memulihkan kunci pribadi, Unipass menggunakan solusi DomainKeys Identified Mail (DKIM). Pengguna dapat menggunakan alamat email sebagai "wali" alih-alih alamat EOA lainnya. Hal ini sangat mengurangi ambang batas bagi pengguna untuk menemukan wali: wali tidak perlu menggunakannya wilayah tersebut. Blockchain hanya membutuhkan alamat email wali.

    Sumber: Unipass

Ambang batas rendah -> penerapan tinggi

Dompet dengan ambang batas rendah bukanlah akhir dari aplikasi dompet. Infrastruktur Web3 saat ini masih jauh tertinggal dari keuangan tradisional Web2. Fungsi pemotongan otomatis dan pembayaran otomatis reguler yang disediakan oleh Visa memberikan kemudahan yang luar biasa bagi pengguna, namun masih sulit untuk diterapkan di Ethereum. Akun abstraksi akun mungkin merupakan narasi dompet blockchain berikutnya yang dapat diterapkan: Visa menerbitkan artikel "Pembayaran Otomatis untuk Dompet Kustodian Mandiri" untuk mengeksplorasi penggunaan dompet abstraksi akun Argent untuk diterapkan di jaringan StarNet Pembayaran yang dapat diprogram otomatis, memungkinkan pengguna untuk mengotomatiskan pembayaran menggunakan dompet yang dihosting sendiri tanpa harus menandatangani setiap transaksi. Bagaimana implementasi dompet abstrak akun? Konsep ini sebenarnya sudah ada sejak lama.

Abstraksi akun - dari EIP-2938 hingga EIP-4337

Dengan diusulkannya EIP-4337, topik abstraksi akun kembali menjadi perhatian semua orang. Solusi pemulihan sosial dan abstraksi akun (menggunakan kontrak pintar sebagai dompet EOA, yaitu abstraksi akun) telah diusulkan lebih awal dari EIP-1271, dan telah diterapkan oleh dompet seperti Argent di Lapisan 2 seperti StarkNet solusinya sedang hangat dibicarakan di komunitas akhir-akhir ini. Apa bedanya (abstraksi akun)?

Dari EIP-86 pada tahun 2015 hingga hot spot baru-baru ini EIP-4337, pemikiran inti pengembang berkisar pada "kontrak adalah dompet", dan abstraksi akun memungkinkan pengguna untuk berinteraksi dengan jaringan utama dengan cara yang intuitif. Hal ini memungkinkan pengguna untuk secara tepat mengontrol izin utama akun mereka. Karena kode akun EOA telah ditetapkan, tidak mungkin untuk melakukan desain modular dan fungsional pada dompet EOA, seperti menambahkan transfer batch/pemulihan sosial dan fungsi lainnya, sehingga semua orang fokus pada kontrak pintar. Proposal yang paling dekat dengan EIP-4337 adalah EIP-2938 juga mendefinisikan protokol operasi kontrak pintar baru, tetapi perlu dimodifikasi pada lapisan konsensus, sehingga menyulitkan pengembang untuk mempertahankannya. Inovasi utama adalah bahwa mainnet tidak memerlukan perubahan protokol tingkat konsensus.

  • Dalam EIP-1237, inisiasi tanda tangan dari alamat kontrak harus bergantung pada Relayer terpusat untuk penandatanganan, dan Relayer terpusat, dan standar antara masing-masing Relayer berbeda, dan tidak kompatibel dengan multi-chain/multi-dAPP ;

  • Di EIP-4337, diusulkan untuk mengganti Relayer dengan Bunbler. Bunbler adalah multi-partai terdesentralisasi, yang meningkatkan ketahanan sensor dompet kontrak pintar dan menyatukan standar tanda tangan, yang dapat sangat mengurangi kesulitan integrasi bagi pengembang;

  • EIP-4337 akan berdampak di masa depan, namun untuk saat ini tidak akan meningkatkan pengalaman pengguna. Oleh karena itu, antusiasme membahas solusi ini hanya terbatas pada VC dan developer saja, lebih seperti Move to Aptos yang membuat VC dan investor lain serta komunitas developer antusias. Bagi pengguna web3, apakah Layer1 ini ditulis dalam Solidity atau Move? pengalaman pengguna belum banyak berubah.

    ① Bagaimanapun, Argent, dompet abstrak akun, telah menyelesaikan pembiayaan sebesar US$56,2 juta sejak 2018. Setelah 4 tahun pengembangan, ia hanya memiliki 7.40,000 alamat: tepat setelah munculnya defi, pengguna di lingkaran mata uang beralih dari pertukaran untuk menggunakan Metamask. Munculnya Metamask disebabkan oleh tingginya APY tambang. Saat ini, kegilaan dompet kontrak pintar masih membutuhkan katalis baru;

    Sumber: Dune

    ②Setoran pengguna saat ini di Argent tidak sebesar jumlah pembiayaan

    Sumber: Dune

    ③Namun, dengan penerapan proposal abstraksi akun dari jaringan utama Ethereum, ini berarti bahwa pengguna Argent dapat terhubung dengan lancar dari StarkNet ke jaringan utama Ethereum. Percikan yang dipicu dalam proses ini juga patut dinantikan.

  • Kasus penggunaan

    ①Kontrol izin yang disempurnakan: Sempurnakan izin tanda tangan tunggal EOA:

    ▽Beri pengguna A batas transfer X TokenB dalam kontrak

    ▽ Berikan izin transaksi tokenC resmi kontrak pengguna B alih-alih izin transfer

    ▽Jika tidak ada orang yang menggunakan kontrak dalam jangka waktu lama, hak untuk menggunakan kontrak akan dialihkan secara otomatis

    ②Metode pembayaran Gas yang terdiversifikasi: pembayaran oleh orang lain atau pembayaran dengan token apa pun

    ③Pengurangan otomatis/pengembalian dana otomatis

Merangkul masa depan Web3

Klise, ada 4,8 miliar pengguna web2, dan pengguna web3 baru saja melampaui 100 juta pada tahun 2022. Kita masih dalam tahap awal pengembangan blockchain.



Kembali ke pertanyaan di awal artikel: “Seberapa besar risiko dan tanggung jawab yang bersedia saya tanggung atas aset saya?”, dapatkah saya memastikan dompet saya tidak hilang tanpa harus mengingat kunci pribadi saya?

Saya selalu mendengar pertanyaan VC tradisional: Apakah ada skenario yang hanya bisa dilakukan oleh web3 tetapi web2 tidak bisa? Kami percaya bahwa dompet Web3 adalah contoh tamparan wajah Web2 tradisional: hanya di jaringan terdesentralisasi Web3 kita dapat mengharapkan dompet bagus yang memenuhi ketahanan sensor, keamanan, dan pengalaman pengguna. Pengguna tidak perlu menanggung risiko atau tidak perlu mengambil tanggung jawab. Munculnya dompet semacam ini juga merupakan landasan penting bagi 4,7 miliar pengguna Web2 untuk menyambut masa depan Web3: dompet tidak hanya merupakan pintu masuk pertama ke Web3, tetapi juga nama domain pada rantai (seperti ENS), token yang terikat jiwa (Soul-Bounded Token), Dasar pengembangan sistem reputasi on-chain (Pengidentifikasi Terdesentralisasi), tanpa lingkungan dompet yang aman, pembangunan Web3 Lego tidak akan memiliki dasar yang kuat.

Kita perlu berpikir lebih serius. Tidak banyak peluang untuk memasuki pasar bearish. MPC telah menunjukkan kepada kita masa depan di mana dompet EOA lebih mudah digunakan dan lebih aman, dan dapat beradaptasi dengan semua rantai EVM saat ini yang harus dilakukan sebelum kontrak pintar dapat dihubungkan ke dAPP. Jalan yang harus ditempuh masih panjang. Rencana pemulihan sosial saat ini tampaknya tidak berguna, tetapi kemungkinan kontrak pintar di masa depan sangat menarik uang untuk diserahkan dalam jawaban ini.

Tahun 2022 adalah tahun kelam bagi mata uang kripto, namun kami tetap yakin bahwa masa depan cerah. Kami adalah penyihir yang terbangun di World of Warcraft, dan kami ingin menciptakan dunia di mana tidak ada seorang pun yang dapat mengambil siphon hidup kami (kecuali proposal tersebut disetujui).



Pernyataan: Bagian dari artikel ini didasarkan pada wawancara dengan Winson, CEO dompet Web3 Bitizen. Bitizen adalah salah satu portofolio RedlineDAO Kami ingin mengucapkan terima kasih kepada Bitizen dan Winson atas dukungan mereka terhadap artikel ini.

Referensi

  1. Deskripsi tanda tangan ambang batas: https://www.wwsww.cn/btbjiaoxue/1273.html

  2. Membawa pengguna Web2 ke Web3 - masa depan adalah milik dompet kata yang tidak berdaya: https://mp.weixin.qq.com/s/TF2FCQDyyApzEVHQjxgZRg

  3. Buterin: Mengapa kita perlu mengadopsi dompet pemulihan sosial secara luas? :https://www.163.com/dy/article/GNQ4K9D905373E94.html

  4. Dompet Solana non-penahanan Phantom telah diretas dan dana banyak pengguna dicuri: https://chainfeeds.xyz/search

  5. Mitra pendiri Fenbushi Capital Shen Bo: Aset pribadi senilai 42 juta dicuri dan kasusnya telah dilaporkan: https://chainfeeds.xyz/feed/flash/detail/7a02d517-5a54-4892-a42a-ac519406da12

  6. Wintermute kehilangan $160 juta dalam peretasan DeFi: https://chainfeeds.xyz/feed/flash/detail/39c24b5e-693c-49a1-bf5c-ec04b829f8b6

  7. Kunci pribadi alamat penerapan kontrak ParaSwap mungkin telah bocor, dan dana pada rantai telah dicuri: https://chainfeeds.xyz/feed/flash/detail/04c9a5d2-6e86-4207-9b1d-913eced8d2a7

  8. Alasan jembatan lintas rantai Ronin dicuri: https://chainfeeds.xyz/feed/flash/detail/7a810726-80eb-4fef-a40b-a38c3c9f9738

Semua hak dilindungi undang-undang. Dilarang mencetak ulang tanpa izin.