Bir multisig cüzdan, fonlar hareket etmeden önce bağımsız anahtarlardan M-of-N imza gerektirir. Böylece tek bir ele geçirilmiş cihaz veya bir imzacının hatası hazineyi boşaltamaz. Bu rehber, imzacıları ve M-of-N eşiğini seçmeyi, Safe kurulumunu yapmayı, anahtarları coğrafyalar ve tedarikçiler arasında dağıtmayı ve tek bir dolar yatırmadan önce kurtarma planı oluşturmayı adım adım anlatır.
Öne çıkanlar
- Multisig bir ürün değil, operasyonel bir sistemdir ve güvenliği, kullandığınız akıllı sözleşmeden çok imzacıların bağımsızlığına bağlıdır.
- Eşik seçimi (M-of-N), hırsızlığa dayanıklılık ile bir imzacının ortadan kaybolması durumunda kalıcı olarak kilitli kalma riski arasında bir dengedir.
- Safe (eski adıyla Gnosis Safe), Ethereum ve EVM zincirlerinde sahada en çok sınanmış referans uygulamadır, ancak kullanıcı hatasını ortadan kaldırmaz.
- Kayıp imzacı kurtarma süreci lansmandan önce tasarlanmalıdır. Sonrasında ya bunun için plan yapmış olursunuz ya da yapmamış olursunuz.
- Kullandığınız araçlarla (Safe, donanım cüzdanları, koruyucular) ilgili haberleri ve piyasa duyarlılığını takip etmek, yönetişim değişiklikleri ve istismarların önünde kalmanızı sağlar.
Bir multisig cüzdan gerçekte ne yapar ve neden tek bir anahtar çoğu zaman yeterli değildir
Standart bir kripto cüzdan, her işlemi imzalayan tek bir özel anahtardır. O anahtarı kim kontrol ediyorsa fonları da o kontrol eder, bu kadar basit. Onu kaybederseniz para gider. Çalınırsa para gider. Destek hattı yoktur, parola sıfırlama yoktur, dolandırıcılık departmanı yoktur. Birkaç yüz dolarlık kişisel varlık için bu ödün kabul edilebilir. Bir DAO hazinesi, bir borsanın sıcak rezervleri, bir fonun operasyonel cüzdanı veya bir aile ofisinin uzun vadeli soğuk saklaması için kabul edilemez.
Bir multisig cüzdan bu yetkiyi N bağımsız anahtara böler ve herhangi bir işlemi imzalamak için bunlardan M tanesini ister. Örneğin 3-of-5 kurulumunda, fonlar hareket etmeden önce beş imzacıdan herhangi üçünün onay vermesi gerekir. İki anahtarı kaybetseniz bile cüzdan hâlâ harcanabilir durumdadır. Bir anahtar çalınırsa hırsız tek başına hiçbir şeyi hareket ettiremez. Bu tasarım kriptodan daha eskidir. Banka emanet hesaplarında, kurumsal hazine sistemlerinde ve hatta iki faktörlü kimlik doğrulama düzenlerinde görülür. Zincir üzerinde bu mantık bir banka yerine akıllı sözleşmenin içinde yaşar.
Temel fikir şudur: multisig açıp kapattığınız bir özellik değil, işlettiğiniz operasyonel bir sistemdir. Akıllı sözleşme M-of-N kuralını protokol düzeyinde uygular, ancak etrafına yerleştirdiğiniz insanlar, cihazlar, konumlar ve alışkanlıklar gerçekten korunup korunmadığınızı belirler. Beş anahtarın da tek bir ofisteki cihazlarda durduğu ve herkesin parolasını bilen tek bir kişinin imzaladığı bir 3-of-5, tek anahtarlı sıcak cüzdandan ancak biraz daha güvenlidir. Üç imzacının üç farklı kıtaya yayıldığı ve üç farklı tedarikçinin donanım cüzdanlarını kullandığı bir 2-of-3, her iki cüzdan da teknik olarak 'multisig mi?' testini geçse bile saldırılması anlamlı ölçüde daha zordur.
Başlamadan önceki gerçek riskler (bunu iki kez okuyun)
Multisig, tek anahtarlı cüzdanın sahip olmadığı riskler getirir. İlki kilitlenme riskidir: 3-of-5 ayarlarsanız ve üç imzacı anahtarlarını aynı anda kaybederse, fonlar matematiksel olarak kurtarılamaz hale gelir. Arka kapı yoktur. Web'de 'parity wallet frozen' araması yaparsanız, bir multisig kütüphanesindeki hatanın tek bir sözleşmede 500.000'den fazla ETH'yi yanlışlıkla kilitlediği 2017 olayını bulursunuz. Hata bir kodlama hatasıydı, hack değildi ve para hâlâ orada. Ders şu: akıllı sözleşme riski, denetlenmiş ve yaygın kullanılan kodlarda bile gerçektir.
İkinci risk insan problemidir. Multisig, imzacılarınızın gizli anlaşma yapmayacağını, aynı anda oltalamaya düşmeyeceğini ve gümrük dizüstü bilgisayarlarının imajını almaya karar verdiğinde hepsinin aynı havaalanında olmayacağını varsayar. Üç imzacınızdan ikisi birlikte seyahat eden kurucu ortaklarsa, adında 2-of-3, pratikte ise 1,5-of-3'e sahipsiniz. Üçüncü risk operasyoneldir: her imzacı her seferinde aynı prosedürü uygulamalıdır. İşlem ayrıntılarına 'sadece tıklayıp geçen' tek bir imzacı, tüm cüzdan için tek hata noktasıdır.
Dördüncü risk sözleşme yükseltilebilirliğidir. Safe'in belirli sürümleri dahil bazı multisig uygulamaları, sözleşme mantığının imzacıların kendi oylamasıyla yükseltilmesine izin verir. Bu, hata düzeltmeleri için kullanışlıdır, ancak imzacılarınızdan düşmanca bir çoğunluğun kuralları değiştirebileceği anlamına gelir. Değişmezlik istiyorsanız, dağıttığınız sürümün yükseltilemez olduğunu doğrulamalısınız. Beşinci risk zincire özeldir: bu rehberin büyük bölümü Safe'in baskın olduğu EVM zincirleri (Ethereum, Arbitrum, Base, Optimism, Polygon, BNB Chain) için geçerlidir. Bitcoin multisig vardır, ancak farklı çalışır ve burada ele alınmaz. Solana ve diğer EVM dışı zincirlerin kendi multisig standartları vardır ve her birinin kendine özgü incelikleri bulunur.
Adım 1: imzalayanların kim olduğunu, nerede bulunduklarını ve ne tuttuklarını tanımlayın
Herhangi bir yazılımı açmadan önce, dört sorunun yanıtını tek bir sayfaya yazın. Birincisi, toplam kaç imzalayan var (N)? İkincisi, her işlemi kaç kişinin imzalaması gerekiyor (M)? Üçüncüsü, her imzalayan fiziksel olarak nerede bulunuyor? Dördüncüsü, her imzalayan hangi cihazı ve hangi üreticiyi kullanıyor?
N genellikle 3 ile 7 arasındadır. 3'ün altında çok az yedekliliğiniz olur. 7'nin üstünde koordinasyon yükü artar ve kritik bir anda herhangi bir imzalayanın eksik olma olasılığı yükselir. M daha zor olan sayıdır. Yaygın bir model 3-of-5'tir. Bu model iki kayıp veya ele geçirilmiş imzalayanı tolere eder, ancak normal operasyonlar için yine de üç kişinin harekete geçmesini gerektirir. 2-of-3 işletmesi daha hızlıdır, ancak yalnızca bir arızayı tolere eder. 4-of-7 daha muhafazakardır ve daha büyük DAO'larda yaygındır, ancak yavaştır. Matematik acımasızdır: N anahtarla, N eksi M anahtara kadar kaybedip yine de çalışmaya devam edebilirsiniz, ancak bundan fazlasını kaybederseniz sonsuza kadar kilitlenirsiniz.
Coğrafya, ilişkili risk nedeniyle önemlidir. Singapore'daki bir imzalayan, Lisbon'daki bir imzalayan, Buenos Aires'teki bir imzalayan ve Toronto'daki bir imzalayanın aynı kasırgadan, aynı internet kesintisinden veya aynı kolluk müdahalesinden aynı anda etkilenmesi olası değildir. Donanım üreticisi de aynı nedenle önemlidir: bir üreticinin firmware'inde keşfedilen bir güvenlik açığı tüm imzalayanlarınızı aynı anda tehlikeye atmamalıdır. Mümkünse Ledger, Trezor, GridPlus ve Keystone'u karıştırın; aynı partiden gelen beş aynı cihazda beş imzalayan çalıştırmayın.
Son olarak, kişilerin gerçekte kim olduğuna karar verin. Kişisel bir cüzdan için, farklı fiziksel konumlarda kontrol ettiğiniz cihazlardaki kendi anahtarlarınızı kullanabilirsiniz. Bir DAO için imzalayanlar genellikle çekirdek ekibin bir alt kümesi ve potansiyel olarak bir güvenlik danışmanıdır. Bir aile ofisi için imzalayanlar, ana kişi, güvenilir bir operasyon lideri ve üçüncü taraf bir saklayıcının anahtarı olabilir. Kim olurlarsa olsunlar, her imzalayan cihazını kaybedemeyeceğini, seed phrase'ini paylaşamayacağını veya işlemleri okumadan imzalayamayacağını anlamalıdır.
Adım 2: kullanmayı planladığınız zincirde bir Safe dağıtın
Safe, eski adıyla Gnosis Safe, EVM zincirlerinde en yaygın dağıtılmış multisig'dir. 2018'den beri canlıdır, binlerce DAO ve ekip genelinde hazine fonlarında milyarlarca dolar tutar, birçok kez denetlenmiş ve fork edilmiştir. Çoğu EVM kullanıcısı için Safe varsayılan referanstır. Bununla birlikte, 'en çok kullanılan' ile 'sizin özel durumunuz için güvenli' aynı şey değildir. Denetim raporlarını okuyun, mevcut sürümü kontrol edin ve dağıtım yaptığınız contract adresinin Safe tarafından yayımlanan resmi adresle eşleştiğini doğrulayın.
Resmi Safe uygulamasını app.safe.global adresinde açın. E-postalardan, tweet'lerden veya arama reklamlarından gelen bağlantılara güvenmeyin. Göz atmak için önce salt okunur bir cüzdan bağlayın; gerçekten dağıtım yapana kadar imza atan bir cüzdan bağlamanız gerekmez. İstediğiniz ağı seçin. Ethereum mainnet en güvenli olanıdır, ancak kurulum için pahalıdır; Arbitrum, Base ve Optimism gibi Layer 2 ağları daha ucuzdur ve settlement için yine de Ethereum'un güvenliğini devralır. Hazinenizin gerçekten faaliyet gösterdiği yerle eşleşen zinciri seçin.
'Create new Safe' düğmesine tıklayın. Eşiğinizi (M) seçin ve N imzalayan cüzdanınızın adreslerini ekleyin. Bunlar MetaMask, Rabby, Frame, hardware wallet'lar veya başka herhangi bir EVM cüzdanı tarafından oluşturulan normal EVM adresleridir; Safe, alttaki anahtarın nasıl oluşturulduğuyla ilgilenmez, yalnızca hangi adrese sahip olduğuyla ilgilenir. Onaylayın. Dağıtım işlemini bağlı imzalayanla imzalayın ve ağ ücretini ödeyin. Safe, yeni bir adreste yeni bir smart contract wallet dağıtacaktır; bu adres sizin multisig'inizdir.
Safe adresini not edin. Adresin doğru olduğunu doğrulamak için küçük bir test işlemi gönderin, örneğin native token'dan 0.001 ETH gibi küçük bir miktar. Safe'ten kendi adresinize geri bir işlem test edin. Gerekli sayıda imzalayanla imzalayın ve yürütün. Ancak bu uçtan uca test başarılı olduktan sonra gerçek hazine fonları göndermeyi düşünmelisiniz.
Adım 3: imzalayan anahtarlarını cihazlar, üreticiler ve konumlar arasında dağıtın
Safe artık var olduğuna göre, her imzalayanın gerçekten hazır olduğundan emin olmanız gerekir. Bir imzalayan yalnızca bir adres değildir; bir cihazı, bir yedeği ve bir süreci olan bir kişidir. Her imzalayan için anahtarı bir hardware wallet üzerinde oluşturun, örneğin Ledger, Trezor, GridPlus, Keystone veya başka itibarlı bir üretici. Seed phrase'i kağıda veya metale yazın; bir password manager'da, cloud drive'da, e-postada veya fotoğrafta saklamayın. Yedeği cihazdan fiziksel olarak ayrı bir konumda saklayın.
Coğrafi dağıtımın iki katmanı vardır. Birinci katman, cihazın normalde bulunduğu yerdir: ev kasası, ofis kasası, banka kasası. İkinci katman, yedeğin bulunduğu yerdir. Bunlar aynı bina olmamalıdır. Cihazı alan bir yangın, sel veya hırsızlık, recovery phrase'i de almamalıdır.
Ciddi hazineler için üretici çeşitliliği pazarlık konusu değildir. Üç Ledger cihazı, iki Trezor ve bir GridPlus çalıştırmayın, çünkü bu hâlâ tek bir üreticiden üç tane demektir. Amaç, tek bir firmware hatasının veya tedarik zinciri saldırısının N imzalayanınızdan M tanesini tehlikeye atamamasını sağlamaktır. İki veya üç üretici makul bir minimumdur. Üretici çeşitliliğinin yalnızca paranoya olmadığını unutmayın; aynı zamanda, 2020 veri ihlali ve sonrasındaki ürün özelliği tartışmalarından sonra bazı Ledger kullanıcılarının korktuğu gibi, bir üreticinin kasıtlı bir arka kapıya sahip olduğunun ortaya çıktığı güne karşı da bir korunmadır.
Her imzalayanı tek sayfalık bir kayıtla belgeleyin: adres, hardware wallet modeli ve firmware sürümü, cihazın fiziksel konumu, seed yedeğinin fiziksel konumu, birincil iletişim kişisi ve birincil kişiye ulaşılamazsa o imzalayanı nasıl kurtaracağını bilen belirlenmiş bir alternatif. Bu belgeyi, her imzalayanın erişebileceği, ancak herhangi bir imzalayanla aynı cihazda bulunmayan şifreli bir konumda saklayın.
Adım 4: Safe'i fonlamadan önce kurtarma planını yazın
Kurtarma, insanların atladığı kısımdır ve bir multisig'in bir güvenlik sistemi mi yoksa ağır çekimde işleyen bir saatli bomba mı olduğunu belirleyen kısımdır. Üç senaryo için açık planlar gerekir: tek bir imzalayan cihazını kaybeder, tek bir imzalayanın seed phrase'i ele geçirilir ve iki veya daha fazla imzalayana aynı anda ulaşılamaz.
Tek bir kayıp cihaz için yanıt basittir: kalan N eksi 1 imzalayan hâlâ eşiğin üzerindedir, bu nedenle cüzdan çalışmaya devam eder. Kayıp imzalayanın değiştirilmesi gerekir. Bu, yeni bir hardware wallet üzerinde yeni bir anahtar oluşturmak ve eski adresi kaldırırken yeni adresi Safe'e eklemek anlamına gelir. Bu başlı başına bir Safe işlemidir, mevcut imzalayanların M tanesi tarafından imzalanır ve yürüteceğiniz en önemli kurtarma operasyonudur. Bunu gerçek ortamda yapmadan önce bir test Safe üzerinde pratik yapın.
Tek bir ele geçirilmiş seed için durum daha acildir. Fonları derhal, ele geçirilmemiş imzalayanlar tarafından imzalanmış şekilde, yeni imzalayanlara sahip yeni bir Safe'e taşıyın. Zaman önemlidir çünkü saldırgan artık gereken M anahtardan birine sahiptir. Eşiğiniz 3-of-5 ise ve yalnızca bir imzalayan ele geçirildiyse, fonları hâlâ taşıyabilirsiniz, ancak bunu saldırgan diğer ikisini toplamadan önce yapmalısınız. Seed'in ele geçirilmesini yangın gibi ele alın.
İki veya daha fazla imzalayana ulaşılamadığında, N eksi M yedekliliğinizin sınırını test ediyorsunuz demektir. Eşiğiniz 3-of-5 ise ve iki imzalayan gitmişse, cüzdan kalan üç kişiyle hâlâ çalışır. Üçü gitmişse, cüzdan kilitlenir. Kurtarma sorununun aslında lansman öncesi bir tasarım sorunu olmasının nedeni budur. Ya gerçekçi kayıplardan sağ çıkmanıza yetecek yedekliliği sağlayan bir M seçtiniz ya da seçmediniz. Hiçbir yazılım bunu sonradan düzeltemez.
Bazı ekipler multisig'in üzerine bir 'guardian' veya sosyal kurtarma katmanı ekler. Bu modelde ayrı bir güvenilir taraflar grubu, bir gecikme süresinden sonra erişimi kurtarmaya yardımcı olabilir. Bu farklı bir tasarımdır ve kişisel cüzdanlar için değerlendirilmeye değerdir, ancak kurumsal hazineler için saf multisig disiplini genellikle hibrit şemaların karmaşıklığından daha iyi sonuç verir.
Adım 5: operasyonel bir runbook oluşturun ve imzalama pratiği yapın
Multisig sizi yalnızca imzalayıcılarınız her seferinde gerçekten doğru şeyi yaparsa korur. Bunun için şu konuları kapsayan yazılı bir runbook gerekir: bir işlemin nasıl önerileceği, nasıl inceleneceği, her imzalayıcının bunu kendi cihazında nasıl doğrulayacağı, nasıl imzalayacağı, nasıl yürütüleceği ve sonucun nasıl kaydedileceği. Her imzalayıcı ilk işleminden önce runbook'u okumalı ve yılda bir kez yeniden okumalıdır.
İşlem incelemesi en çok hafife alınan adımdır. Her imzalayıcı gerçek on-chain hedefe, gerçek tutara, çağrılan gerçek sözleşmeye ve gerçek fonksiyon seçicisine bakmalıdır. Son birkaç yıldaki çoğu Safe istismarı protokol hack'i değildi; bunlar, bir imzalayıcının önerene güvendiği veya cüzdan arayüzüne yüzeysel baktığı için kötü amaçlı bir işlemi onayladığı sosyal mühendislik saldırılarıydı. Hardware wallet'lar hedef adresleri ve tutarları kendi ekranlarında gösterir. Bu, multisig için tek başına en yararlı güvenlik özelliğidir: doğruluğun kaynağı dizüstü bilgisayar değil, cihazın kendisidir.
İmzalama tatbikatları yapın. Her çeyrekte etkisiz bir işlem veya küçük bir test işlemi önerin ve tam M-of-N akışını baştan sona uygulayın. Bu kulağa fazla titiz gelebilir ama aksi halde acil bir durumda fark edeceğiniz sorunları ortaya çıkarır: cihaz firmware'i güncel olmayan bir imzalayıcı, hardware wallet'ı yanında olmadan seyahatte olan bir imzalayıcı, prosedürü hiç öğrenmemiş bir imzalayıcı. Tatbikatlar ayrıca kas hafızası oluşturur; böylece stres altında, devam eden bir hack, piyasa çöküşü veya son teslim tarihi varken ekip hatasız şekilde hızlıca işlem yapabilir.
Lansman öncesi kontrol listesi: Safe'e fon aktarmadan önce doğru olması gereken her şey
- Eşik ve imzalayıcı seti: M ve N seçilmiş, yazılı hale getirilmiş ve her imzalayıcı tarafından kabul edilmiştir.
- İmzalayıcı bağımsızlığı: her imzalayıcı farklı bir kişidir, farklı bir hardware vendor kullanır, farklı bir fiziksel konumdadır ve yedekleri farklı bir binadadır.
- Seed saklama: her imzalayıcının seed phrase'i herhangi bir dijital sistemde değil, kağıt veya metal üzerindedir ve en az bir off-site kopyası vardır.
- Safe dağıtımı: sözleşme adresi, seçilen chain ve sürüm için Safe'in resmi dağıtım listesiyle doğrulanmıştır.
- Uçtan uca test: küçük bir yatırma ve küçük bir çekme işlemi gerekli M imzalayıcı tarafından imzalanmış ve başarıyla yürütülmüştür.
- Kurtarma tatbikatı: bir test Safe'inde standart Safe prosedürüyle bir imzalayıcı değiştirilmiş, böylece ekibin imzalayıcıları sorunsuz şekilde döndürebildiği kanıtlanmıştır.
- Runbook yazılmıştır: tek bir belge işlemlerin nasıl önerileceğini, inceleneceğini, imzalanacağını ve yürütüleceğini açıklar ve her imzalayıcı bunu okumuştur.
- Ele geçirilme planı: ekip, önceden dağıtılmış bir 'kaçış kapısı' Safe'inin adresi dahil olmak üzere tek bir seed'in ele geçirilmesine nasıl tepki verileceği konusunda önceden anlaşmıştır.
- İletişim kanalları: acil durum koordinasyonu için güvenli bant dışı kanallar (Signal, Keybase, yüz yüze) üzerinde anlaşılmıştır, böylece ele geçirilmiş bir e-posta imzalayıcılara sosyal mühendislik yapmak için kullanılamaz.
Multisig haberlerini akıllı şekilde nasıl takip edersiniz
Multisig kurulumları uzun ömürlüdür ancak etraflarındaki ekosistem hızlı değişir: Safe yükseltmeler yayınlar, hardware vendor'lar firmware güncellemeleri gönderir, yeni sözleşme açıkları açıklanır ve DAO yönetişim uygulamaları evrilir. Tüm bunları manuel takip etmek kaybedilecek bir oyundur. Zippfeed, multisig ve self-custody başlıklarını duyarlılık puanlaması (bullish, neutral veya bearish) ve önem derecelendirmesiyle öne çıkarır; böylece yönetişim değişikliklerini, denetim bulgularını ve büyük istismarları hazinenizi etkilemeden önce yakalayabilirsiniz.