KESİNLİK
BLOK YÜKSEKLİĞİ
AKTİF DOĞRULAYICILAR

Bir Kimlik Çıpası Neden Asla Değer Tutamaz ya da Gönderemez

Ulusal bir araştırma kurumundaki bir kriptograf, zinciri incelerken bunu açıkça söyledi: "DID'nizi çözüp bütün ödeme geçmişinizi okuyabilirim." Varsayılması makul bir şey; çoğu blokzincir tanımlayıcısı aynı zamanda bir adrestir ve çoğu adres değer tutar, dolayısıyla bir kimlik zinciri ilk bakışta fazladan üstverisi olan bir harcama defteri gibi görünür. Cevap bir politika ya da bir söz değildi. Bir uzlaşma kuralı olarak sevk edildi: Solidus'ta kayıtlı bir DID çıpası yapısal olarak değer tutamaz ya da hareket ettiremez ve bunu şu anda, gerçek bir tanesine karşı kendiniz kontrol edebilirsiniz.

Kural, bir mekanizma olarak belirtilmiş

Her did:solidus kimliği, hiç işlem imzalamamış bir anahtarla demirlenir. Bu bir adlandırma geleneği değil, zincirin oluşturma anında kontrol ettiği girdidir: ona önceden herhangi bir işlem geçmişi olan bir anahtar verin ve çıpa oluşturmanın kendisi başarısız olur. Kuralın diğer yarısı defterin öbür tarafında, yürütücüde yaşar: kayıtlı bir kimlik çıpasını gönderen ya da alıcı olarak adlandıran her Transfer talimatı, durumu değiştirmeden önce reddedilir. İnceleme için işaretlenmez, bir uyum kontrolü için kuyruğa alınmaz, şüpheli etkinlik izleyen zincir dışı bir gözlemci tarafından yakalanmaz; reddedilir, hem de aksi hâlde transferi uygulayacak olan aynı yürütme geçişinde, zincirdeki diğer her işlemi doğrulayan aynı kod yolunda. Yanlış yapılandırılabilecek ya da atlanabilecek, üstüne cıvatalanmış ayrı bir "kimlik güvenlik duvarı" yoktur. Çıpa bir DID Belgesi tutmak için vardır ve başka hiçbir şey için; yürütücü o sınırı, diğer her işlem kuralını uyguladığı şekilde, aynı katmanda, aynı kodla uygular.

Bu önemlidir, çünkü iki yarı birbirini pekiştirir. Hiç kullanılmamış bir anahtar, bir çıpanın bir bakiyeyle gelmemesi demektir. Yürütücünün reddetme kuralı, sonradan da asla bir bakiye edinememesi demektir. Değer ayrımı, çıpanın şimdiye kadar nasıl kullanıldığının bir özelliği değildir: zincirin ona ne olmasına izin vereceğinin bir özelliğidir; her tekil işlemde, sonsuza kadar kontrol edilir.

Canlı kanıt

curl -X POST https://rpc.solidus.network \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "solidus_getBalance",
    "params": ["46Hzv2Ek4MXwj1Kenvix4tWCPr1J"],
    "id": 1
  }'
{"jsonrpc":"2.0","id":1,"result":0}

Bakiye: sıfır. "Bu adrese henüz bir şey olmadığı için sıfır" değil; ona hiçbir şey olamayacağı için sıfır. Aynısı ücretler için de geçerlidir: bu çıpa bütün ömrü boyunca 0 işlem ücreti ödemiştir, bakiye tutmamasıyla aynı yapısal sebeple: hiçbir zaman değer taşıyan bir işleme taraf olmadı, çünkü yürütücü buna izin vermiyor. Farklı bir kayıtlı çıpa seçin, sayılar her seferinde aynı sebeple eşleşecektir.

Neden "imkânsız" ya da "denetlendi" değil de "uzlaşma kuralı"

Bu iddianın ne olduğu ve ne olmadığı konusunda kesin olmaya değer, çünkü tek başına alıntılanan türden bir cümledir. Bu, bir uzlaşma kuralıyla uygulanır; zincirin yürütme mantığının içinde belirli ve kontrol edilebilir bir koşul: kayıtlı bir çıpaya dokunan bir Transfer yürütücüde başarısız olur. Bir biçimsel doğrulama sonucu değildir. Hiç kimse, hiçbir kod yolunun değeri bir çıpaya asla yönlendiremeyeceğine dair matematiksel bir kanıt üretmedi. Ne olduğu: gerçek bir zincirde, çalıştırması on saniye süren bir komutla etkisini okuyabileceğiniz bir kural. Bu "imkânsız"dan daha dar bir iddiadır ve doğru olan da budur.

Bir DID'nin zincir üstü geçmişini okuyorsanız bu ne anlama geliyor

Bir kimlik kaydıyla bir harcama kaydının gizlice aynı belge olmasından hiç endişelenmiş olan herkes için pratik sürümü: Solidus'ta, yapısı gereği değiller. Bir kimlik çıpasının zincir üstü izi, yani oluşturma, anahtar döndürme, kimlik bilgisi ihracı ve iptali, asla bir finansal iz hâline gelemez, çünkü zincirin kendisi değerin o adrese dokunmasını reddeder. Birinin DID'sini okumak size onun kimlik iddiaları hakkında bilgi verir. Ne satın aldığını, kimden ya da kaça aldığını söyleyemez, çünkü o bilginin en baştan o adreste var olmasına hiç izin verilmedi. Mahremiyet koruyan bir kimlik katmanını değerlendiren bir uyum sorumlusu için hatırlanmaya değer tek cümle budur: birinin kim olduğunun zincir üstü kaydı, asla ne harcadığının zincir üstü kaydı hâline gelemez.

Kendiniz çalıştırın

Yukarıdaki sıfırı inanca dayandırmayın; henüz yapmadıysanız önce bir DID çözümleyin (bkz. Bir DID'yi Kendiniz Çözümleyin), çıpa adresini çekin ve solidus_getBalance çağrısını farklı bir kayıtlı çıpaya karşı çalıştırın. Aynı sonucu alacaksınız. Ve bir Solidus zincirinin bir kimlik için zincir üstünde bulmanıza izin verdiği şeyleri, yani kimlik bilgisi durumunu, iptali, kasten görünür olan şeyleri görmek isterseniz, eşlik eden sayfa Doğrulanabilir Bir Kimlik Bilgisi İçin Zincir Üstünde Ne Var sayfasıdır. Bu sayfa bir çıpadan yapısal olarak eksik olan hakkındadır; o sayfa bir kimlik bilgisi için yapısal olarak mevcut olan hakkında. Birlikte okunduğunda, bir yabancının Solidus'u izleyerek neyi öğrenebileceğinin ve neyi öğrenemeyeceğinin dürüst haritasıdırlar.

Kural gerçektir ve bugün çalışıyor; çekinceler de gerçektir.

Okumaya devam edin

Bir Kimlik Çıpası Neden Asla Değer Tutamaz ya da Gönderemez · Solidus — Solidus Explorer