WebAuthn dan Passkey, Manajemen Kunci untuk Pengguna Kripto Harian

Menengah1/11/2024, 3:44:46 PM
Artikel ini menjelajahi labirin Passkey, WebAuthn, AA, dan MPC, beserta solusi optimal potensial.

Singkatnya;

Kunci pribadi adalah inti yang memungkinkan kami menandatangani transaksi di Ethereum, namun mengelolanya telah menjadi mimpi buruk, bahkan dalam bentuk yang dapat dibaca seperti 'frasa benih'. Namun tujuan kami bukanlah menjadikan blockchain sebagai permainan yang canggih.

Mengautentikasi pengguna yang berwenang sangat penting untuk transaksi yang aman. Dengan evolusi keamanan internet dan UX, kami telah beralih dari autentikasi kata sandi ke biometrik seperti pengenalan wajah dan sidik jari. WebAuthn adalah pengembangan kunci dalam perkembangan ini. Artikel ini membahas tiga istilah dengan cermat:

WebAuthn: Sebuah standar otentikasi web menggunakan kredensial berbasis kunci publik, sering kali dibuat oleh otentikator eksternal. Ini menghilangkan kebutuhan akan kata sandi dan memungkinkan otentikasi pengguna yang aman.

Secure Enclave: Area aman berbasis perangkat keras dalam perangkat komputasi, Secure Enclave dirancang untuk melindungi data sensitif. Versi dari Secure Enclave ditemukan di perangkat iOS, Android, dan Windows. Ini dapat berfungsi sebagai penyandi aman dengan mengimplementasikan WebAuthn, tetapi kunci pribadi, terikat pada SE, seringkali menimbulkan tantangan lintas perangkat.

Passkey: Implementasi WebAuthn di tingkat sistem operasi, disesuaikan oleh berbagai penyedia perangkat dan sistem. Misalnya, Passkey Apple menggunakan kunci yang disimpan di iCloud Keychain untuk sinkronisasi lintas perangkat. Namun, pendekatan ini biasanya dikunci untuk platform atau sistem tertentu.

Seperti yang dijelaskan di atas, implementasi webAuthn sejalan dengan tujuan kami untuk pengguna blockchain harian, untuk mencapai keamanan anti-phishing tingkat tinggi dan pengalaman yang ramah. Inilah ide untuk menggabungkannya ke dalam blockchain:

Lapisan Kunci: Pengguna mengautentikasi menggunakan metode biometrik yang mulus seperti pengenalan wajah atau sidik jari. Di balik layar, ini adalah prosesor keamanan berbasis hardware seperti Secure Enclave atau layanan cloud seperti iCloud dan Google Cloud yang mengelola manajemen kunci. Saya akan membahas masalah lintas perangkat dan lintas platform nanti.

Lapisan Akun: Akun Kontrak Cerdas (SCA) menawarkan kemampuan untuk menetapkan penandatangan sewenang-wenang (misalnya SE dan Passkey) dan mekanisme ambang batas. Selain itu, desain modularnya meningkatkan fleksibilitas dan kemampuan upgrade. Misalnya, SCA dapat menyesuaikan persyaratan penandatanganannya secara dinamis berdasarkan faktor-faktor seperti jumlah transaksi, waktu, atau alamat IP. Di sisi lain, Akun Milik Eksternal (EOA) tradisional dapat ditambah dengan layanan MPC, kombinasi mereka menawarkan interoperabilitas dan efektivitas biaya yang lebih baik dibandingkan dengan SCA, meskipun tidak memiliki fungsionalitas lanjutan yang disediakan SCA, terutama untuk rotasi kunci.

Layer Tanda Tangan: Ethereum mendukung kriptografi k1 secara alami, tetapi verifikasi tanda tangan WebAuthn mengakibatkan biaya yang lebih tinggi, karena menggunakan kurva r1 untuk pembangkitan kunci. Oleh karena itu, beberapa solusi Layer 2 seperti zkSync, berencana untuk menggunakan pra-kompilasi kurva r1 EIP-7212 secara alami. Selain itu, ada layanan pihak ketiga, verifikasi Solidity, verifikasi Zero-Knowledge (ZK), dan sistem manajemen kunci terdistribusi, untuk memfasilitasi tanda tangan kurva r1 dengan cara yang lebih cost-effective.

Penolakan:

Kemajuan teknologi tidak menjamin kesuksesan pasar; Tidak semua perangkat dan platform telah mengadopsi Passkey; Menggunakan SCA bisa lebih mahal daripada EOA; Solusi yang diusulkan berkembang dengan kemajuan teknologi.

Kripto UX buruk? Manajemen kunci buruk!

Di dunia blockchain, kontrol sebenarnya dari aset blockchain tidak berada di tangan pengguna atau penyedia dompet, melainkan terletak pada kunci pribadi. Kunci ini sangat penting dalam seluruh proses mengeksekusi transaksi di Ethereum. Untuk memahami ini lebih baik, mari kita ambil EOA sebagai contoh:

Generasi Kunci: Sebuah nomor acak yang dipilih dari kurva eliptis secp256k1 berfungsi sebagai kunci privat. Kunci ini kemudian dikalikan dengan titik yang telah ditentukan pada kurva untuk menghasilkan kunci publik. Alamat Ethereum berasal dari 20 byte terakhir dari kunci publik yang di-hash. Frasa 'seed' biasanya diperkenalkan untuk cadangan yang dapat dibaca oleh manusia, memungkinkan turunan deterministik kunci privat dan publik.

Tanda Tangan Transaksi: Sebuah transaksi, yang berisi rincian seperti nonce (sebuah nomor berurutan), jumlah, harga gas, dan alamat penerima, ditandatangani menggunakan kunci pribadi. Proses ini, melibatkan ECDSA, sebuah algoritma tanda tangan digital yang menggunakan kriptografi kurva eliptik dan mengadopsi secp256k1 sebagai kurva, menghasilkan tanda tangan yang terdiri dari nilai (r, s, v). Tanda tangan dan transaksi asli kemudian disiarkan di jaringan.

Memverifikasi Transaksi: Begitu sebuah transaksi mencapai node-node Ethereum, transaksi tersebut menjalani proses validasi di mempool node. Untuk memverifikasi penandatangan, node-node menggunakan tanda tangan dan transaksi yang di-hash untuk mendapatkan kunci publik pengirim dan mengonfirmasi keaslian transaksi dengan mencocokkan alamat yang didapatkan dengan pengirim transaksi.

Seperti yang dijelaskan di atas, kunci pribadi adalah entitas penting di rantai. Pada awalnya, akun Ethereum, dikenal sebagai Rekening Milik Eksternal (EOA), hanya bergantung pada satu kunci pribadi, yang menimbulkan risiko signifikan, karena kehilangan kunci berarti kehilangan akses ke akun.

Banyak orang mungkin berpikir Abstraksi Akun (AA) adalah solusi untuk segala sesuatu yang berkaitan dengan pengalaman pengguna yang buruk, yang akan saya katakan tidak sepenuhnya. AA adalah tentang mengubah aturan validitas agar dapat diprogram, dan programabilitas Smart Contract Account (SCAs) membuat hal itu menjadi mungkin. AA sangat kuat, memungkinkan pengiriman beberapa transaksi secara paralel (nonce abstrak), sponsor gas, dan membayar gas dalam ERC20 (gas abstrak), dan lebih relevan dengan topik artikel ini, untuk merusak validasi tanda tangan tetap (tanda tangan ECDSA abstrak). Alih-alih EOA, SCAs dapat menugaskan penandatangan sewenang-wenang dan mekanisme penandatanganan seperti multi-tanda tangan (multisig) atau kunci terfokus (kunci sesi). Namun, meskipun fleksibilitas dan kemajuan dalam hal pembaruan AA, ketergantungan fundamental pada kunci untuk menandatangani transaksi tetap tidak berubah.

Bahkan ketika dikonversi menjadi frasa benih 12 kata, mengelola kunci pribadi tetap menantang, berisiko kehilangan atau serangan phishing. Pengguna harus menavigasi antara lapisan-lapisan kompleks solusi terdesentralisasi atau dekapan hangat layanan terpusat, tidak ada satupun yang ideal.

Mengapa pengalaman crypto menyebalkan? Sebagian besar karena manajemen kunci menyebalkan. Itu selalu membutuhkan pengorbanan dalam pengalaman, keamanan, dan desentralisasi. Artikel ini membahas solusi optimal potensial untuk mengelola kunci.

Lapisan Manajemen Utama

Tidak akan pernah ada solusi satu ukuran untuk semua, cara terbaik untuk menjaga kunci disesuaikan dengan skenario pengguna tertentu, dipengaruhi oleh faktor-faktor seperti tipe pengguna (institusi atau individu), jumlah modal, frekuensi transaksi, dan tipe interaksi.

Untuk memperjelas ke depan, saya menghindari menggunakan metode 'self, semi, and fully custody' yang populer untuk membuat katalog. Dalam pandangan saya, hak asuh diri sejati berarti menandatangani transaksi secara independen, tanpa bergantung pada pihak lain, ini berlaku bahkan jika solusinya bukan kustodian dalam pengertian tradisional (seperti disimpan dalam TEE node terdesentralisasi). Mengkategorikan solusi hanya sebagai 'baik' atau 'buruk' berdasarkan jenis tahanan terlalu sederhana dan tidak memperhitungkan berbagai kesesuaiannya. Untuk penilaian metode manajemen kunci yang lebih bernuansa, saya sarankan untuk menganalisisnya melalui tiga lapisan berbeda:

Tanggung jawab

Apakah akan membagi tanggung jawab mengelola kunci ke pihak yang berbeda.

Diberikan bahwa individu sering menghadapi tantangan dalam mengelola kunci, mendistribusikan tanggung jawab untuk menjaga kunci muncul sebagai strategi mitigasi risiko alami. Kategori ini mencakup metode seperti menggunakan beberapa kunci untuk menandatangani secara kolaboratif, seperti yang terlihat dalam sistem Tanda Tangan Multi (Multi-sig), dan membagi kunci pribadi menjadi bagian melalui Skema Berbagi Rahasia (SSS) atau Komputasi Pihak Multi (MPC).

Multi-sig: Membutuhkan beberapa kunci pribadi lengkap untuk menghasilkan tanda tangan transaksi. Metode ini memerlukan komunikasi on-chain tentang para penandatangan yang berbeda, menimbulkan biaya transaksi yang lebih tinggi, dan memengaruhi privasi karena jumlah penandatangan terlihat on-chain.

SSS: kunci pribadi dihasilkan di satu lokasi, dan dealer mendistribusikan potongan kunci ini ke pihak yang berbeda. Semua pihak harus merekonstruksi kunci pribadi penuh untuk menandatangani transaksi. Namun, rekonstruksi sementara ini dapat menimbulkan kerentanan.

MPC-TSS (Threshold Signature Scheme): sebagai implementasi dari MPC, pendekatan kriptografi yang memungkinkan beberapa pihak untuk melakukan komputasi sambil menjaga input mereka secara bersama-sama. Setiap pihak secara independen membuat bagian kunci rahasia, dan transaksi ditandatangani tanpa perlu bertemu secara fisik. Ini memperkenalkan biaya yang lebih rendah karena berada di luar rantai, dan tidak ada risiko titik kegagalan tunggal seperti SSS.

Penyimpanan

Simpan kunci atau saham, dipengaruhi oleh faktor keamanan, aksesibilitas, biaya, dan desentralisasi.

Layanan awan terpusat seperti AWS, iCloud, dan server lainnya. Mereka nyaman untuk transaksi yang sering, tetapi lebih rentan terhadap sensor.

Penyimpanan terdesentralisasi seperti IPFS dan Filecoin.

Komputer/ponsel lokal: Kunci disimpan secara lokal dalam penyimpanan aman peramban.

Dompet kertas: Hasil cetak fisik kunci pribadi atau kode QR.

Lingkungan Pelaksanaan Terpercaya (TEE): TEE menyediakan area aman dalam prosesor utama untuk menjalankan atau menyimpan data sensitif, terisolasi dari sistem operasi utama.

Secure Enclave: Secure Enclave pada perangkat modern terisolasi dari pemroses utama untuk memberikan lapisan keamanan tambahan dan dirancang untuk menjaga data sensitif pengguna tetap aman bahkan ketika kernel Processor Aplikasi terpengaruh.

Dompet keras: Perangkat fisik seperti Ledger dan Trezor, yang dirancang khusus untuk menyimpan kunci pribadi secara aman.

Modul Keamanan Perangkat Keras (HSM): HSM adalah perangkat keras khusus yang dirancang untuk manajemen kunci yang aman dan operasi kriptografis. Mereka biasanya digunakan di lingkungan perusahaan dan menawarkan fitur keamanan kelas tinggi.

Akses

Bagaimana cara memverifikasi identitas pengguna untuk mengakses kunci yang disimpan

Autentikasi terlibat dalam mengakses kunci yang disimpan. Ini tentang memvalidasi bahwa individu yang mencoba mengakses memang diotorisasi untuk melakukannya. Jika melihat ke belakang sejarah, kita dapat mengkategorikan sejarah seperti ini:

Something You Know: Passwords, PINs, jawaban untuk pertanyaan keamanan, atau pola tertentu.

Ada Sesuatu Yang Anda Miliki: Termasuk kartu pintar, token perangkat keras (kata sandi sekali pakai berbasis waktu), atau faktor digital seperti verifikasi akun sosial dan kode SMS yang dikirim ke telepon.

Seseorang yang Anda adalah: Melibatkan karakteristik fisik unik pengguna, seperti sidik jari, pengenalan wajah (seperti Face ID Apple atau Windows Hello), pengenalan suara, atau pemindaian iris/retina.

Dari situ, 2FA dan MFA adalah metode yang mengombinasikan dua faktor atau lebih, seperti pemberitahuan dorong SMS yang digabungkan, untuk menambahkan lapisan keamanan yang lebih pada akun pengguna.

Analisis Pemain yang Sudah Ada

MetaMask memungkinkan pengguna menggunakan kata sandi untuk mengakses kunci yang disimpan di penyimpanan browser lokal pengguna.

Trust Wallet memungkinkan pengguna menggunakan kata sandi atau faceID untuk mengakses kunci yang disimpan di penyimpanan browser lokal pengguna, pengguna juga dapat memilih layanan cloud untuk mencadangkan kunci privat.

Privy memungkinkan pengguna untuk menggunakan berbagai metode login sosial seperti email, menggunakan SSS untuk membagi tiga bagian:

Berbagi perangkat: Browser-iFrame, seluler- enclave aman.

Auth share: Disimpan oleh privy, tautan ke id privy).

Bagikan pemulihan: Kata sandi pengguna atau dienkripsi oleh Privy disimpan di modul keamanan perangkat keras (HSM).

Particle memungkinkan pengguna untuk menggunakan login sosial, menggunakan MPC-TSS yang memiliki dua bagian:

Bagikan perangkat: browser-iFrame

Bagian kunci server: server Particle

Solusi Baru

Lapisan kunci: WebAuthn, Secure Enclave, dan Passkey

Solusi yang ada di atas telah menjadi sangat penting dalam memperkenalkan pengguna ke web3. Namun, mereka sering kali datang dengan tantangan: kata sandi bisa dilupakan atau menjadi target dalam serangan phishing, dan bahkan 2FA, meskipun lebih aman, bisa merepotkan dengan langkah-langkahnya yang beragam. Selain itu, tidak semua orang nyaman menyerahkan manajemen kunci kepada pihak ketiga, pengguna masih bergantung pada ketersediaan sistem dan keberlanjutan sementara beberapa layanan memastikan mereka tidak bisa mengakses kunci.

Hal ini membuat kita mempertimbangkan apakah ada solusi yang lebih efektif — salah satu yang menawarkan solusi terdekat untuk pengalaman pengguna yang tidak memerlukan kepercayaan, tingkat keamanan tinggi, dan mulus. Pencarian ini membawa kita ke metode web2 yang optimal. Beberapa istilah terkait erat dengan topik tersebut, seperti yang saya jelaskan di awal artikel, WebAuthn adalah standar otentikasi itu sendiri, sementara Secure Enclave dan Passkey adalah implementasi atau komponen yang terkait dengan standar ini.

WebAuthn

WebAuthn mengstandarkan antarmuka otentikasi pengguna ke aplikasi berbasis web. Ini memungkinkan pengguna masuk ke akun internet menggunakan otentikator eksternal daripada kata sandi. Otentikator bisa menjadi Otentikator Roaming (Yubikey, kunci Titan) atau Otentikator Platform (kunci bawaan pada perangkat Apple), dan lain sebagainya.

Aliansi FIDO (Fast IDentity Online) awalnya mengembangkan teknologi di balik WebAuthn. Hal itu secara resmi dinyatakan sebagai standar web oleh W3C pada Maret 2019 dan bersamaan dengan standarisasinya, browser utama seperti Google Chrome, Mozilla Firefox, Microsoft Edge, dan Apple Safari telah mengadopsi WebAuthn, secara signifikan meningkatkan jangkauan dan kegunaannya. Kini didukung oleh banyak perangkat canggih.

Manfaat dari webAuthn:

Keamanan Ditingkatkan: Menghilangkan ketergantungan pada kata sandi, mengurangi kerentanan terhadap phishing, brute force, dan serangan replay.

Peningkatan Pengalaman Pengguna: Menawarkan proses login yang lebih sederhana dan cepat, seringkali hanya dengan sekali ketuk atau verifikasi biometrik.

Perlindungan Privasi: Tidak ada rahasia bersama yang ditransmisikan selama otentikasi, dan situs web individu tidak menerima informasi yang dapat diidentifikasi secara pribadi.

Skalabilitas dan Standarisasi: Sebagai standar web, WebAuthn memastikan konsistensi dan interoperabilitas di berbagai browser dan platform.

WebAuthn yang terikat pada perangkat, misalnya Enclave Aman

Dalam kasus-kasus modern, kita dapat menggunakan prosesor hardware sebagai pengautentikasi, seperti Secure Enclave untuk perangkat Apple, Trustzone untuk Android, dan Strongbox untuk Google Pixel.

Pembuatan Kunci: Dengan menggunakan kriptografi kunci publik, sepasang kunci dibuat sesuai dengan standar WebAuthn, biasanya menggunakan kurva P-256 r1. Kunci publik dikirim ke layanan, sementara kunci privat TIDAK PERNAH meninggalkan Secure Enclave. Pengguna tidak pernah menangani kunci teks biasa, sehingga sulit bagi kunci privat untuk dikompromikan.

Penyimpanan Kunci: Kunci privat disimpan dengan aman di dalam Enclave Aman perangkat, sebuah subsistem yang diperkuat yang terpisah dari prosesor utama. Ini melindungi data sensitif, memastikan bahwa bahkan jika sistem utama dikompromikan, bahan kunci mentah tetap tidak dapat diakses. Tingkat kesulitan untuk mengompromikan Enclave Aman sangat tinggi, dan oleh karena itu tipe data paling sensitif seperti data Apple Pay dan FaceID disimpan di sana. Berikut adalah penjelasan mendalam tentang bagaimana SE bekerja.

Autentikasi: Pengguna menggunakan pengenalan wajah atau sidik jari mereka untuk mengakses, Secure Enclave menggunakan kunci privat untuk menandatangani tantangan dari layanan, dan layanan memverifikasi menggunakan kunci publik.

Keuntungan webAuthn berbasis perangkat:

Keamanan tingkat perangkat keras: Menggunakan Secure Enclave, manajer kunci berbasis perangkat keras yang terisolasi untuk memberikan lapisan keamanan tambahan.

Tahanan phishing: Jangan melibatkan memasukkan informasi apapun pada perangkat atau situs web yang berpotensi terganggu.

Pengalaman yang nyaman: Mereka menyediakan pengalaman yang lebih ramah pengguna. Pengguna tidak perlu lagi mengingat kata sandi kompleks untuk situs-situs berbeda.

Kekurangan webAuthn berbasis perangkat:

Keterbatasan perangkat: Kunci pribadi tidak dapat diekspor atau diambil kembali jika perangkat hilang atau rusak, operasi lintas perangkat tidak mungkin.

WebAuthn berbasis cloud, Passkey

Menanggapi tantangan fungsionalitas lintas perangkat, raksasa teknologi telah memperkenalkan implementasi webAuthn berbasis awan, Passkey cukup dikenal karena Apple.

Mari kita ambil Passkey Apple sebagai contoh:

Generasi kunci: Perangkat macOS, iOS, atau iPadOS pengguna, sebagai otentikator, menghasilkan pasangan kunci publik-privat ketika pengguna membuat akun. Kemudian mengirimkan kunci publik ke server, dan kunci privat disimpan dalam keychain iCloud perangkat. Data iCloud Keychain dienkripsi dengan pasangan kunci terikat perangkat keras, dan disimpan dalam modul keamanan perangkat keras (HSM). Kunci tidak dapat diakses oleh Apple.

Sinkronisasi di semua perangkat: Proses ini akan sama seperti mengakses iCloud. Autentikasi ke akun iCloud, terima kode SMS, dan masukkan kode sandi salah satu perangkat.

Keuntungan webAuthn berbasis cloud:

Cross-device: Passkeys dirancang agar nyaman dan dapat diakses dari semua perangkat yang digunakan secara teratur. Tetapi saat ini terbatas pada perangkat Apple, untuk Android lebih menantang karena beragam versi dan variasi perangkat kerasnya.

Ketahanan Phishing: Sama seperti di atas.

Pengalaman yang nyaman: Sama seperti di atas.

Kekurangan kunci awal berbasis awan:

Bergantung pada layanan cloud: Dibandingkan dengan webAuthn berbasis perangkat, passkey berbasis cloud memindahkan tingkat keamanan dari hardware Secure Enclave ke iCloud keychain, beberapa orang dapat berpendapat bahwa itu bersifat kustodial terhadap layanan cloud Anda. Beberapa aspek kunci yang perlu dipertimbangkan termasuk: Akun AppleID pengguna yang digunakan dengan iCloud dikompromikan; Meskipun iCloud Keychain menggunakan enkripsi ujung ke ujung untuk melindungi data, kesalahan operasional atau kerentanan menimbulkan risiko.

Batasan ke platform: Sebagai contoh, menggunakan kunci sandi berbasis iCloud pada perangkat Android sangat menantang. Selain itu, berbeda dari metode tradisional, Apple dan Google tidak mengirimkan asertif spesifik perangkat. Hal ini berarti saat ini tidak mungkin untuk memverifikasi jenis perangkat yang menghasilkan kunci, yang menimbulkan pertanyaan tentang keandalan kunci dan metadata terkaitnya.

Lapisan Akun: SCA dan EOA

Sejauh ini, kita dapat melihat mempertahankan keamanan tingkat perangkat keras sambil mengatasi kompatibilitas lintas perangkat dan lintas platform adalah tantangan. Sama pentingnya adalah opsi pemulihan sosial, seperti menambahkan beberapa wali untuk keamanan yang ditingkatkan. Dalam konteks ini, blockchain dapat menunjukkan kepada kita sebuah jalan.

Sebuah kesenjangan yang mencolok ketika kita mencoba menerapkan web2 webAuthn ke web3: Web2 hanya memerlukan bukti kepemilikan, sedangkan web3 juga memerlukan otorisasi transaksi secara bersamaan. Dengan Passkey, pengembang kehilangan kendali atas pesan tanda tangan, yang biasanya generik, seperti 'masuk.' Ini dapat menyebabkan manipulasi front-end potensial, pengguna menandatangani pesan secara buta - kekhawatiran yang tampaknya kecil namun penting.

Akun Kontrak Pintar (AKP), yang pada dasarnya adalah kontrak pintar itu sendiri, berfungsi sebagai entitas on-chain, mampu menetapkan penandatangan sembarang. Fleksibilitas ini memungkinkan pemrograman berbagai perangkat dan platform – seperti pengaturan ponsel Android, Macbook, dan iPhone – sebagai penandatangan. Lebih jauh lagi, Akun Kontrak Pintar Modular memungkinkan kemungkinan peningkatan, menukar penandatangan baru, mengubah ambang batas penandatangan dari 2 dari 3 hingga konfigurasi yang lebih rumit.

Bayangkan sebuah dompet yang menyesuaikan persyaratan keamanannya berdasarkan konteks: ia memungkinkan otentikasi pengguna tunggal ketika pengguna berada di alamat IP lokal yang akrab, tetapi memerlukan beberapa penandatangan untuk transaksi dari alamat IP yang tidak dikenal atau di atas nilai tertentu. Dengan modularitas dan pemrograman, imajinasi kita adalah satu-satunya batasan untuk inovasi semacam itu. Banyak penyedia layanan SCA secara aktif membangun ruang ini, termasuk Safe, Zerodev, Biconomy, Etherspots, Rhinestone, dll. Juga memberi penghargaan kepada infrastruktur seperti Stackup, Plimico, Alchemy yang membuatnya mungkin.

Harap periksa penelitian sebelumnya saya memberikan konteks yang lebih komprehensif seputar SCA.

EOA dapat mencapai pemulihan sosial dan kompatibilitas lintas perangkat/platform melalui layanan MPC. Meskipun EOA memiliki tanda tangan tetap, penyedia MPC dapat membagi kunci menjadi bagian untuk keamanan dan fleksibilitas yang ditingkatkan. Metode ini kurang memiliki fitur yang dapat diprogram dan ditingkatkan seperti pemulihan timelock dan deaktivasi kunci yang mudah. Namun, masih menawarkan kemampuan lintas-rantai yang superior dengan menjadi agnostik rantai dan saat ini lebih hemat biaya daripada SCA. Penyedia MPC terkemuka termasuk Privy, Jaringan Particle, web3Auth, dompet OKX, dompet Binance, dll.

Layer Tanda Tangan: dukungan R1

Mari kita mundur sedikit untuk memahami konteksnya: Di Ethereum, kunci privat adalah angka acak yang dipilih dari kurva k1, dan proses penandatanganan juga menggunakan kurva ini.

Namun, pasangan kunci yang dihasilkan sesuai dengan standar WebAuthn, menggunakan kurva r1. Oleh karena itu, memverifikasi tanda tangan r1 di Ethereum kira-kira tiga kali lebih mahal daripada tanda tangan k1. Berikut adalah beberapa pendekatan untuk mengatasi hal ini:

Kredit kepada Dogan, untuk pengetahuan yang lebih mendalam, silakan cek penelitiannya.

Solusi Protokol:

Solusi: EIP7212, Prekompilasi untuk dukungan Kurva secp256r1 diusulkan oleh tim Clave.

Evaluasi: Usulan ini menciptakan kontrak yang telah dikompilasi sebelumnya yang melakukan verifikasi tanda tangan dalam kurva eliptis 'secp256r1' berdasarkan parameter yang diberikan yaitu hash pesan, komponen r dan s dari tanda tangan, serta koordinat x, y dari kunci publik. Sehingga, setiap rantai EVM - terutama rollups Ethereum - akan dapat mengintegrasikan kontrak yang telah dikompilasi sebelumnya ini dengan mudah. Sampai saat ini, protokol yang telah dikompilasi sebelumnya mungkin merupakan solusi yang paling efisien dalam hal gas.

Implementasi: zkSync

Layanan pihak ketiga

Solusi: Paket lengkap

Evaluasi: Sebuah TEE Turki memastikan kunci privat hanya dapat diakses oleh pengguna melalui PassKey mereka dan tidak pernah dapat diakses oleh Turnkey itu sendiri, namun ini masih memerlukan kelangsungan layanan.

Implementasi: Goldfinch

Solusi Verifier Soliditas:

Solusi: Verifikasi Solidity FCL, Verifikasi Solidity FCL Dengan Prahitungan, P256Verifier Daimo

Implementasi: Clave, Obvious Wallet

Pemeriksa Pengetahuan Nol (ZK):

Solusi: Risc0 Bonsai, halo2-ecc Axiom

Evaluasi: Pendekatan ini memanfaatkan bukti pengetahuan nol untuk memverifikasi komputasi di luar Mesin Virtual Ethereum (EVM), mengurangi biaya komputasi on-chain.

Implementasi: Dompet Bonfire(Risc0), Laboratorium Know Nothing(Axiom)

Masing-masing solusi ini menawarkan metode yang berbeda untuk memberdayakan verifikasi tanda tangan r1 yang lebih murah dan memungkinkan dalam ekosistem Ethereum, dan inilah penilaian oleh Dogan.

Studi Kasus Implementasi

*Harap dicatat bahwa pada Desember 2023, sebagian besar solusi ini masih dalam tahap awal dan dapat berubah atau ditingkatkan kapan saja. Contoh-contoh ini hanya untuk tujuan pembelajaran; selalu merujuk ke situs web resmi mereka untuk informasi yang akurat.

Dompet kunci: (Secure Enclave webAuthn) + (SCA)

Dasar:

Demo: https://getclave.io/

Akun: SCA

Rantai: ZkSync

Proses transaksi:

Pembuatan kunci: Pengguna memberikan otentikasi biometrik seperti sidik jari atau pengenalan wajah, sepasang kunci dibuat di dalam Secure Enclave, yang tidak pernah terungkap atau keluar.

Penandatanganan kunci: Aplikasi mengambil pesan transaksi yang diperlukan dan meneruskan permintaan penandatanganan ke Secure Enclave, pengguna memberikan bio-auth untuk menyetujui penandatanganan, dan Secure Enclave menandatangani pesan dengan kunci, dan untuk disiarkan ke node blockchain.

Fungsi tambahan: Akun kontrak pintar memungkinkan banyak fungsi yang kuat. Pertama, sponsor gas. Karena pembayar, pihak lain seperti dApp atau pengiklan dapat membayar biaya gas pengguna, membuat proses transaksi lebih lancar, dan juga mereka dapat memungkinkan pengguna membayar gas dalam ERC20 alih-alih Ether atau token asli. Dan menggunakan kunci sesi, pengguna dapat melakukan transaksi tanpa tanda tangan dalam jangka waktu tertentu.

Mekanisme pemulihan:

Proses pemulihan dilakukan oleh kontrak pintar Clave di zkSync, pengguna dapat membatalkan pemulihan selama kunci waktu 48 jam, untuk mencegah aktivitas yang tidak sah dan berbahaya.

Cloud backup: Sebuah EOA akan dibuat saat pengguna memilih cloud backup, kunci pribadi dari EOA disimpan di iCloud atau Google Drive, pengguna dapat menggunakan kunci pribadi yang disimpan di cloud ini untuk mengakses akun mereka dari perangkat yang berbeda, dan pengguna dapat menghapus atau menimpanya kapan saja.

Pemulihan sosial: Pengguna dapat menetapkan alamat clave keluarga atau teman mereka sebagai cadangan, jika wali M of N memberikan konfirmasi untuk pemulihan, pemulihan akan dijalankan setelah penguncian 48 jam jika tanpa membatalkan.

Dompet Soul: (Passkey) + (4337 SCA)

Dasar:

Demo: https://alpha.soulwallet.io/wallet

Akun: ERC4337 SCA

Rantai: Ethereum, Optimism, Arbitrum, dan segera semua lapisan2 EVM

Proses transaksi:

Pembuatan kunci: Pengguna memberikan otentikasi biometrik seperti sidik jari atau pengenalan wajah, dan sistem operasi menghasilkan Passkey dan mencadangkannya menggunakan layanan cloud. Anda dapat menambahkan lebih dari satu passkey lintas perangkat dan lintas platform.

Tambahkan gardian (Opsional): Pengguna dapat menetapkan alamat EVM EOA yang berbeda sebagai penjaga dan menetapkan ambang batas untuk pemulihan akun.

Pembuatan akun: Dengan penggunaan penyebaran kontrafaktual, pengguna tidak perlu membayar biaya apapun hingga transaksi pertama

Mekanisme pemulihan:

Passkey: Gunakan paskey yang ditentukan untuk masuk ke dompet menggunakan perangkat sembarang.

Pemulihan wali: Para wali yang ditugaskan dapat memutar dompet sesuai dengan ambang batas, dan kunci waktu mungkin akan diatasi nanti untuk mencegah perilaku jahat.

Dompet OKX: (MPC-TSS + Passkey) + (4337 SCA)

Dasar:

Demo: https://www.okx.com/help/what-is-an-aa-smart-contract-wallet

Rantai: 30+ rantai

Kunci: MPC-TSS, 2/3

Akun: 4337 SCA

Proses transaksi:

Pembuatan kunci: Dengan membuat dompet, OKX mengubah satu kunci pribadi menjadi tiga bagian terpisah. Bagian 1 disimpan di server OKX, bagian 2 disimpan di penyimpanan lokal perangkat pengguna, dan bagian 3 dihasilkan oleh perangkat, dienkripsi dan dapat dicadangkan ke layanan cloud pilihan perangkat, seperti Google Cloud, iCloud, dan Huawei Cloud.

Penandatanganan kunci: OKX menggunakan teknologi MPC-TSS, pengguna dapat memperoleh tanda tangan lengkap dengan menggunakan dua dari tiga bagian kunci pribadi saat menandatangani transaksi, bagian kunci tidak pernah bertemu satu sama lain selama proses ini.

Mekanisme pemulihan:

Mekanisme 2/3: Ketika pengguna keluar, perangkat tidak tersedia, atau salah satu kunci pada perangkat dikompromikan, Anda dapat menggunakan perangkat baru untuk masuk ke dompet OKX (mendapatkan bagian server) dan mendapatkan bagian layanan cloud, gabungkan kedua bagian ini untuk memulihkan dompet, dompet OKX akan menghasilkan bagian rahasia baru.

Web3Auth: (MPC-TSS + Passkey)+ (EOA/SCA)

Dasar:

Demo: https://w3a.link/passkeysDemo

Rantai: Semua EVM dan Solana

Kunci: MPC-TSS, biasanya 2/3

Akun: Setiap akun seperti EOA, 4337 SCA, atau SCA umum

Proses transaksi:

Pembuatan kunci: Dengan membuat dompet, tiga bagian kunci dihasilkan. Share1 adalah berbagi login sosial, pengguna dapat mengetikkan email mereka, dan jaringan node terdesentralisasi menyimpan kunci untuk setiap pengguna; Share2 adalah berbagi perangkat yang disimpan di penyimpanan lokal perangkat pengguna; Share3 dihasilkan oleh komputer lokal dan didukung oleh layanan cloud pilihan pengguna.

Tanda tangan kunci: Arsitektur Web3Auth MPC-TSS memastikan bahwa kunci pengguna selalu tersedia, bahkan saat menggunakan tandatangan ambang, kunci tidak pernah direkonstruksi atau disimpan di satu tempat.

Mekanisme pemulihan:

Pemulihan ambang Saat pengguna keluar, perangkat tidak tersedia, atau salah satu kunci pada perangkat tersebut dikompromikan, Anda dapat menggunakan metode login sosial untuk masuk ke akun webAuthn dan mendapatkan berbagi awan kunci sandi, gabungkan kedua berbagi ini untuk memulihkan dompet.

Protokol Lit (MPC-TSS + node Terdesentralisasi + Kunci Akses) + (EOA/SCA)

Informasi dasar:

Demo: https://lit-pkp-auth-demo.vercel.app/

Rantai: Sebagian besar EVM, Cosmos, Solana.

Akun: MPC-TSS, 20 dari 30 jaringan, dapat diadopsi oleh baik SCA maupun EOA.

Proses transaksi:

Pembuatan kunci: Ketika pengguna ingin membuat dompet, pertama-tama pilih metode otentikasi (kunci sandi, login sosial oAuth didukung), kemudian permintaan dikirim ke relayer untuk membuat pasangan kunci dan menyimpan logika otentikasi ke kontrak pintar. Setiap pasangan kunci dihasilkan secara kolektif oleh node-node Lit melalui proses yang disebut Distributed Key Generation (DKG). Beroperasi sebagai jaringan terdesentralisasi, 30 node Lit berjalan di dalam TEE, setiap node memiliki bagian dari kunci tetapi kunci pribadi tidak pernah ada secara keseluruhan.

Penandatanganan kunci: Menerima permintaan, node-node Lit secara independen memvalidasi atau menolak permintaan terhadap metode otentikasi yang ditugaskan, dan menggunakan teknologi MPC-TSS,1. Bagian kunci dikumpulkan di atas ambang batas (20 dari 30) untuk menghasilkan tanda tangan dan digabungkan oleh klien untuk memenuhi permintaan.

Mekanisme pemulihan:

mekanisme 2/3: Gunakan metode otentikasi yang disimpan dalam kontrak pintar untuk mengakses akun, node Lit memvalidasi permintaan dan akan melanjutkan jika lebih dari 2/3 node mengonfirmasi.

Kesimpulan:

Dipicu oleh antusiasme terhadap Layer2, Layer3, dan solusi ketersediaan data, kami sangat ingin meningkatkan kinerja blockchain. Juga, mengejar keamanan nyata, menggabungkan Privasi Bukti Pengetahuan Nol dengan sifat transparansi. Semua upaya ditujukan pada satu tujuan: Siap untuk pengguna nyata yang sering berinteraksi dengan blockchain dan mengadopsi kripto ke dalam kehidupan mereka.

Mudah terjebak dalam mimpi teknologi yang optimal, tetapi kita harus bertanya: pengalaman seperti apa yang kita tuju? Kami membayangkan sebuah dunia di mana kripto adalah tentang intuisi daripada istilah teknologi yang membingungkan, di mana pengguna terjun ke dalam lubang kelinci tanpa ragu dan kesulitan.

Bayangkan seorang pengguna Rui: Dia menemukan aplikasi dApp fantastis, dengan mudah mendaftar menggunakan pengenalan wajah atau sidik jari, dengan opsi untuk mengatur cadangan atau wali. Saat dia berinteraksi dengan dApp, dia lancar melakukan transaksi, mungkin dengan biaya ERC20 kecil atau bahkan tidak sama sekali. Kemudian, dia menyesuaikan pengaturan dompetnya - mungkin mengaktifkan kunci waktu untuk transaksi otomatis, menambahkan perangkat lain sebagai tanda tangan cadangan, atau merevisi daftar walinya.

Para pembangun kami membuat itu terjadi. Dengan mengintegrasikan WebAuthn dan Passkey, kami meningkatkan manajemen kunci pribadi, membuatnya aman dan ramah pengguna. Di atas kunci, SCA sebagai sebuah entitas membuka ranah keamanan dan fungsionalitas yang dipersonalisasi. Dan mengenai biaya gas? Mereka menjadi kurang membebani, berkat penyedia Paymaster yang dapat membuat 'brankas' untuk pertukaran atau bahkan memungkinkan pengiklan untuk menutupi biaya bagi pengguna. Di tengah evolusi ini, terutama untuk Ethereum mainnet dan Layer2 setara, adalah ERC4337. Ini memperkenalkan mempool alternatif yang membedakan transaksi SCA dari EOAs, tanpa perombakan protokol utama. Di sisi lain, beberapa jaringan Layer 2 bahkan menerima SCAs secara alami, menyelaraskannya ke dalam sistem mereka tanpa masalah.

Dibutuhkan upaya besar untuk membuat segalanya menjadi mudah. Banyak tantangan seperti menurunkan biaya implementasi, validasi, dan eksekusi untuk SCA; Standarisasi antarmuka untuk meningkatkan interoperabilitas akun; Sinkronisasi status akun lintas rantai; dan banyak lagi. Terima kasih kepada semua pembangun, kita semakin mendekati untuk memecahkan teka-teki ini setiap hari. Dan usaha kripto seperti kami - SevenX, siap membantu perusahaan-perusahaan besar mewujudkan visi mereka.

Disclaimer:

  1. Artikel ini dicetak ulang dari [SevenX Ventures]. Semua hak cipta milik penulis asli [@Rui]. Jika ada keberatan dengan cetak ulang ini, silakan hubungi Gate Belajartim, dan mereka akan menanganinya dengan segera.
  2. Penafian Tanggung Jawab: Pandangan dan pendapat yang terdapat dalam artikel ini semata-mata merupakan milik penulis dan tidak merupakan nasihat investasi apapun.
  3. Terjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel yang diterjemahkan dilarang.

WebAuthn dan Passkey, Manajemen Kunci untuk Pengguna Kripto Harian

Menengah1/11/2024, 3:44:46 PM
Artikel ini menjelajahi labirin Passkey, WebAuthn, AA, dan MPC, beserta solusi optimal potensial.

Singkatnya;

Kunci pribadi adalah inti yang memungkinkan kami menandatangani transaksi di Ethereum, namun mengelolanya telah menjadi mimpi buruk, bahkan dalam bentuk yang dapat dibaca seperti 'frasa benih'. Namun tujuan kami bukanlah menjadikan blockchain sebagai permainan yang canggih.

Mengautentikasi pengguna yang berwenang sangat penting untuk transaksi yang aman. Dengan evolusi keamanan internet dan UX, kami telah beralih dari autentikasi kata sandi ke biometrik seperti pengenalan wajah dan sidik jari. WebAuthn adalah pengembangan kunci dalam perkembangan ini. Artikel ini membahas tiga istilah dengan cermat:

WebAuthn: Sebuah standar otentikasi web menggunakan kredensial berbasis kunci publik, sering kali dibuat oleh otentikator eksternal. Ini menghilangkan kebutuhan akan kata sandi dan memungkinkan otentikasi pengguna yang aman.

Secure Enclave: Area aman berbasis perangkat keras dalam perangkat komputasi, Secure Enclave dirancang untuk melindungi data sensitif. Versi dari Secure Enclave ditemukan di perangkat iOS, Android, dan Windows. Ini dapat berfungsi sebagai penyandi aman dengan mengimplementasikan WebAuthn, tetapi kunci pribadi, terikat pada SE, seringkali menimbulkan tantangan lintas perangkat.

Passkey: Implementasi WebAuthn di tingkat sistem operasi, disesuaikan oleh berbagai penyedia perangkat dan sistem. Misalnya, Passkey Apple menggunakan kunci yang disimpan di iCloud Keychain untuk sinkronisasi lintas perangkat. Namun, pendekatan ini biasanya dikunci untuk platform atau sistem tertentu.

Seperti yang dijelaskan di atas, implementasi webAuthn sejalan dengan tujuan kami untuk pengguna blockchain harian, untuk mencapai keamanan anti-phishing tingkat tinggi dan pengalaman yang ramah. Inilah ide untuk menggabungkannya ke dalam blockchain:

Lapisan Kunci: Pengguna mengautentikasi menggunakan metode biometrik yang mulus seperti pengenalan wajah atau sidik jari. Di balik layar, ini adalah prosesor keamanan berbasis hardware seperti Secure Enclave atau layanan cloud seperti iCloud dan Google Cloud yang mengelola manajemen kunci. Saya akan membahas masalah lintas perangkat dan lintas platform nanti.

Lapisan Akun: Akun Kontrak Cerdas (SCA) menawarkan kemampuan untuk menetapkan penandatangan sewenang-wenang (misalnya SE dan Passkey) dan mekanisme ambang batas. Selain itu, desain modularnya meningkatkan fleksibilitas dan kemampuan upgrade. Misalnya, SCA dapat menyesuaikan persyaratan penandatanganannya secara dinamis berdasarkan faktor-faktor seperti jumlah transaksi, waktu, atau alamat IP. Di sisi lain, Akun Milik Eksternal (EOA) tradisional dapat ditambah dengan layanan MPC, kombinasi mereka menawarkan interoperabilitas dan efektivitas biaya yang lebih baik dibandingkan dengan SCA, meskipun tidak memiliki fungsionalitas lanjutan yang disediakan SCA, terutama untuk rotasi kunci.

Layer Tanda Tangan: Ethereum mendukung kriptografi k1 secara alami, tetapi verifikasi tanda tangan WebAuthn mengakibatkan biaya yang lebih tinggi, karena menggunakan kurva r1 untuk pembangkitan kunci. Oleh karena itu, beberapa solusi Layer 2 seperti zkSync, berencana untuk menggunakan pra-kompilasi kurva r1 EIP-7212 secara alami. Selain itu, ada layanan pihak ketiga, verifikasi Solidity, verifikasi Zero-Knowledge (ZK), dan sistem manajemen kunci terdistribusi, untuk memfasilitasi tanda tangan kurva r1 dengan cara yang lebih cost-effective.

Penolakan:

Kemajuan teknologi tidak menjamin kesuksesan pasar; Tidak semua perangkat dan platform telah mengadopsi Passkey; Menggunakan SCA bisa lebih mahal daripada EOA; Solusi yang diusulkan berkembang dengan kemajuan teknologi.

Kripto UX buruk? Manajemen kunci buruk!

Di dunia blockchain, kontrol sebenarnya dari aset blockchain tidak berada di tangan pengguna atau penyedia dompet, melainkan terletak pada kunci pribadi. Kunci ini sangat penting dalam seluruh proses mengeksekusi transaksi di Ethereum. Untuk memahami ini lebih baik, mari kita ambil EOA sebagai contoh:

Generasi Kunci: Sebuah nomor acak yang dipilih dari kurva eliptis secp256k1 berfungsi sebagai kunci privat. Kunci ini kemudian dikalikan dengan titik yang telah ditentukan pada kurva untuk menghasilkan kunci publik. Alamat Ethereum berasal dari 20 byte terakhir dari kunci publik yang di-hash. Frasa 'seed' biasanya diperkenalkan untuk cadangan yang dapat dibaca oleh manusia, memungkinkan turunan deterministik kunci privat dan publik.

Tanda Tangan Transaksi: Sebuah transaksi, yang berisi rincian seperti nonce (sebuah nomor berurutan), jumlah, harga gas, dan alamat penerima, ditandatangani menggunakan kunci pribadi. Proses ini, melibatkan ECDSA, sebuah algoritma tanda tangan digital yang menggunakan kriptografi kurva eliptik dan mengadopsi secp256k1 sebagai kurva, menghasilkan tanda tangan yang terdiri dari nilai (r, s, v). Tanda tangan dan transaksi asli kemudian disiarkan di jaringan.

Memverifikasi Transaksi: Begitu sebuah transaksi mencapai node-node Ethereum, transaksi tersebut menjalani proses validasi di mempool node. Untuk memverifikasi penandatangan, node-node menggunakan tanda tangan dan transaksi yang di-hash untuk mendapatkan kunci publik pengirim dan mengonfirmasi keaslian transaksi dengan mencocokkan alamat yang didapatkan dengan pengirim transaksi.

Seperti yang dijelaskan di atas, kunci pribadi adalah entitas penting di rantai. Pada awalnya, akun Ethereum, dikenal sebagai Rekening Milik Eksternal (EOA), hanya bergantung pada satu kunci pribadi, yang menimbulkan risiko signifikan, karena kehilangan kunci berarti kehilangan akses ke akun.

Banyak orang mungkin berpikir Abstraksi Akun (AA) adalah solusi untuk segala sesuatu yang berkaitan dengan pengalaman pengguna yang buruk, yang akan saya katakan tidak sepenuhnya. AA adalah tentang mengubah aturan validitas agar dapat diprogram, dan programabilitas Smart Contract Account (SCAs) membuat hal itu menjadi mungkin. AA sangat kuat, memungkinkan pengiriman beberapa transaksi secara paralel (nonce abstrak), sponsor gas, dan membayar gas dalam ERC20 (gas abstrak), dan lebih relevan dengan topik artikel ini, untuk merusak validasi tanda tangan tetap (tanda tangan ECDSA abstrak). Alih-alih EOA, SCAs dapat menugaskan penandatangan sewenang-wenang dan mekanisme penandatanganan seperti multi-tanda tangan (multisig) atau kunci terfokus (kunci sesi). Namun, meskipun fleksibilitas dan kemajuan dalam hal pembaruan AA, ketergantungan fundamental pada kunci untuk menandatangani transaksi tetap tidak berubah.

Bahkan ketika dikonversi menjadi frasa benih 12 kata, mengelola kunci pribadi tetap menantang, berisiko kehilangan atau serangan phishing. Pengguna harus menavigasi antara lapisan-lapisan kompleks solusi terdesentralisasi atau dekapan hangat layanan terpusat, tidak ada satupun yang ideal.

Mengapa pengalaman crypto menyebalkan? Sebagian besar karena manajemen kunci menyebalkan. Itu selalu membutuhkan pengorbanan dalam pengalaman, keamanan, dan desentralisasi. Artikel ini membahas solusi optimal potensial untuk mengelola kunci.

Lapisan Manajemen Utama

Tidak akan pernah ada solusi satu ukuran untuk semua, cara terbaik untuk menjaga kunci disesuaikan dengan skenario pengguna tertentu, dipengaruhi oleh faktor-faktor seperti tipe pengguna (institusi atau individu), jumlah modal, frekuensi transaksi, dan tipe interaksi.

Untuk memperjelas ke depan, saya menghindari menggunakan metode 'self, semi, and fully custody' yang populer untuk membuat katalog. Dalam pandangan saya, hak asuh diri sejati berarti menandatangani transaksi secara independen, tanpa bergantung pada pihak lain, ini berlaku bahkan jika solusinya bukan kustodian dalam pengertian tradisional (seperti disimpan dalam TEE node terdesentralisasi). Mengkategorikan solusi hanya sebagai 'baik' atau 'buruk' berdasarkan jenis tahanan terlalu sederhana dan tidak memperhitungkan berbagai kesesuaiannya. Untuk penilaian metode manajemen kunci yang lebih bernuansa, saya sarankan untuk menganalisisnya melalui tiga lapisan berbeda:

Tanggung jawab

Apakah akan membagi tanggung jawab mengelola kunci ke pihak yang berbeda.

Diberikan bahwa individu sering menghadapi tantangan dalam mengelola kunci, mendistribusikan tanggung jawab untuk menjaga kunci muncul sebagai strategi mitigasi risiko alami. Kategori ini mencakup metode seperti menggunakan beberapa kunci untuk menandatangani secara kolaboratif, seperti yang terlihat dalam sistem Tanda Tangan Multi (Multi-sig), dan membagi kunci pribadi menjadi bagian melalui Skema Berbagi Rahasia (SSS) atau Komputasi Pihak Multi (MPC).

Multi-sig: Membutuhkan beberapa kunci pribadi lengkap untuk menghasilkan tanda tangan transaksi. Metode ini memerlukan komunikasi on-chain tentang para penandatangan yang berbeda, menimbulkan biaya transaksi yang lebih tinggi, dan memengaruhi privasi karena jumlah penandatangan terlihat on-chain.

SSS: kunci pribadi dihasilkan di satu lokasi, dan dealer mendistribusikan potongan kunci ini ke pihak yang berbeda. Semua pihak harus merekonstruksi kunci pribadi penuh untuk menandatangani transaksi. Namun, rekonstruksi sementara ini dapat menimbulkan kerentanan.

MPC-TSS (Threshold Signature Scheme): sebagai implementasi dari MPC, pendekatan kriptografi yang memungkinkan beberapa pihak untuk melakukan komputasi sambil menjaga input mereka secara bersama-sama. Setiap pihak secara independen membuat bagian kunci rahasia, dan transaksi ditandatangani tanpa perlu bertemu secara fisik. Ini memperkenalkan biaya yang lebih rendah karena berada di luar rantai, dan tidak ada risiko titik kegagalan tunggal seperti SSS.

Penyimpanan

Simpan kunci atau saham, dipengaruhi oleh faktor keamanan, aksesibilitas, biaya, dan desentralisasi.

Layanan awan terpusat seperti AWS, iCloud, dan server lainnya. Mereka nyaman untuk transaksi yang sering, tetapi lebih rentan terhadap sensor.

Penyimpanan terdesentralisasi seperti IPFS dan Filecoin.

Komputer/ponsel lokal: Kunci disimpan secara lokal dalam penyimpanan aman peramban.

Dompet kertas: Hasil cetak fisik kunci pribadi atau kode QR.

Lingkungan Pelaksanaan Terpercaya (TEE): TEE menyediakan area aman dalam prosesor utama untuk menjalankan atau menyimpan data sensitif, terisolasi dari sistem operasi utama.

Secure Enclave: Secure Enclave pada perangkat modern terisolasi dari pemroses utama untuk memberikan lapisan keamanan tambahan dan dirancang untuk menjaga data sensitif pengguna tetap aman bahkan ketika kernel Processor Aplikasi terpengaruh.

Dompet keras: Perangkat fisik seperti Ledger dan Trezor, yang dirancang khusus untuk menyimpan kunci pribadi secara aman.

Modul Keamanan Perangkat Keras (HSM): HSM adalah perangkat keras khusus yang dirancang untuk manajemen kunci yang aman dan operasi kriptografis. Mereka biasanya digunakan di lingkungan perusahaan dan menawarkan fitur keamanan kelas tinggi.

Akses

Bagaimana cara memverifikasi identitas pengguna untuk mengakses kunci yang disimpan

Autentikasi terlibat dalam mengakses kunci yang disimpan. Ini tentang memvalidasi bahwa individu yang mencoba mengakses memang diotorisasi untuk melakukannya. Jika melihat ke belakang sejarah, kita dapat mengkategorikan sejarah seperti ini:

Something You Know: Passwords, PINs, jawaban untuk pertanyaan keamanan, atau pola tertentu.

Ada Sesuatu Yang Anda Miliki: Termasuk kartu pintar, token perangkat keras (kata sandi sekali pakai berbasis waktu), atau faktor digital seperti verifikasi akun sosial dan kode SMS yang dikirim ke telepon.

Seseorang yang Anda adalah: Melibatkan karakteristik fisik unik pengguna, seperti sidik jari, pengenalan wajah (seperti Face ID Apple atau Windows Hello), pengenalan suara, atau pemindaian iris/retina.

Dari situ, 2FA dan MFA adalah metode yang mengombinasikan dua faktor atau lebih, seperti pemberitahuan dorong SMS yang digabungkan, untuk menambahkan lapisan keamanan yang lebih pada akun pengguna.

Analisis Pemain yang Sudah Ada

MetaMask memungkinkan pengguna menggunakan kata sandi untuk mengakses kunci yang disimpan di penyimpanan browser lokal pengguna.

Trust Wallet memungkinkan pengguna menggunakan kata sandi atau faceID untuk mengakses kunci yang disimpan di penyimpanan browser lokal pengguna, pengguna juga dapat memilih layanan cloud untuk mencadangkan kunci privat.

Privy memungkinkan pengguna untuk menggunakan berbagai metode login sosial seperti email, menggunakan SSS untuk membagi tiga bagian:

Berbagi perangkat: Browser-iFrame, seluler- enclave aman.

Auth share: Disimpan oleh privy, tautan ke id privy).

Bagikan pemulihan: Kata sandi pengguna atau dienkripsi oleh Privy disimpan di modul keamanan perangkat keras (HSM).

Particle memungkinkan pengguna untuk menggunakan login sosial, menggunakan MPC-TSS yang memiliki dua bagian:

Bagikan perangkat: browser-iFrame

Bagian kunci server: server Particle

Solusi Baru

Lapisan kunci: WebAuthn, Secure Enclave, dan Passkey

Solusi yang ada di atas telah menjadi sangat penting dalam memperkenalkan pengguna ke web3. Namun, mereka sering kali datang dengan tantangan: kata sandi bisa dilupakan atau menjadi target dalam serangan phishing, dan bahkan 2FA, meskipun lebih aman, bisa merepotkan dengan langkah-langkahnya yang beragam. Selain itu, tidak semua orang nyaman menyerahkan manajemen kunci kepada pihak ketiga, pengguna masih bergantung pada ketersediaan sistem dan keberlanjutan sementara beberapa layanan memastikan mereka tidak bisa mengakses kunci.

Hal ini membuat kita mempertimbangkan apakah ada solusi yang lebih efektif — salah satu yang menawarkan solusi terdekat untuk pengalaman pengguna yang tidak memerlukan kepercayaan, tingkat keamanan tinggi, dan mulus. Pencarian ini membawa kita ke metode web2 yang optimal. Beberapa istilah terkait erat dengan topik tersebut, seperti yang saya jelaskan di awal artikel, WebAuthn adalah standar otentikasi itu sendiri, sementara Secure Enclave dan Passkey adalah implementasi atau komponen yang terkait dengan standar ini.

WebAuthn

WebAuthn mengstandarkan antarmuka otentikasi pengguna ke aplikasi berbasis web. Ini memungkinkan pengguna masuk ke akun internet menggunakan otentikator eksternal daripada kata sandi. Otentikator bisa menjadi Otentikator Roaming (Yubikey, kunci Titan) atau Otentikator Platform (kunci bawaan pada perangkat Apple), dan lain sebagainya.

Aliansi FIDO (Fast IDentity Online) awalnya mengembangkan teknologi di balik WebAuthn. Hal itu secara resmi dinyatakan sebagai standar web oleh W3C pada Maret 2019 dan bersamaan dengan standarisasinya, browser utama seperti Google Chrome, Mozilla Firefox, Microsoft Edge, dan Apple Safari telah mengadopsi WebAuthn, secara signifikan meningkatkan jangkauan dan kegunaannya. Kini didukung oleh banyak perangkat canggih.

Manfaat dari webAuthn:

Keamanan Ditingkatkan: Menghilangkan ketergantungan pada kata sandi, mengurangi kerentanan terhadap phishing, brute force, dan serangan replay.

Peningkatan Pengalaman Pengguna: Menawarkan proses login yang lebih sederhana dan cepat, seringkali hanya dengan sekali ketuk atau verifikasi biometrik.

Perlindungan Privasi: Tidak ada rahasia bersama yang ditransmisikan selama otentikasi, dan situs web individu tidak menerima informasi yang dapat diidentifikasi secara pribadi.

Skalabilitas dan Standarisasi: Sebagai standar web, WebAuthn memastikan konsistensi dan interoperabilitas di berbagai browser dan platform.

WebAuthn yang terikat pada perangkat, misalnya Enclave Aman

Dalam kasus-kasus modern, kita dapat menggunakan prosesor hardware sebagai pengautentikasi, seperti Secure Enclave untuk perangkat Apple, Trustzone untuk Android, dan Strongbox untuk Google Pixel.

Pembuatan Kunci: Dengan menggunakan kriptografi kunci publik, sepasang kunci dibuat sesuai dengan standar WebAuthn, biasanya menggunakan kurva P-256 r1. Kunci publik dikirim ke layanan, sementara kunci privat TIDAK PERNAH meninggalkan Secure Enclave. Pengguna tidak pernah menangani kunci teks biasa, sehingga sulit bagi kunci privat untuk dikompromikan.

Penyimpanan Kunci: Kunci privat disimpan dengan aman di dalam Enclave Aman perangkat, sebuah subsistem yang diperkuat yang terpisah dari prosesor utama. Ini melindungi data sensitif, memastikan bahwa bahkan jika sistem utama dikompromikan, bahan kunci mentah tetap tidak dapat diakses. Tingkat kesulitan untuk mengompromikan Enclave Aman sangat tinggi, dan oleh karena itu tipe data paling sensitif seperti data Apple Pay dan FaceID disimpan di sana. Berikut adalah penjelasan mendalam tentang bagaimana SE bekerja.

Autentikasi: Pengguna menggunakan pengenalan wajah atau sidik jari mereka untuk mengakses, Secure Enclave menggunakan kunci privat untuk menandatangani tantangan dari layanan, dan layanan memverifikasi menggunakan kunci publik.

Keuntungan webAuthn berbasis perangkat:

Keamanan tingkat perangkat keras: Menggunakan Secure Enclave, manajer kunci berbasis perangkat keras yang terisolasi untuk memberikan lapisan keamanan tambahan.

Tahanan phishing: Jangan melibatkan memasukkan informasi apapun pada perangkat atau situs web yang berpotensi terganggu.

Pengalaman yang nyaman: Mereka menyediakan pengalaman yang lebih ramah pengguna. Pengguna tidak perlu lagi mengingat kata sandi kompleks untuk situs-situs berbeda.

Kekurangan webAuthn berbasis perangkat:

Keterbatasan perangkat: Kunci pribadi tidak dapat diekspor atau diambil kembali jika perangkat hilang atau rusak, operasi lintas perangkat tidak mungkin.

WebAuthn berbasis cloud, Passkey

Menanggapi tantangan fungsionalitas lintas perangkat, raksasa teknologi telah memperkenalkan implementasi webAuthn berbasis awan, Passkey cukup dikenal karena Apple.

Mari kita ambil Passkey Apple sebagai contoh:

Generasi kunci: Perangkat macOS, iOS, atau iPadOS pengguna, sebagai otentikator, menghasilkan pasangan kunci publik-privat ketika pengguna membuat akun. Kemudian mengirimkan kunci publik ke server, dan kunci privat disimpan dalam keychain iCloud perangkat. Data iCloud Keychain dienkripsi dengan pasangan kunci terikat perangkat keras, dan disimpan dalam modul keamanan perangkat keras (HSM). Kunci tidak dapat diakses oleh Apple.

Sinkronisasi di semua perangkat: Proses ini akan sama seperti mengakses iCloud. Autentikasi ke akun iCloud, terima kode SMS, dan masukkan kode sandi salah satu perangkat.

Keuntungan webAuthn berbasis cloud:

Cross-device: Passkeys dirancang agar nyaman dan dapat diakses dari semua perangkat yang digunakan secara teratur. Tetapi saat ini terbatas pada perangkat Apple, untuk Android lebih menantang karena beragam versi dan variasi perangkat kerasnya.

Ketahanan Phishing: Sama seperti di atas.

Pengalaman yang nyaman: Sama seperti di atas.

Kekurangan kunci awal berbasis awan:

Bergantung pada layanan cloud: Dibandingkan dengan webAuthn berbasis perangkat, passkey berbasis cloud memindahkan tingkat keamanan dari hardware Secure Enclave ke iCloud keychain, beberapa orang dapat berpendapat bahwa itu bersifat kustodial terhadap layanan cloud Anda. Beberapa aspek kunci yang perlu dipertimbangkan termasuk: Akun AppleID pengguna yang digunakan dengan iCloud dikompromikan; Meskipun iCloud Keychain menggunakan enkripsi ujung ke ujung untuk melindungi data, kesalahan operasional atau kerentanan menimbulkan risiko.

Batasan ke platform: Sebagai contoh, menggunakan kunci sandi berbasis iCloud pada perangkat Android sangat menantang. Selain itu, berbeda dari metode tradisional, Apple dan Google tidak mengirimkan asertif spesifik perangkat. Hal ini berarti saat ini tidak mungkin untuk memverifikasi jenis perangkat yang menghasilkan kunci, yang menimbulkan pertanyaan tentang keandalan kunci dan metadata terkaitnya.

Lapisan Akun: SCA dan EOA

Sejauh ini, kita dapat melihat mempertahankan keamanan tingkat perangkat keras sambil mengatasi kompatibilitas lintas perangkat dan lintas platform adalah tantangan. Sama pentingnya adalah opsi pemulihan sosial, seperti menambahkan beberapa wali untuk keamanan yang ditingkatkan. Dalam konteks ini, blockchain dapat menunjukkan kepada kita sebuah jalan.

Sebuah kesenjangan yang mencolok ketika kita mencoba menerapkan web2 webAuthn ke web3: Web2 hanya memerlukan bukti kepemilikan, sedangkan web3 juga memerlukan otorisasi transaksi secara bersamaan. Dengan Passkey, pengembang kehilangan kendali atas pesan tanda tangan, yang biasanya generik, seperti 'masuk.' Ini dapat menyebabkan manipulasi front-end potensial, pengguna menandatangani pesan secara buta - kekhawatiran yang tampaknya kecil namun penting.

Akun Kontrak Pintar (AKP), yang pada dasarnya adalah kontrak pintar itu sendiri, berfungsi sebagai entitas on-chain, mampu menetapkan penandatangan sembarang. Fleksibilitas ini memungkinkan pemrograman berbagai perangkat dan platform – seperti pengaturan ponsel Android, Macbook, dan iPhone – sebagai penandatangan. Lebih jauh lagi, Akun Kontrak Pintar Modular memungkinkan kemungkinan peningkatan, menukar penandatangan baru, mengubah ambang batas penandatangan dari 2 dari 3 hingga konfigurasi yang lebih rumit.

Bayangkan sebuah dompet yang menyesuaikan persyaratan keamanannya berdasarkan konteks: ia memungkinkan otentikasi pengguna tunggal ketika pengguna berada di alamat IP lokal yang akrab, tetapi memerlukan beberapa penandatangan untuk transaksi dari alamat IP yang tidak dikenal atau di atas nilai tertentu. Dengan modularitas dan pemrograman, imajinasi kita adalah satu-satunya batasan untuk inovasi semacam itu. Banyak penyedia layanan SCA secara aktif membangun ruang ini, termasuk Safe, Zerodev, Biconomy, Etherspots, Rhinestone, dll. Juga memberi penghargaan kepada infrastruktur seperti Stackup, Plimico, Alchemy yang membuatnya mungkin.

Harap periksa penelitian sebelumnya saya memberikan konteks yang lebih komprehensif seputar SCA.

EOA dapat mencapai pemulihan sosial dan kompatibilitas lintas perangkat/platform melalui layanan MPC. Meskipun EOA memiliki tanda tangan tetap, penyedia MPC dapat membagi kunci menjadi bagian untuk keamanan dan fleksibilitas yang ditingkatkan. Metode ini kurang memiliki fitur yang dapat diprogram dan ditingkatkan seperti pemulihan timelock dan deaktivasi kunci yang mudah. Namun, masih menawarkan kemampuan lintas-rantai yang superior dengan menjadi agnostik rantai dan saat ini lebih hemat biaya daripada SCA. Penyedia MPC terkemuka termasuk Privy, Jaringan Particle, web3Auth, dompet OKX, dompet Binance, dll.

Layer Tanda Tangan: dukungan R1

Mari kita mundur sedikit untuk memahami konteksnya: Di Ethereum, kunci privat adalah angka acak yang dipilih dari kurva k1, dan proses penandatanganan juga menggunakan kurva ini.

Namun, pasangan kunci yang dihasilkan sesuai dengan standar WebAuthn, menggunakan kurva r1. Oleh karena itu, memverifikasi tanda tangan r1 di Ethereum kira-kira tiga kali lebih mahal daripada tanda tangan k1. Berikut adalah beberapa pendekatan untuk mengatasi hal ini:

Kredit kepada Dogan, untuk pengetahuan yang lebih mendalam, silakan cek penelitiannya.

Solusi Protokol:

Solusi: EIP7212, Prekompilasi untuk dukungan Kurva secp256r1 diusulkan oleh tim Clave.

Evaluasi: Usulan ini menciptakan kontrak yang telah dikompilasi sebelumnya yang melakukan verifikasi tanda tangan dalam kurva eliptis 'secp256r1' berdasarkan parameter yang diberikan yaitu hash pesan, komponen r dan s dari tanda tangan, serta koordinat x, y dari kunci publik. Sehingga, setiap rantai EVM - terutama rollups Ethereum - akan dapat mengintegrasikan kontrak yang telah dikompilasi sebelumnya ini dengan mudah. Sampai saat ini, protokol yang telah dikompilasi sebelumnya mungkin merupakan solusi yang paling efisien dalam hal gas.

Implementasi: zkSync

Layanan pihak ketiga

Solusi: Paket lengkap

Evaluasi: Sebuah TEE Turki memastikan kunci privat hanya dapat diakses oleh pengguna melalui PassKey mereka dan tidak pernah dapat diakses oleh Turnkey itu sendiri, namun ini masih memerlukan kelangsungan layanan.

Implementasi: Goldfinch

Solusi Verifier Soliditas:

Solusi: Verifikasi Solidity FCL, Verifikasi Solidity FCL Dengan Prahitungan, P256Verifier Daimo

Implementasi: Clave, Obvious Wallet

Pemeriksa Pengetahuan Nol (ZK):

Solusi: Risc0 Bonsai, halo2-ecc Axiom

Evaluasi: Pendekatan ini memanfaatkan bukti pengetahuan nol untuk memverifikasi komputasi di luar Mesin Virtual Ethereum (EVM), mengurangi biaya komputasi on-chain.

Implementasi: Dompet Bonfire(Risc0), Laboratorium Know Nothing(Axiom)

Masing-masing solusi ini menawarkan metode yang berbeda untuk memberdayakan verifikasi tanda tangan r1 yang lebih murah dan memungkinkan dalam ekosistem Ethereum, dan inilah penilaian oleh Dogan.

Studi Kasus Implementasi

*Harap dicatat bahwa pada Desember 2023, sebagian besar solusi ini masih dalam tahap awal dan dapat berubah atau ditingkatkan kapan saja. Contoh-contoh ini hanya untuk tujuan pembelajaran; selalu merujuk ke situs web resmi mereka untuk informasi yang akurat.

Dompet kunci: (Secure Enclave webAuthn) + (SCA)

Dasar:

Demo: https://getclave.io/

Akun: SCA

Rantai: ZkSync

Proses transaksi:

Pembuatan kunci: Pengguna memberikan otentikasi biometrik seperti sidik jari atau pengenalan wajah, sepasang kunci dibuat di dalam Secure Enclave, yang tidak pernah terungkap atau keluar.

Penandatanganan kunci: Aplikasi mengambil pesan transaksi yang diperlukan dan meneruskan permintaan penandatanganan ke Secure Enclave, pengguna memberikan bio-auth untuk menyetujui penandatanganan, dan Secure Enclave menandatangani pesan dengan kunci, dan untuk disiarkan ke node blockchain.

Fungsi tambahan: Akun kontrak pintar memungkinkan banyak fungsi yang kuat. Pertama, sponsor gas. Karena pembayar, pihak lain seperti dApp atau pengiklan dapat membayar biaya gas pengguna, membuat proses transaksi lebih lancar, dan juga mereka dapat memungkinkan pengguna membayar gas dalam ERC20 alih-alih Ether atau token asli. Dan menggunakan kunci sesi, pengguna dapat melakukan transaksi tanpa tanda tangan dalam jangka waktu tertentu.

Mekanisme pemulihan:

Proses pemulihan dilakukan oleh kontrak pintar Clave di zkSync, pengguna dapat membatalkan pemulihan selama kunci waktu 48 jam, untuk mencegah aktivitas yang tidak sah dan berbahaya.

Cloud backup: Sebuah EOA akan dibuat saat pengguna memilih cloud backup, kunci pribadi dari EOA disimpan di iCloud atau Google Drive, pengguna dapat menggunakan kunci pribadi yang disimpan di cloud ini untuk mengakses akun mereka dari perangkat yang berbeda, dan pengguna dapat menghapus atau menimpanya kapan saja.

Pemulihan sosial: Pengguna dapat menetapkan alamat clave keluarga atau teman mereka sebagai cadangan, jika wali M of N memberikan konfirmasi untuk pemulihan, pemulihan akan dijalankan setelah penguncian 48 jam jika tanpa membatalkan.

Dompet Soul: (Passkey) + (4337 SCA)

Dasar:

Demo: https://alpha.soulwallet.io/wallet

Akun: ERC4337 SCA

Rantai: Ethereum, Optimism, Arbitrum, dan segera semua lapisan2 EVM

Proses transaksi:

Pembuatan kunci: Pengguna memberikan otentikasi biometrik seperti sidik jari atau pengenalan wajah, dan sistem operasi menghasilkan Passkey dan mencadangkannya menggunakan layanan cloud. Anda dapat menambahkan lebih dari satu passkey lintas perangkat dan lintas platform.

Tambahkan gardian (Opsional): Pengguna dapat menetapkan alamat EVM EOA yang berbeda sebagai penjaga dan menetapkan ambang batas untuk pemulihan akun.

Pembuatan akun: Dengan penggunaan penyebaran kontrafaktual, pengguna tidak perlu membayar biaya apapun hingga transaksi pertama

Mekanisme pemulihan:

Passkey: Gunakan paskey yang ditentukan untuk masuk ke dompet menggunakan perangkat sembarang.

Pemulihan wali: Para wali yang ditugaskan dapat memutar dompet sesuai dengan ambang batas, dan kunci waktu mungkin akan diatasi nanti untuk mencegah perilaku jahat.

Dompet OKX: (MPC-TSS + Passkey) + (4337 SCA)

Dasar:

Demo: https://www.okx.com/help/what-is-an-aa-smart-contract-wallet

Rantai: 30+ rantai

Kunci: MPC-TSS, 2/3

Akun: 4337 SCA

Proses transaksi:

Pembuatan kunci: Dengan membuat dompet, OKX mengubah satu kunci pribadi menjadi tiga bagian terpisah. Bagian 1 disimpan di server OKX, bagian 2 disimpan di penyimpanan lokal perangkat pengguna, dan bagian 3 dihasilkan oleh perangkat, dienkripsi dan dapat dicadangkan ke layanan cloud pilihan perangkat, seperti Google Cloud, iCloud, dan Huawei Cloud.

Penandatanganan kunci: OKX menggunakan teknologi MPC-TSS, pengguna dapat memperoleh tanda tangan lengkap dengan menggunakan dua dari tiga bagian kunci pribadi saat menandatangani transaksi, bagian kunci tidak pernah bertemu satu sama lain selama proses ini.

Mekanisme pemulihan:

Mekanisme 2/3: Ketika pengguna keluar, perangkat tidak tersedia, atau salah satu kunci pada perangkat dikompromikan, Anda dapat menggunakan perangkat baru untuk masuk ke dompet OKX (mendapatkan bagian server) dan mendapatkan bagian layanan cloud, gabungkan kedua bagian ini untuk memulihkan dompet, dompet OKX akan menghasilkan bagian rahasia baru.

Web3Auth: (MPC-TSS + Passkey)+ (EOA/SCA)

Dasar:

Demo: https://w3a.link/passkeysDemo

Rantai: Semua EVM dan Solana

Kunci: MPC-TSS, biasanya 2/3

Akun: Setiap akun seperti EOA, 4337 SCA, atau SCA umum

Proses transaksi:

Pembuatan kunci: Dengan membuat dompet, tiga bagian kunci dihasilkan. Share1 adalah berbagi login sosial, pengguna dapat mengetikkan email mereka, dan jaringan node terdesentralisasi menyimpan kunci untuk setiap pengguna; Share2 adalah berbagi perangkat yang disimpan di penyimpanan lokal perangkat pengguna; Share3 dihasilkan oleh komputer lokal dan didukung oleh layanan cloud pilihan pengguna.

Tanda tangan kunci: Arsitektur Web3Auth MPC-TSS memastikan bahwa kunci pengguna selalu tersedia, bahkan saat menggunakan tandatangan ambang, kunci tidak pernah direkonstruksi atau disimpan di satu tempat.

Mekanisme pemulihan:

Pemulihan ambang Saat pengguna keluar, perangkat tidak tersedia, atau salah satu kunci pada perangkat tersebut dikompromikan, Anda dapat menggunakan metode login sosial untuk masuk ke akun webAuthn dan mendapatkan berbagi awan kunci sandi, gabungkan kedua berbagi ini untuk memulihkan dompet.

Protokol Lit (MPC-TSS + node Terdesentralisasi + Kunci Akses) + (EOA/SCA)

Informasi dasar:

Demo: https://lit-pkp-auth-demo.vercel.app/

Rantai: Sebagian besar EVM, Cosmos, Solana.

Akun: MPC-TSS, 20 dari 30 jaringan, dapat diadopsi oleh baik SCA maupun EOA.

Proses transaksi:

Pembuatan kunci: Ketika pengguna ingin membuat dompet, pertama-tama pilih metode otentikasi (kunci sandi, login sosial oAuth didukung), kemudian permintaan dikirim ke relayer untuk membuat pasangan kunci dan menyimpan logika otentikasi ke kontrak pintar. Setiap pasangan kunci dihasilkan secara kolektif oleh node-node Lit melalui proses yang disebut Distributed Key Generation (DKG). Beroperasi sebagai jaringan terdesentralisasi, 30 node Lit berjalan di dalam TEE, setiap node memiliki bagian dari kunci tetapi kunci pribadi tidak pernah ada secara keseluruhan.

Penandatanganan kunci: Menerima permintaan, node-node Lit secara independen memvalidasi atau menolak permintaan terhadap metode otentikasi yang ditugaskan, dan menggunakan teknologi MPC-TSS,1. Bagian kunci dikumpulkan di atas ambang batas (20 dari 30) untuk menghasilkan tanda tangan dan digabungkan oleh klien untuk memenuhi permintaan.

Mekanisme pemulihan:

mekanisme 2/3: Gunakan metode otentikasi yang disimpan dalam kontrak pintar untuk mengakses akun, node Lit memvalidasi permintaan dan akan melanjutkan jika lebih dari 2/3 node mengonfirmasi.

Kesimpulan:

Dipicu oleh antusiasme terhadap Layer2, Layer3, dan solusi ketersediaan data, kami sangat ingin meningkatkan kinerja blockchain. Juga, mengejar keamanan nyata, menggabungkan Privasi Bukti Pengetahuan Nol dengan sifat transparansi. Semua upaya ditujukan pada satu tujuan: Siap untuk pengguna nyata yang sering berinteraksi dengan blockchain dan mengadopsi kripto ke dalam kehidupan mereka.

Mudah terjebak dalam mimpi teknologi yang optimal, tetapi kita harus bertanya: pengalaman seperti apa yang kita tuju? Kami membayangkan sebuah dunia di mana kripto adalah tentang intuisi daripada istilah teknologi yang membingungkan, di mana pengguna terjun ke dalam lubang kelinci tanpa ragu dan kesulitan.

Bayangkan seorang pengguna Rui: Dia menemukan aplikasi dApp fantastis, dengan mudah mendaftar menggunakan pengenalan wajah atau sidik jari, dengan opsi untuk mengatur cadangan atau wali. Saat dia berinteraksi dengan dApp, dia lancar melakukan transaksi, mungkin dengan biaya ERC20 kecil atau bahkan tidak sama sekali. Kemudian, dia menyesuaikan pengaturan dompetnya - mungkin mengaktifkan kunci waktu untuk transaksi otomatis, menambahkan perangkat lain sebagai tanda tangan cadangan, atau merevisi daftar walinya.

Para pembangun kami membuat itu terjadi. Dengan mengintegrasikan WebAuthn dan Passkey, kami meningkatkan manajemen kunci pribadi, membuatnya aman dan ramah pengguna. Di atas kunci, SCA sebagai sebuah entitas membuka ranah keamanan dan fungsionalitas yang dipersonalisasi. Dan mengenai biaya gas? Mereka menjadi kurang membebani, berkat penyedia Paymaster yang dapat membuat 'brankas' untuk pertukaran atau bahkan memungkinkan pengiklan untuk menutupi biaya bagi pengguna. Di tengah evolusi ini, terutama untuk Ethereum mainnet dan Layer2 setara, adalah ERC4337. Ini memperkenalkan mempool alternatif yang membedakan transaksi SCA dari EOAs, tanpa perombakan protokol utama. Di sisi lain, beberapa jaringan Layer 2 bahkan menerima SCAs secara alami, menyelaraskannya ke dalam sistem mereka tanpa masalah.

Dibutuhkan upaya besar untuk membuat segalanya menjadi mudah. Banyak tantangan seperti menurunkan biaya implementasi, validasi, dan eksekusi untuk SCA; Standarisasi antarmuka untuk meningkatkan interoperabilitas akun; Sinkronisasi status akun lintas rantai; dan banyak lagi. Terima kasih kepada semua pembangun, kita semakin mendekati untuk memecahkan teka-teki ini setiap hari. Dan usaha kripto seperti kami - SevenX, siap membantu perusahaan-perusahaan besar mewujudkan visi mereka.

Disclaimer:

  1. Artikel ini dicetak ulang dari [SevenX Ventures]. Semua hak cipta milik penulis asli [@Rui]. Jika ada keberatan dengan cetak ulang ini, silakan hubungi Gate Belajartim, dan mereka akan menanganinya dengan segera.
  2. Penafian Tanggung Jawab: Pandangan dan pendapat yang terdapat dalam artikel ini semata-mata merupakan milik penulis dan tidak merupakan nasihat investasi apapun.
  3. Terjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel yang diterjemahkan dilarang.
Start Now
Sign up and get a
$100
Voucher!