DIDs (Part II): Blockstack

Crypto-Logisch by Severin Schell

DIDs (Part II): Blockstack

Disclamer: Die hier beschriebenen Analysen habe ich selbst verfasst und stellen meine persönliche Meinung dar, sollten jedoch einige Fakten oder Annahmen fehlerhaft oder gar gänzlich falsch sein, freue ich mich über ein Kommentar oder eine E-Mail mit entsprechenden Gegenbeweisen – Ich werde der Sache nachgehen und etwaige Unstimmigkeiten korrigieren.

Name:Blockstack
Homepage:https://blockstack.org/
Verwendete Ledger-Technologie:noch nicht näher spezifiziert
Issuer (Herausgeber) der „DIDs“Jeder Nutzer der die Gebühr auf dem Netzwerk
zahlt

(Der Artikel nimmt Bezug auf das Whitpaper von Blockstack, zu finden hier: Whitepaper und hier als Mirror mit dem zum Zeitpunkt der Artikel-Veröffentlichung bestehenden Inhalt)

Blockstack ist ein Projekt das sich zum Ziel gesetzt hat, dass Internet – so wie wir es heute kennen vollständig zu dezentralisieren. Eine wirklich gute und künftig in meinen Augen sehr nützliche Idee. Leider sehe ich in der Implementierung, so wie sie im Whitepaper beschrieben wird, noch einige Probleme.

Zugrunde liegt dem ganzen (wie könnte es anders sein ^^) eine Blockchain (welche, wird nicht näher spezifiziert – daraus resultierende Probleme später).

In dieser Blockchain werden in „Blockchain-speicherbarer Form“ (Transaktionen) Namensregistrierungen (wie bspw. Crypto-Logisch.com) abgelegt. Dies wird (von Blockstack) als Layer 1 bezeichnet.

Darüber liegt der Layer 2, die Software-Umgebung welche der End-User benutzt, stellen wir uns am besten einen Browser vor. Tippt nun ein User meine URL ein, so wird dieser String (die Zeichenfolge „Crypto-Logisch.com“) nicht wie im heutigen Internet an den DNS (DomainNameServer), sondern an die Interne Datenbank der Blockstack Software gesendet (im Whitepaper bezeichnet als BNS). Diese enthält (kontinuierlich über den Stream an neuen Blöcken der Blockchain – geparst (also von „Blockchain-speicherbarer Form“ zurück in Menschen lesbare Form gewandelt) ein Abbild des kompletten weltweiten Adressraumes. Die Anfrage – in unserem Beispiel Crypto-Logisch.com gibt nun dort einen Output aus, welcher auf mehrere Speicherorte des Inhaltes (in meinem Fall, meine Webseite) verweist, sowie einen Hash der zur Verifikation, der Richtigkeit des Inhalts dient.

Mit dieser Information versucht nun der „Browser“ des End-Users die angeforderte Information von den angegeben Quellen (Layer 3) abzurufen (angegeben sind im Whitepaper Amazon S3, Dropbox, Microsoft Azure, FreeNAS Server und Google Drive), die dort erhaltenen Daten gleicht die Software dann noch mit dem Hash ab und liefert diese anschließend an den User aus – d.h. Jetzt würde die Website angezeigt werden.

Probleme:

  • Das System funktioniert nicht ohne das alte DNS System, welches es ja ablösen möchte, da es zum letztlichen  Ausliefern der Daten auf dieses zurückgreift.
  • Das Systeme kann nur mit statischem Content umgehen, bzw. Es muss bei jeder Änderung von Daten im Content, der hinterlegte Hash angepasst werden, was eine neue Transaktion mit entsprechenden Gebühren nach sich zieht.
  • Das System muss für jede Unter-Seite, jeden Link etc. eine eigene Transaktion haben, alleine mein Blog würde stand heute schon weit über 100 Transaktionen beinhalten, wenn man alle Änderungen berücka
  • Mit zunehmender Größe des Netzwerkes wächst auch die Größe der lokalen geparsten Datei und auch die Durchsuchungs-Dauer für diese lokale Datenbank steigt im gleichen Maße (Google wird nicht umsonst nicht nur mit einem Raspberry Pi in Mountain View betrieben)
  • Die Blockchain ist wie in meinen vorherigen Artikeln beschrieben ein wichtiger Faktor, der Maßgeblich dafür sein wird wie sicher und integitär die Daten für dieses BNS verwahrt werden und wie Vertrauenswürdig, sicher und verlässlich diese sind (siehe hierzu auch diese beiden Artikel > Blockchain)

Im Grunde genommen ist das „BNS“ getaufte System ein nicht standart konformes DID System, bzw. es versucht seinen eigenen Standart (Link und Hash) durchzusetzen, anstatt das DID System besser kompatibel zum machen und bspw. W3C Konform zu gestalten. Abschließend kann man an die Entwickler von Blockstack nur appelieren, das ein dezentrales direkt eingebundenes P2P-Storage System, sowie eine Möglichkeit der vertrauenswürdigen Auslagerung von Rechen und speicherintensiven Prozessen notwendig ist um das Produkt letztlich mehr als nur eine an DNS angeflanschte unnötige „Irgendwas mit Blockchain“ Lösung werden zu lassen. Aber das Ziel ist  gut =).

In diesem Sinne: Keep the spirit!

Tags: , , , , , ,