Sözlük / Protokol ve güncellemeler
MuSig2
Diğer adları: Anahtar birleştirme.
- MuSig2 nedir?
- MuSig2, birden çok imzalayanın genel anahtarlarını tek bir anahtarda birleştirmesine ve tek bir 64 baytlık Schnorr imzası üretmesine olanak tanır; böylece grup halinde bir harcama, zincir üstünde tek kişilik bir harcamayla aynı görünür.
Tanımlandığı belge: BIP-327.
Bütün hüner anahtar birleştirmedir: birkaç katılımcının her biri bir özel anahtar tutar ve matematik, genel anahtarlarını hiçbirinin tek başına kontrol etmediği tek bir birleşik anahtarda toplar. BIP-327, şemayı özgün MuSig'deki üç turdan iki iletişim turuna indirdi. Paylaşılan bir cüzdan için bu, daha düşük ücretler ve cüzdanın paylaşıldığına dair hiçbir kamusal kanıt olmaması anlamına gelir.
Nasıl çalışır
MuSig2 grup üzerinde iki geçişte çalışır ve yalnızca ikinci geçişin neyin imzalanacağını bilmesi gerekir.
İlk geçişte her imzalayan iki gizli nonce üretir ve bunlara karşılık gelen nokta çiftini yayımlar. Koordinatör, bu çiftleri tüm kümenin hash'lenmesiyle elde edilen bir katsayı kullanarak tek bir birleşik nonce'ta toplar. O katsayı, şemanın daha önceki iki turlu tasarımları kıran saldırıları yeniden açmadan bir turu düşürmesini sağlayan somut mühendislik parçasıdır.
İkinci geçişte her imzalayan, işlemin imza hash'i üzerinde kısmi bir imza üretir ve tek bir sayı döndürür. Toplandığında bu sayılar, sıradan BIP-340 kurallarına göre 32 baytlık birleşik anahtara karşı doğrulanan 64 baytlık tek bir imza oluşturur. Bloğu doğrulayan bir düğüm, kaç kişinin katıldığını, hatta herhangi birinin katıldığını anlayamaz.
Açıkça adlandırılmaya değer iki güvenlik özelliği var. Anahtar birleştirme, anahtar başına bir katsayı uygular; böylece bir katılımcı, anahtarların düz toplanmasının olanak verdiği kötü niyetli anahtar saldırısıyla diğerlerinin anahtarlarını iptal eden bir genel anahtar üretemez. Nonce'lar ise kesinlikle tek kullanımlıktır: aynı nonce ile iki farklı mesajı imzalamak özel anahtarınızı doğrudan açığa çıkarır; bu nedenle doğru uygulamalar gizli nonce'u tüketildiği anda siler ve aynı oturumdan ikinci bir imzayı reddeder.
Nerede görülür
MuSig2, bir Taproot anahtar yolu harcamasının arkasındadır, yani gerçekte gördüğünüz şey, herhangi bir adres gibi davranan bir bc1p adresidir.
Boyut argümanı somuttur. Bir Taproot anahtar yolu girdisi, onu bir kişi de imzalasa beş kişi de imzalasa 57,5 vbyte tutar; oysa üçte iki tanıklık betiği harcaması üç genel anahtar ile iki imzayı açığa çıkarmak zorundadır ve bunun iki katının çok üzerine çıkar. Taproot çıktıları 14 Kasım 2021 tarihinde 709.632 numaralı blokta harcanabilir hale geldi, yani bu yetenek yıllardır zincirde mevcut ve darboğaz cüzdan yazılımı oldu.
BIP-373 altyapıyı sağlar: her satıcının bir mesaj biçimi icat etmesine gerek kalmadan bir donanım cihazının imzalama oturumuna katılabilmesi için genel nonce'lar, katılımcı anahtarları ve kısmi imzalar için PSBT alanları ekler. Tüketici cüzdanlarında benimseme hâlâ seyrektir. En somut uygulama, Lightning'deki basit taproot kanalları çalışmasıdır; burada iki eş, kanalı tek bir MuSig2 çıktısıyla fonlar.
MuSig2 vs multisig
MuSig2 yapısı gereği n'de n'dir; klasik multisig ise istediğiniz herhangi bir eşik olabilir.
Bu fark, birikimlerinizin yakınında yer alıp alamayacağına karar verir. Betiğe dayalı üçte iki yapısı, bir anahtar kaybolduğunda çalışmaya devam eder, çünkü betik üç anahtarı adlandırır ve bunlardan ikisini ister. Birleşik anahtar ise her katılımcının hazır bulunmasını gerektirir ve ortadan kaybolan bir imzalayan, aynı adres ayrıca bir kurtarma dalı içeren bir betik yolu taahhüt etmiyorsa paraları da beraberinde götürür. Tek bir birleşik anahtar altında gerçek eşikler, BIP-327'nin belirttiği şey olmayan FROST gibi farklı bir protokol gerektirir.
İkinci ödünleşim bilinçlidir. Betik multisig'i, blok gezgini olan herkes tarafından denetlenebilir; MuSig2 ise değildir; bu bir hane için gizlilik kazancı, bir ödemenin iki yetkili gerektirdiğini kanıtlamak zorunda olan bir sayman için ise engeldir.