< Basın Odasına geri dön

Geliştiriciler için SSP Wallet API — v1.15.0, SSP Connect'i tam bir entegrasyon yüzeyine dönüştürüyor

·5 dk okuma·Yazar: SSP Editorial Team
SSP marka kapağı: çip, şimşek, doğrulama kalkanı ve cüzdan simgeleri; başlık: «Geliştiriciler için SSP Wallet API».

SSP Wallet v1.15.0, dApp'ler için kapıyı genişletiyor. Sürüm, SSP Wallet API'sini her web sitesinin konuşabileceği genel amaçlı bir yüzeye dönüştürüyor: cüzdandan ihtiyaç duyduğu bilgiyi istemek, kullanıcıya sunabildiği eylemleri önermek — ve anahtarlara hiç dokunmamak. SSP Connect içindeki tek pay eylemi olarak başlayan şey artık gerçek bir entegrasyon platformuna dönüşüyor; geliştiricilerin bugün üzerine inşa edebileceği herkese açık bir spesifikasyon SSP_Wallet_API.md dosyasında bulunuyor.

Pay'den tam bir API'ye

SSP Connect'in v1.1.0 ile gelen ilk sürümü tam olarak tek bir dışa dönük eylem ekledi: pay. Bir dApp belirli bir zincirde, belirli bir adrese, belirli bir miktarda ödeme talep edebiliyor; cüzdan ise imza akışını kullanıcının iki cihazında yönetiyordu. Kapsam bilinçli olarak dardı. Sınırı kanıtladı — cüzdan imzayı tutar, dApp talep eder — ve bize gerçek dünyada sertleştirilecek bir şey verdi.

v1.15.0 bir sonraki adımı atıyor. Cüzdan, bir sitenin bir SSP kullanıcısıyla eşleşmesine, kullanıcının açıkça onayladığı seçili bilgileri okumasına ve cüzdanın desteklediği eylemleri talep etmesine imkân veren daha geniş bir API sunuyor. Model aynı kalıyor: cüzdan otoritedir, site arayandır, yeşil düğmeye basan kullanıcıdır. Yeni olan şu: yüzey artık tek bir fonksiyon değil — belgelenmiş bir arayüz.

API neyi açığa çıkarıyor

Genişletilen API, neredeyse her dApp'in bir cüzdan kullanıcısı için yararlı olabilmek için bilmesi gereken şeylere ve cüzdanın güvenlik modelinden ödün vermeden sunabileceği eylemlere odaklanıyor.

Okuma tarafında API, bir sitenin cüzdandan bağlı kullanıcının hesap kimliği, cüzdanın desteklediği zincirler ve kullanıcının bu siteyle paylaşmaya razı olduğu adresler gibi bilgileri istemesine izin veriyor. Önemli olan şu: «istemek» asla «otomatik almak» anlamına gelmez. Her okuma isteği cüzdan arayüzünde bir bildirim açar ve kullanıcı onu verebilir, daraltabilir veya reddedebilir.

Eylem tarafında API, orijinal pay akışıyla aynı sınırı korur. Cüzdandan bir işlem oluşturması, gözden geçirmesi ve birlikte imzalaması istenebilir; dApp imza malzemesini asla görmez. Çoklu imza pazarlık konusu değildir: fonlara dokunan her harcama hâlâ SSP kurulumunun iki yarısı tarafından imzalanır — tarayıcı uzantısı ve kullanıcının telefonundaki SSP Key — tıpkı elle başlatılan bir gönderim gibi. Bu akışı bir siteye atlatacak bir API çağrısı yoktur, ne de cüzdanı otomatik bir mühüre çeviren bir «oturum onayı».

Yöntemlerin tam imzaları, istek şekilleri ve olay anlambilimi SSP_Wallet_API.md spesifikasyonunda yaşıyor; entegratörler için doğruluk kaynağı orası.

Güvenlik modeli

Bir cüzdan API'si, güvenlik modeli kadar değerlidir; dolayısıyla v1.15.0'ın neyi zorunlu kıldığı konusunda açık olmaya değer.

Origin denetimleri. Her API çağrısı, isteği yapan sayfanın origin'ini taşır ve cüzdan o origin'i arayanın kimliği olarak kabul eder. İzinler origin başına kapsanır; bir siteye verilen izin, aynı tarayıcıdaki komşusuna verilen izin değildir. Kötü niyetli bir sayfa başka bir sitenin oturumunu yeniden kullanmaya çalışırsa istek, kullanıcıya ulaşmadan önce reddedilir.

Açık kullanıcı onayı. Hem okumalar hem de eylemler ilk seferinde cüzdan içinde bir bildirim ister; maddi eylemler — imza atan ya da harcayan her şey — her seferinde yeni bir bildirim ister. Cüzdan, kullanıcının daha önce bağlandığı siteler için bile işlemleri sessizce onaylamaz. dApp neyin «yeterince güvenilir» olduğuna karar veremez.

İmza yerel kalır. SSP'yi bir SSP cüzdanı yapan şey — imzanın iki cihazda yerel olarak gerçekleşmesi ve hiçbir uzaktan hizmetin imzasız ama harcanabilir bir anahtar tutmaması — değişmez. API, bir siteye cüzdandan imza istemesi için yapılandırılmış bir yol verir; siteye bunu kullanıcı olmadan elde etme ya da bir anahtarı atlatma yolu vermez.

Çoklu imza değişmezi, cüzdanın birinci gün başlatıldığı değişmezle aynıdır. API, kibarca kapıyı çalan biridir; bir maymuncuk değildir.

Onun üzerine inşa etmek

SSP_Wallet_API.md spesifikasyonu kanonik başlangıç noktasıdır. Mevcut yöntemleri, durum değiştiğinde cüzdanın yaydığı olayları ve bir dApp'in beklemesi gereken hata kodlarını anlatır. Bunu, neyin yayınlandığının tam bağlamı için v1.15.0'ın GitHub sürüm notlarıyla eşleştirin.

Diğer cüzdan ekosistemlerinden gelen geliştiriciler için model tanıdıktır: oturum tabanlı eşleşme, origin endeksli izinler, olay güdümlü durum. Farklı olan şey, eksik olandır — bir dApp'in tüm gelecekteki işlemlerini onaylayan «kapak» yok ve kullanıcının iki cihazını terk edebilecek hiçbir anahtar malzemesi yok.

SSP Connect için sırada ne var

SSP Connect artık tek bir protokol olmaktan çok, cüzdanın dışa dönük yüzeyinin üzerindeki bir şemsiyedir. Daha çok belgelenmiş yöntem, daha çok olay ve en yaygın entegrasyon kalıpları için daha keskin örnekler bekleyin. İlk hedef kriptodaki en büyük API olmak değildir: en sıkıcı API olmaktır — kelimenin en iyi anlamıyla — öngörülebilir, iyi kapsamlı ve bir sitenin cüzdandan ne isteyebileceği konusunda muhafazakâr.

Bir şey inşa ediyorsanız ve SSP ile konuşmak istiyorsanız, spesifikasyon o kapıdır.

Bu makaleyi paylaş

İlgili makaleler