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

Bir did:solidus Belgesinin Anatomisi: Her Alan Açıklanmış ve Standart Bir Kitaplığın Beklediği Biçim Olmadığı Üç Yer

Belge, zincirden

Tek bir çağrı her şeyi döndürüyor, hesap ve anahtar olmadan:

did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J ile solidus_didResolve

Geri gelen tek bir nesnedir. Bu sayfanın geri kalanı, onun her parçasının ne işe yaradığıdır.

Kimlik parçaları

id tanımlayıcının kendisidir ve belgedeki diğer her beyanın öznesidir.

controller onu kimin değiştirebileceğidir. Bu belgede denetleyici öznenin kendisidir, ki egemen durumdur: başka kimse onu yeniden yazamaz.

verification_method anahtarların listesidir. Her girdinin bir parçayla biten kendi tanımlayıcısı, algoritmayı adlandıran bir türü, o anahtarın denetleyicisi ve anahtar malzemesinin kendisi var.

Beş ilişki ve neden beş tane olduğu

Bir anahtar her şey için güvenilir sayılmıyor. Belge, hangi anahtarların şunları yapabileceğini ayrı ayrı listeliyor:

özne olarak kimlik doğrulamak iddia öne sürmek, ki bir kimlik bilgisini imzalayan budur şifreleme için anahtar uzlaşmak bir yeterlilik çağırmak bir tanesini devretmek

Bu zincirde beşi de mevcut ve dolu, kimlik doğrulamayı listeleyip gerisini üstü kapalı bırakan yaygın kısayol yerine. key_agreement açık bir boş liste olarak geri geliyor, ki bu "belirtilmemiş" değil "hiçbiri" diyor ve bunlar farklı beyanlardır.

Belge olmayan parçalar

active, created_ms, updated_ms, version_id, recovery_policy ve recovery_nonce gerisinin yanında duruyor.

Çözümleme modelinde bunlar belgenin alanları değil belge hakkında üstveridir ve ayrı bir üstveri nesnesine aitler. Burada satır içinde geliyorlar.

Pratik sonuç küçük ve gerçektir: bu nesneyi doğrudan standart bir işleyiciye veren bir tüketici, ona o modelin tanımlamadığı özellikler veriyordur.

Alan adları düğümün, standardın değil

Uç nokta context, verification_method, assertion_method, key_agreement, capability_invocation ve capability_delegation yayıyor. Standardın özellik adları deve harfli biçimlerdir ve ilkinin bir ön eki vardır.

Yani doğrudan bir çağrıdan aldığınız şey, standart bir çözümleyici kitaplığının okuyacağı bir belge değildir. Hiçbir doğrulama yöntemi bulamayacak, çünkü aradığı özellik orada değil.

Solidus istemci kitaplığı dönüşümü yapıyor ve düzgün yapıyor: ön ekli bağlamı iki girdiyle yayıyor, her ilişkiyi yeniden adlandırıyor ve zaman damgalarını tarihlere çeviriyor.

Ki bu, uygunluğun telde değil kitaplıkta yaşadığı anlamına geliyor. O kitaplık olmadan bütünleşen herkesin bunu bilmesi gerekiyor ve yanıttaki hiçbir şey onlara söylemiyor.

Ve anahtar kodlamasının ön eki eksik

Dönüşüm anahtarı bir çok tabanlı değer olarak işliyor, ki standardın tercih ettiği biçimdir.

Ham anahtar baytlarını base58 ile kodluyor ve sonucun önüne z koyuyor. Bu anahtar türü için uygunluk taşıyan bir değer, anahtar baytlarından önce iki baytlık bir kodlayıcı tanımlayıcısı taşır ve o tanımlayıcı, bu türdeki uygunluk taşıyan her anahtarın z6Mk ile başlamasının sebebidir.

Bizimki başlamıyor. Aynı anahtarı tek bir komutta iki yöntemle de kodlamak:

bizimki: z62rYKgP5rhiNcQGY1b4p6PPr72WErY7MspPAbgwNxN9R uygunluk taşıyan: z6MkjV7auvdXCFCqiu7EhA2ewUwqvbn6GRMiZqJ6RxuPsavo

Bu, yayımlanmış pakettedir, kendi kaynağımızı okuyarak değil onu açık sicilden boş bir dizine indirerek doğrulandı.

Açığa değil kapalıya doğru arızalanıyor. Standart bir kitaplık ya değeri reddediyor ya da gerçek bir anahtarın ilk iki baytını kodlayıcı tanımlayıcısı sanıp hiçbir şeyi doğrulamayan bir anahtar elde ediyor. Reddetmesi gereken hiçbir şeyi kabul etmiyor ve bu sayfa bir imza taklit etme yolunu tarif etmiyor.

Maliyet, tam olarak merkeziyetsiz bir tanımlayıcının var olma sebebidir. Yalnızca kendi kodumuzun okuyabildiği bir anahtar, seyahat etmeyen bir anahtardır.

Bunu ne değiştirirdi

Üçü de küçük düzenlemeler, bir zor kısımla. Özellik adları ve üstveri ayrımı, yanıtta bir serileştirme değişikliğidir ve mevcut yazıma dışarıdan hiçbir şey bağlı değil, onları zaten yeniden adlandıran kendi kitaplığımız hariç.

Maliyeti olan anahtar kodlamasıdır, çünkü mevcut kodlamayla çoktan yayımlanmış bir değer yeni kodlamayla çözülmeyecek. Dürüst yol, ön ekli biçimi yaymak, okurken ikisini de kabul etmek ve eski biçimin ne zaman kabul edilmeyi bırakacağını söylemektir, ki bu bir kesme günü değil bir uyumluluk penceresidir.

Bunların hiçbiri programlanmış değil ve bu sayfa öyleymiş gibi ima etmeyecek. Dosyalandı.

Burada gerçekten doğru olan şey

Beş ilişki, üstü kapalı değil dolu. Cevabın hiçbiri olduğu yerde açık bir boş liste. Bir service dizisi, burada boş, dolayısıyla biçim uç noktalar için hazır.

Bir içerik özeti sürüm tanımlayıcısı, ki standardın kendi sürüm fikridir ve köken değil bir öz kontroldür.

Ve zincir üstünde modellenmiş bir kurtarma politikası, bir alan olarak mevcut ve bir sahip belirleyene kadar boş, dolayısıyla kurtarma bir destek süreci değil kaydın bir özelliğidir.

Standart iddiasının gerçekte nerede durduğu

Yöntem W3C DID Method Registry içinde kayıtlıdır, ki bu bir listelemedir ve tek bir istekte kontrol edilebilir. Bir listeleme bir uygunluk testi değildir ve yukarıdaki üç bulgu, bir uygunluk testinin ne için olduğudur.

Kendiniz neyi kontrol edebilirsiniz

herhangi bir tanımlayıcıyı çözümleyin, sonra yanıttaki anahtar adlarına bakın

Kaçının standardın yazımı olduğunu sayın. Sonra kitaplığımızdan bir publicKeyMultibase alın ve z6Mk ile başlayıp başlamadığını kontrol edin.

Okumaya devam edin

Bir did:solidus Belgesinin Anatomisi: Her Alan Açıklanmış ve Standart Bir Kitaplığın Beklediği Biçim Olmadığı Üç Yer · Solidus — Solidus Explorer