Bazı Blok Zincirleri Neden İmzaladığınız İşlemleri Gizler?
Ethereum ve Solana gibi zincirler neden size boş bir çek imzalatıyor ve sektör bunu nasıl çözmeye çalışıyor?
Bir donanım cüzdanında kripto işlemini onayladığınızda iki şeyden birini yapıyorsunuz: Ya tam olarak ne olacağını açıkça gösteren bir özet okuyorsunuz, ya da ham onaltılık kod yığınını imzalayarak güveniyorsunuz. Kör imzalama, bir dijital işlemin tüm ayrıntılarını insan tarafından okunabilir bir formatta doğrulayamadığınız halde onaylama eylemidir.
2025 Şubat'ında, kör imzalama $1.5 milyar Bybit hackine katkıda bulundu; bu, tarihteki en büyük kripto hırsızlığıydı. Saldırganlar hiçbir kriptografiyi kırmadı. İnsan imzalayıcıların sıradan bir transfer ile kötü niyetli bir sözleşme yükseltmesini ayırt edememesinden faydalandılar.
Cüzdanınız size imzalamadan önce açık ve okunabilir bir özet gösterebiliyor mu, bu bir yazılım kalitesi meselesi değildir. Bu, her blok zincirinin protokol düzeyinde nasıl tasarlandığıyla ilgilidir. Bazı zincirler, işlemlerin kendilerini tanımlayacak şekilde inşa edilmiştir. Diğerleri ise kritik ayrıntıları, dışarıdan bilgi gerektiren ikili veri bloklarının içine gizler. Bu makalede, bu tasarım kararlarının büyük blok zincirlerinde nasıl ayrıştığı ve güvenliğiniz açısından ne anlama geldiği açıklanmaktadır.

Üç Kademe Çerçevesi
Açık İmzalama, bir dijital işlemin tüm ayrıntılarını güvenli bir ekranda, insan tarafından okunabilir biçimde onaylamadan önce doğrulamanızı sağlayan bir güvenlik sürecidir.
13 büyük blok zinciri ekosisteminde, açık imzalama desteği protokol mimarisine göre üç farklı kademeye ayrılır. Bu, hangi zincirlerin iyi ya da kötü olduğu ile ilgili değil; yıllar önce, güvenlik sonuçları tam anlaşılmadan yapılan tasarım tercihleriyle ilgilidir.

Kademe 1: Şeffaflık İçin Tasarlandı
Bu blok zincirleri, imzalamanın tasarımlarının doğal bir sonucu olduğunu açıkça ortaya koyar. Temel neden: Her alanın adı, türü ve tanımlı şeması olan sonlu sayıda tiplenmiş işlem yapısı kullanırlar. Bir donanım cüzdanı, onları ayrıştırmak için harici bir bilgiye ihtiyaç duymaz; işlemin kendisi ne olduğunu söyler.
The XRP Ledger belki de herhangi bir büyük zincir arasında en güçlü ve en açık imzalama örneğini sunar. İkili formatında, 50'den fazla işlem türünü belirleyen TransactionType alanı bulunur: Payment, OfferCreate, TrustSet, EscrowCreate ve daha fazlası. Her alanın tanımlı bir şeması vardır. Bir donanım cüzdanı, alıcıyı, tutarı, ücreti, notu ve işlem türüne özel tüm parametreleri harici bir bilgiye ihtiyaç duymadan gösterebilir. Mevcut ana ağ işlemlerinin neredeyse %100'ü tamamen açık şekilde imzalanabilir.
Polkadot sektördeki en teknik olarak gelişmiş açık imzalama çözümünü çalışma zamanı metadata sistemi (MetadataV14/V15) ile geliştirdi. Her işlem, palet ve çağrı indekslerine referans verir ve metadata bu indekslerin ne anlama geldiğini ve argümanların nasıl çözüleceğini tam olarak belirtir. Zorluk, tam metadatanın 200 KB'yi aşmasıdır; bu, sınırlı belleğe sahip donanım cüzdanları için fazladır.
Çözüm ise RFC-0078 (Merkleized Metadata) ile geldi; metadata'dan kriptografik bir ağaç oluşturulur, yalnızca ilgili alt küme iletilir ve dahil olma kanıtı zincir üzerinde doğrulanır. Sonuç olarak, tüm Polkadot parachain'lerinde zincir başına güncelleme gerektirmeyen tek bir Ledger uygulaması çalışır.
Cosmos, tiplenmiş mesaj mimarisi ve SIGN_MODE_TEXTUAL standardı (ADR-050) ile, işlemleri küçük ekranlara uygun insan tarafından okunabilir ekranlar olarak sunar. Coin miktarları "2 ATOM" gibi gösterilir, "2000000uatom" gibi değil. NEAR Protocol ise insan tarafından okunabilir hesap adları (örn. "alice.near") ve cüzdanın düz metin olarak gösterebileceği JSON-serileştirilmiş fonksiyon argümanları ile okunabilirliği daha da ileri taşır.
Kademe 2: Temel İşlemler İçin Uygun, Karmaşıkta Zayıf
Altı ekosistem, yerel işlemler için güçlü açık imzalama sunar; ancak akıllı sözleşmeler devreye girdiğinde ciddi şekilde zayıflar. Bitcoin bu konuda öğretici bir örnektir. UTXO modeli, ham işlemlerde giriş miktarlarının bulunmaması anlamına gelir; bir donanım cüzdanı, önceki çıktılara dair ek bilgi olmadan ücretinizi hesaplayamaz. PSBT (BIP 174) bu sorunu standart ödemeler için çözer ve tipik işlemlerin yaklaşık %90'ını kapsar; ancak Taproot script-path harcamaları ve karmaşık çoklu imza kurulumları hala opaklık yaratır.
Stellar, ikinci kademe ayrımını en net şekilde gösterir. 26 klasik işlem türü (Payment, ManageSellOffer, ChangeTrust) sabit şemalara sahiptir ve donanım cüzdanlarında net şekilde görüntülenir. Ancak 2024'te başlatılan Soroban akıllı sözleşmeleri, EVM benzeri opaklığı yeniden getirir; parametreler, yalnızca sözleşmeye özel bilgiyle çözülebilen kodlanmış ikili tipler olarak gelir ve klasik işlemler için yaklaşık %95 olan kapsama oranı, ham Soroban etkileşimlerinde neredeyse sıfıra düşer. Algorand, Cardano, Aptos ve Tezos da benzer bir yol izler: Güçlü yerel işlem desteği, karmaşık programlanabilir mantıkta önemli boşluklar.
Kademe 3: Opaklık Temelde Var
Üç ekosistem, açık imzalamayı cüzdan yazılımı ne kadar iyi olursa olsun zorlu hale getiren mimari tercihlere sahiptir. Bunun nedenini anlamak, neredeyse tüm büyük DeFi arayüzlerinde kör imzalama uyarılarının neden bulunduğunu açıklar.
Ethereum ve tüm EVM-uyumlu zincirler temel bir sorun paylaşır: ABI kodlaması kendini tanımlamaz. Bir akıllı sözleşmeyle etkileşime girdiğinizde, işlem veri alanı, fonksiyon adının ilk dört baytının hash'inden oluşan 4 baytlık bir fonksiyon seçici ve ardından 32 baytlık parçalara kodlanmış parametreler içerir. Sözleşmenin ABI JSON'u olmadan, bu tamamen onaltılık bir gürültüdür. Bu ABI zincir üzerinde saklanmaz. Bir donanım cüzdanı, 0xa9059cbb...'nin "1.000 USDC'yi 0xABC...'ye gönder" anlamına geldiğini harici metadata olmadan bilemez.
Proxy sözleşmeleri, yürütmeyi adresi değişebilen uygulama sözleşmelerine yönlendirerek sorunu daha da karmaşıklaştırır; Bybit hack'i tam da bu şekilde gerçekleştirildi.
Sektörün buna yanıtı ERC-7730 oldu; 2024'te oluşturulan bu metadata standardı, belirli sözleşme etkileşimlerinin nasıl çözüleceğini ve görüntüleneceğini tanımlayan JSON dosyaları sağlar. Çalışır, ancak her etkileşimde bulunabileceğiniz sözleşme için birinin bu metadata dosyasını yazıp güncel tutması gerekir. Temelde, şeffaflık için tasarlanmamış bir mimariye uygulanan bir yamadır.
Solana ise belki de daha zorludur. İşlem talimatları, bir program kimliği ve standartlaşmamış bir ABI ile tanımsız bir bayt dizisi içerir; her program kendi serileştirme formatını belirler. Anchor framework'ü 8 baytlık ayırt edicilerle yarı-standart bir yaklaşım sunar; ancak birçok program Anchor kullanmaz ve arayüz tanımlarını halka açık şekilde yayınlamaz. DeFi işlemlerinde, Solana'nın işlem hacminin çoğu kör imzalama gerektirir.
TON, asenkron yürütme ile daha da karmaşık hale gelir: Sadece ilk mesajı imzalarsınız ve sonraki bloklarda gerçekleşen her şey imzalama anında görünmezdir.
Çıkarımlar
En pratik çıkarım: DeFi için bir donanım cüzdanı kullanmadan önce zincirinizin hangi kademede olduğunu bilin. Kademe 1 zincirlerinde açık imzalama beklendiği gibi çalışır. Kademe 2'de, basit transferleri güvenle imzalayabilirsiniz; ancak karmaşık akıllı sözleşme işlemlerinde mutlaka araştırma yapmalısınız. Kademe 3'te ise, bir DeFi protokolünde yapılan her işlemi ekstra şüpheyle değerlendirin ve onaylamadan önce dApp ve cüzdan kombinasyonunun ERC-7730 metadata desteği olup olmadığını kontrol edin.
Donanım cüzdanı üreticileri bu konuda aktif olarak çalışıyor. Ledger'ın Generic Parser'ı ERC-7730 metadata dosyalarını okuyup işlem ayrıntılarını güvenli ekranda gösteriyor.
Polkadot'un Merkleized Metadata yaklaşımı ise sektördeki en zarif çözüm olarak öne çıkıyor: güvene dayalı olmayan, kriptografik olarak doğrulanabilir ve protokol-yerel. Sektör daha iyi standartlara doğru ilerliyor; ancak Kademe 3 zincirlerinin temel protokol kısıtları ortadan kalkmayacak.
En basit kural: Cüzdanınız size bir hash veya bir dizi hex bayt gösterip imzalamanızı istiyorsa, bunu bir uyarı işareti olarak değerlendirin.
Kaynaklar ve Daha Fazlası
Bu kaynaklar, makalede ele alınan protokol ve standartlarla ilgili teknik derinlik sunar.
EVM açık imzalama metadata standardı | |
Bitcoin kısmi işlem imzalama | |
Polkadot güvene dayalı olmayan açık imzalama | |
Cosmos insan tarafından okunabilir imzalama | |
İnsan tarafından okunabilir hesap tanımlayıcıları | |
XRP tiplenmiş işlem şemaları | |
Zincir dışı tiplenmiş veri imzalama standardı | |
Polkadot/Substrate metadata sistemi | |
Topluluk metadata katkıları | |
Algorand akıllı sözleşme ABI |
FAQ
-
Açık imzalama, donanım cüzdanınızın size onaylamadan önce güvenilir ekranında alıcı adresi, token miktarı, ağ ücreti ve yetkilendirdiğiniz işlemi insan tarafından okunabilir şekilde göstermesidir. Kör imzalama ise cüzdanın size yorumlayamayacağınız kodlanmış ikili veriyi (genellikle bir hex dizesi) göstermesi ve bunu güvenerek onaylamanızdır. Güvenlik riski, ele geçirilmiş bir uygulamanın ekranda size bir şey gösterirken imzanızı tamamen farklı bir işleme yönlendirebilmesidir.
-
Her zaman değil, ancak risk gerçektir. Sıradan ETH transferlerinde donanım cüzdanınız genellikle alıcı ve tutarı net şekilde gösterebilir. Ancak opaklık sorunu, akıllı sözleşmelerle etkileşimde başlar; token takası, likidite sağlama, izin onaylama gibi işlemlerde. Bu tür işlemlerde, net bir ekran görüp görmeyeceğiniz, ilgili dApp ve cüzdan kombinasyonunun ERC-7730 metadata desteği olup olmamasına bağlıdır. Yoksa, kör imzalama yapıyorsunuz demektir.
-
Protokol tasarımı, bazı ödünleşimleri gerektirir. Ethereum'un esnek ABI sistemi, XRP Ledger gibi daha kısıtlı zincirlerde mümkün olmayan zengin bir DeFi uygulama ekosistemine olanak tanır. Bu esneklik, kendini tanımlayan işlemlerden feragat anlamına gelir. Bunu geriye dönük olarak değiştirmek, binlerce akıllı sözleşmenin uyumluluğunu bozardı. ERC-7730 metadata yaklaşımı ve EIP-712 gibi çabalar, mevcut mimari içinde pratik iyileştirmeler sunar; tam bir protokol yeniden tasarımı değildir.
-
ERC-7730, donanım cüzdanlarına belirli akıllı sözleşme etkileşimlerinin nasıl çözüleceğini ve görüntüleneceğini anlatan, 2024'te oluşturulmuş bir JSON metadata standardıdır. Bir protokol ekibi, sözleşme fonksiyonlarının ham ABI kodlamasını insan tarafından okunabilir etiket ve formatlara eşleyen bir metadata dosyası gönderebilir.
-
Evet, anlamlı şekilde daha güvenlidir. Donanım cüzdanı açık bir özet yerine kodlanmış veri gösterse bile, özel anahtar güvenli unsurdan asla çıkmaz ve imzalama kararı izole donanımda gerçekleşir. Ele geçirilmiş bir bilgisayar anahtarınızı elde edemez. Donanım cüzdanında kör imzalamanın riski, anlamadığınız bir işlemi onaylayabilmenizdir; ancak anahtarınız yine de güvende kalır. Yazılım cüzdanlarında ise hem onayınız hem de yazılım ele geçirilirse anahtarınız tehlikeye girebilir.