DIDComm v2 ve v1
DIDComm hakkında bulacağınız metinlerin çoğu v1'i anlatır ve v2 onunla uyumlu değildir. Pratik başlık budur ve bu sayfanın geri kalanı, belge aramaya çıktığınızda bunun neden önemli olduğudur.
Bu sayfanın çözmek için var olduğu problem
"DIDComm" diye arayın, on yıllık malzeme bulursunuz ve çoğu aynı ad altında v1'i tarif eder. Yetkili görünen kod örnekleri bir v2 uç noktasına karşı çalışmaz ve arıza her zaman gürültülü de değildir; bazen hiç kimse için çözülmeyen, makul görünen bir zarf elde edersiniz.
Herhangi bir öğreticiye güvenmeden önce accept alanını kontrol edin. Bizimki bunu açıkça söyler:
curl -s https://relay.solidus.network/invite | jq -r '.body.accept[]'
# didcomm/v2
Gerçekte ne değişti
- Zarf biçimi. v2, JOSE üzerinde standartlaşır: şifreleme için JWE, mesaj yapısı için JWM. v1, Aries soyundan gelen kendi paketleme biçimlerini kullanıyordu. Önem taşıyan uyumsuzluk budur: zarflar karşılıklı olarak ayrıştırılabilir değildir.
- Mesaj adresleme. v2 mesajları, daha önce kurulmuş bağlantı durumuna dayanmak yerine tanımlı bir
başlık kümesinde açık
fromvetotaşır. Bir v2 mesajı daha çok kendini tarif eder. - Bağlantı modeli. v1, önce ikili bir ilişki kuran durum bilgili bir bağlantı protokolüne yaslanıyordu. v2, bant dışı davetler artı DID belgelerine yaslanır: nereye göndereceğinizi çözümler ve gönderirsiniz. Bkz. bant dışı davetler.
- Protokol tanımlayıcıları. v2 protokolleri URI ile adlandırılır
(
https://didcomm.org/out-of-band/2.0/invitation, ki bu tam olarak bizim davetimizintypealanının içerdiği şeydir). v1,did:sov:…;spec/…tanımlayıcılarını kullanıyordu. Mesajıntypealanı hangi kuşağa baktığınızı söyler, internette bulduğunuz bir örneği hızlıca ayıklamanın yolu. - Yönlendirme. v2'nin
forwardveroutingKeysyapısı, forward mesajı ve yönlendirme anahtarları sayfasında tarif edilen aracılık mekanizmasıdır. v1'de de yönlendirme vardı, ama aracıların şu anda üzerinde standartlaştığı şey v2 biçimidir.
Ne değişmedi
Öncül. İki sürüm de, iki ajanın araya bir platform girmeden uçtan uca şifreli ve kimliği doğrulanmış mesajlar alışverişi yapmasını sağlamak için vardır: DID ile tanımlanmış, taşıma katmanından bağımsız ve eşzamansız. v2, farklı bir fikir değil, aynı fikrin daha temiz bir uygulamasıdır.
Hangisinin üzerine inşa etmeli
v2. Aracı ekosistemi, güncel kütüphaneler ve etkin şartname çalışmasının hepsi v2'dir. v1'e dokunmanın sebebi, birlikte çalışmak zorunda olduğunuz mevcut bir dağıtımdır ve o durumda çeviren bir köprü bir yapılandırma anahtarı değil bir projedir.
Bu, özellikle Solidus Relay için ne anlama geliyor
didcomm/v2duyurur ve başka hiçbir şeyi duyurmaz.- Onun üzerinde Coordinate Mediation 2.0 ve Pickup Protocol 3.0 uygular.
- Bağımsız bir DIDComm uygunluk paketine karşı çalıştırılmamıştır, dolayısıyla iddia "uygular"dır ve "uygundur" değildir. Belirli bir satıcının v2 ajanıyla birlikte çalışabilirlik sizin için yük taşıyorsa, ona bağımlı olmadan önce test edin.
Sürüm uyumluluğu bir mahremiyet özelliği değildir. v2'de olmak, aracının trafiğinizi yönlendirirken neyi gözlemlediği hakkında hiçbir şey söylemez: o, bir aracının görebildikleri ve göremedikleri sayfasıdır ve gerçek bir şey yönlendirmeden önce okumaya değer.