Öngörülemeyen: Bir Sözleşme Arızasında Gezinme ve V2 'nin Yeniden Başlatılması
Yazar: DeHub Team — 2022-10-01
2022 'nin 4. çeyreğinde sözleşmemizdeki vergi tetikleyicileri arızalandı. Token dondu. Likidite havuzu da onunla birlikte dondu. V2 olarak tekrar lansmana zorlandık.
Bu, DeHub'ın tarihindeki en ciddi teknik hatadır ve düzgün bir açıklamayı hak etmektedir.
Ne oldu?
Sözleşme, her işlemin bir yüzdesinin likidite, pazarlama veya sahiplere yönlendirildiği dönem için standart tasarım olan transfer yolunda vergi mantığı taşıyordu.
Bu tetikleyiciler gerçek koşullar altında arızalanmıştır. Sonuç, bozulmuş bir deneyim değildi. Token hareket edemedi ve havuz transferlere bağlı olduğu için likidite onunla kilitlendi. Sahipler işlem yapamadı. Dışarıdan düzeltemedik, çünkü davranış konuşlandırılan sözleşmenin kendi mantığındaydı.
Yama yoktu. Değişmezlik, değişmez olan şey kırılana kadar istediğiniz özelliktir.
Bir denetim neden bunu engellemedi
Önceki yıl bir tam Certik denetimi yaptırdık ve v1 güvenlik açığından bu yana güvenliği ciddiye aldık.
Bu bir istismar değildi. Kimse bize saldırmadı. Sözleşme, modellenmemiş koşulların bir kombinasyonu altında, yapılması yazılanı yaptı. Denetimler, kodun kötüye kullanılıp kullanılamayacağına sıkı bir şekilde bakar. Bir tasarımın kendi varsayımlarının kenarlarında mantıklı davranıp davranmadığı konusunda çok daha zayıftırlar ve bu durumun yaşandığı yer burasıdır.
Bu, bir denetimin sınırlarına dair sahip olduğumuz en net örnektir, bu yüzden o zamandan beri bu kelimeyi hiçbir zaman bir garanti olarak kullanmadık.
Ne yaptık
Yeniden başlatıldı. Daha küçük bir seçenek yoktu.
Bu, yeni bir sözleşme ve 25.000 'den fazla sahibinin taşınması anlamına geliyordu - tam olarak en az güvenilirliğe sahip olduğunuz koşullar altında gerçekleştirilen muazzam bir operasyonel girişim.
Bu aynı zamanda yeni sözleşmenin ne olması gerektiğine karar vermek anlamına geliyordu ve sade standart ERC -20 tokenomiğine transfer yolunda akıllıca bir şey olmadan gittik. Vergi tetikleyicisi yok. Bir sahip ile kendi tokenleri arasında koşullu mantık yok.

Aslında ne öğrendik
Transfer yolundaki karmaşıklık risktir. Her akıllı tokenomik mekanizma, henüz kimsenin görmediği piyasa koşullarında, her işlemde sonsuza kadar çalışan bir koddur. Zeka buna karşı yerini kazanmak zorundadır.
Değişmez, değişmez demektir . Müdahale edemediğiniz durum için tasarım yapın, çünkü elde edeceğiniz durum budur.
Topluluk, tasarım kararlarınızın maliyetini üstlenir. Sahipler kendi hatalarından dolayı kendi pozisyonlarına erişememişlerdir. Teknik açıklama ne olursa olsun, olan bu ve tuttuğumuz çerçeve bu.
Daha sonra
V2 sevk edildi, sahipleri taşındı ve 2023 'ün ilk çeyreğinde Gate.io'da alım satım devam etti. Basitleştirilmiş sözleşme o zamandan beri olaysız devam ediyor.
2022 'nin sonlarında DeHub, Palawan girişimi çöktükten ve $ 1m çekiliş minimumunu kaçırdı hemen sonra yaşadığı en kötü zorlamaydı. Üçü de bu arşivde tam uzunlukta.
Şu anda tokenomik tasarlayan herkes için
Bunun için ödeme yaptıktan sonra vereceğimiz özel tavsiyeler:
Aktarım yolundaki herhangi bir şey, amaçlanan duruma değil, en kötü duruma karşı gerekçelendirilmelidir. Bu kodun bir likidite olayı sırasında beklediğinizin 100 katında, % 1 'inde ve entegre bir sözleşme tahmin etmediğiniz bir şekilde davrandığında ne yaptığını sorun. Dördünü de cevaplayamazsanız, oraya ait değildir.
Ve bunu asla değiştiremeyeceğinizi varsayalım. Bizi kurtaracak zihinsel alıştırma basittir: bu sözleşme yarın kötü davranmaya başlarsa ve yönetici anahtarınız yoksa ne yapacağınızı yazın. Dürüstçe cevap "herkesi yeniden başlat ve taşı" ise, bu sonucu zaten kabul ettiniz — henüz planlamadınız.
DeHub'ı aç