To jest opinia redakcyjna Shinobi, samouka w przestrzeni Bitcoin i zorientowanego na technologię gospodarza podcastów Bitcoin.
Sugeruję, abyś przed przeczytaniem tego przeczytał poprzedni artykuł, który napisałem wyjaśniając, czym jest Nostr i jak działa na wysokim poziomie. W tym momencie powinieneś mieć dobry pomysł na podstawowy projekt systemu, więc teraz przyjrzyjmy się prawdopodobnym problemom, które pojawią się w miarę jego wzrostu. Z platformą staje się popularny wśród społeczności Bitcoin, należy być świadomym tych problemów.
Jak omówiłem w poprzednim artykule, pary kluczy publiczny/prywatny użytkownika są integralną częścią sposobu, w jaki Nostr działa jako protokół. Nie ma żadnych nazw użytkowników ani żadnych typów identyfikatorów, nad którymi serwer przekazujący ma kontrolę, które można by powiązać z poszczególnymi użytkownikami. To po prostu klucze tych użytkowników są całkowicie pod ich kontrolą.
Funkcjonuje to jako ścisłe powiązanie między rzeczywistym użytkownikiem a sposobem, w jaki są identyfikowani przez innych, co uniemożliwia serwerowi przekazującemu rozłączenie tych dwóch rzeczy, tj. przekazanie czyjegoś identyfikatora innemu użytkownikowi. Rozwiązuje to jeden z największych fundamentalnych problemów platform służących do komunikacji między ludźmi: brak kontroli nad własną tożsamością użytkowników. Ale wprowadza również wszystkie problemy związane z zarządzaniem kluczami, na które napotyka ktoś posiadający klucz prywatny. Klucze mogą zostać zgubione, a klucze mogą zostać naruszone, a gdyby takie zdarzenie miało miejsce, użytkownicy nie mają nikogo, do kogo mogliby zwrócić się o pomoc, podobnie jak w przypadku Bitcoin. Nie ma obsługi klienta, aby cokolwiek odzyskać. Stracisz to, to wszystko.
Nieuchronnie będzie to wymagało schematu umożliwiającego użytkownikom rotację z jednej pary kluczy do drugiej w sposób możliwy do zweryfikowania i wykrycia przez innych użytkowników, z którymi wchodzą w interakcje za pośrednictwem protokołu. Cały protokół opiera się na udowodnieniu, że zdarzenie pochodzi od określonego użytkownika (klucz tożsamości), więc wszystkie te gwarancje znikają, gdy czyjeś klucze zostaną naruszone.
Jak sobie z tym radzisz? Po prostu sprawdzić ich konto na Twitterze? Cóż, ostatecznie nie jest to bardzo zdecentralizowany system, jeśli potrzebujesz użyć scentralizowanej platformy, na której nie kontrolują swojej tożsamości, aby zweryfikować swoją tożsamość Nostr.
Czy inni użytkownicy potwierdzają autentyczność nowego klucza? Nie odnosi się to do sytuacji, takich jak kompromisy klucza masowego lub nieznajomość kogoś bliskiego na tyle dobrze, aby zaufać ich atestom.
Nostr potrzebuje rzeczywistego schematu kryptograficznego wiążącego rotację jednego klucza z drugim. Tam jest propozycja dewelopera fiatjaf dla podstawowego schematu, który mógłby potencjalnie rozwiązać ten problem. Podstawową ideą byłoby wzięcie długiego zestawu adresów pochodzących z pojedynczego głównego źródła i utworzenie zestawu „ulepszonych” kluczy, podobnie jak drzewa Taproot są przypisane do klucza Bitcoin. Taproot pobiera korzeń drzewa Merkle z drzewa Taproot i „dodaje” go do klucza publicznego, aby utworzyć nowy klucz publiczny. Można to powtórzyć, dodając ten korzeń drzewa Merkle do klucza prywatnego w celu uzyskania pasującego klucza prywatnego dla nowego klucza publicznego. Pomysł Fiatjaf polega na łańcuchu zobowiązań idących wstecz od końca do początku, tak aby każdy poprawiony klucz faktycznie zawierał dowód, że następny poprawiony klucz został użyty do jego utworzenia.
Wyobraź sobie więc, że zaczynasz od klucza Z, ostatniego w łańcuchu. Zmieniłbyś to za pomocą czegoś, a następnie cofnąłbyś się i utworzył poprawioną wersję klucza Y za pomocą zmodyfikowanego klawisza Z (Z '+ Y = Y'). Stąd wziąłbyś Y', a następnie użyłbyś go do poprawienia X (Y' + X = X'). Zrobiłbyś to aż do klucza A, aby uzyskać A', a stamtąd zacząć używać tego klucza. Gdy zostanie naruszony, użytkownik może rozgłaszać zdarzenie zawierające nieosłonięty klucz A i poprawiony klucz B'. Zawierałoby to wszystkie dane potrzebne do wykazania, że B' zostało użyte do wygenerowania A', a użytkownicy mogliby natychmiast przestać śledzić A' i zamiast tego podążać za B'. Wiedzieliby definitywnie, że B' to następny klucz tego użytkownika i zamiast tego podążaliby za tym.
Ta propozycja wciąż ma jednak pewne problemy. Po pierwsze, musisz wcześniej wygenerować wszystkie klucze, których kiedykolwiek użyłbyś, i nie ma możliwości obrócenia się do zupełnie nowego zestawu kluczy. Można temu zaradzić, decydując się na klucz główny w tym schemacie, który mógłby notarialnie potwierdzać takie rotacje, lub po prostu generując bardzo duży zestaw kluczy od samego początku. Każda ścieżka byłaby słuszna, ale ostatecznie wymagałaby bezpiecznego przechowywania klucza głównego lub materiału klucza i udostępniania tylko pojedynczych skrótów klawiszowych klientom Nostr.
Jednak ten schemat nie chroni użytkowników ani nie oferuje mechanizmu odzyskiwania tożsamości w przypadku utraty materiału klucza głównego lub jego naruszenia. Nie oznacza to, że schemat fiatjafa nie przynosi żadnych korzyści, absolutnie tak, ale ważne jest, aby podkreślić, że żadne rozwiązanie nie rozwiązuje każdego problemu.
Aby porozwodzić się trochę nad potencjalnymi rozwiązaniami tutaj, wyobraź sobie zamiast łańcucha ulepszonych kluczy, jak proponuje, że klucz jest ulepszony za pomocą głównego zimnego klucza, który musi być również używany do podpisywania zdarzenia obracającego się od jednego klucza do drugiego. Masz klucz A', który jest uzyskiwany przez dodanie A i M (klucz główny), a zdarzenie rotacji to A, M i B' (wygenerowane przez dodanie B i M) z podpisem z M. M może być klucz progowy multisig — dwa z trzech, trzy z pięciu itd. Może to potencjalnie zwiększyć redundancję przed utratą, a także zapewnić bezpieczny mechanizm rotacji kluczy. Otwiera to również drzwi do korzystania z usług w celu pomocy w odzyskaniu zdrowia lub rozpowszechniania niektórych z tych kluczy wśród zaufanych przyjaciół. Oferuje taką samą elastyczność, jak multisig z samym Bitcoinem.
PIN26 jest również propozycją, która może być bardzo przydatna w rozwiązaniu tego problemu. Określa rozszerzenie protokołu do zdarzeń, które umożliwia podpis z jednego klucza w celu autoryzacji innego klucza do publikowania zdarzeń w jego imieniu. „Token” lub podpis potwierdzający delegację byłby wówczas dołączany do wszystkich zdarzeń publikowanych przez drugi klucz publiczny w imieniu pierwszego. Może być nawet ograniczony czasowo, aby tokeny delegacji automatycznie wygasały i musiały zostać odnowione.
Ostatecznie jednak zostaje rozwiązany ten problem ma do rozwiązania dla Nostr w perspektywie długoterminowej. Protokół oparty całkowicie na parach kluczy publiczny/prywatny używanych jako tożsamości nie może zyskać na popularności i adopcji, jeśli integralność tych tożsamości nie może być chroniona i utrzymywana dla użytkowników. To ostatecznie sprowadzi się do konieczności ciągłego korzystania z pozapasmowych i scentralizowanych platform do weryfikowania nowych kluczy i koordynowania ludzi podążających za twoją nową tożsamością, gdy coś zostanie utracone lub naruszone, a w tym momencie te inne platformy staną się środkiem do siania zamieszania i wprowadzić cenzurę.
Kwestie zarządzania kluczami i bezpieczeństwa to duże problemy z bardzo dużą przestrzenią projektową pełną kompromisów i problemów, ale są to problemy, które będą musiały zostać rozwiązane w kontekście Nostr, aby działał. W moim następnym artykule podsumuję niektóre problemy, które pojawiają się w odniesieniu do architektury serwera przekazującego i problemów ze skalowaniem, z którymi programiści Nostr będą musieli się zmierzyć, biorąc pod uwagę podstawowe struktury danych, na których zbudowano Nostr.
Dla każdego, kto czyta i zastanawia się, dlaczego nie wspomniałem o zdecentralizowanych identyfikatorach (DID): Tak, to jest potencjalne rozwiązanie tych problemów, które moim zdaniem jest dość kompleksowe. Jednak programiści Nostr wydają się bardzo wahać przed integracją DID z protokołem lub klientami ze względu na fakt, że stworzyłoby to zewnętrzne zależności poza protokołem Nostr. Jeśli nie jesteś zaznajomiony z działaniem DID na poziomie technicznym i jesteś zainteresowany, ten artykuł autorstwa Level 39 jest bardzo dobrze napisanym podsumowaniem ich działania.
To jest gościnny post Shinobi. Wyrażone opinie są całkowicie ich własnymi i niekoniecznie odzwierciedlają opinie BTC Inc lub Bitcoin Magazine.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- Platoblockchain. Web3 Inteligencja Metaverse. Wzmocniona wiedza. Dostęp tutaj.
- Źródło: https://bitcoinmagazine.com/technical/solving-nostr-key-management-issues
- 7
- a
- absolutnie
- Konto
- faktycznie
- adres
- Adresy
- Dodaje
- Przyjęcie
- przed
- przed
- AID
- Wszystkie kategorie
- Pozwalać
- i
- Inne
- ktoś
- architektura
- na około
- artykuł
- Wsparcie
- Współpracownik
- autoryzować
- automatycznie
- z powrotem
- na podstawie
- podstawowy
- stają się
- staje się
- zanim
- Początek
- jest
- korzyści
- pomiędzy
- Duży
- Najwyższa
- wiążący
- Bit
- Bitcoin
- Magazyn Bitcoin
- nadawanie
- BTC
- BTC Inc
- wybudowany
- nie może
- Cenzura
- scentralizowane
- łańcuch
- ZOBACZ
- klientów
- Zamknij
- zobowiązany
- zobowiązanie się
- Komunikacja
- całkowicie
- wszechstronny
- Zagrożone
- zamieszanie
- stale
- kontekst
- kontrola
- koordynować
- rdzeń
- mógłby
- Kurs
- Stwórz
- kryptograficzny
- klient
- Obsługa klienta
- dane
- Zdecentralizowane
- Pochodny
- Wnętrze
- Deweloper
- deweloperzy
- omówione
- Drzwi
- na dół
- każdy
- Zespół redakcyjny
- bądź
- zobowiązany
- dość
- Cały
- całkowicie
- itp
- Parzyste
- wydarzenie
- wydarzenia
- ostatecznie
- EVER
- wyjaśniając
- wyrażone
- rozbudowa
- zewnętrzny
- znajomy
- Fiatjaf
- i terminów, a
- Elastyczność
- obserwuj
- następujący
- przyjaciele
- od
- pełny
- Funkcje
- fundamentalny
- Wzrost
- Generować
- wygenerowane
- generujący
- otrzymać
- dany
- Dający
- Go
- będzie
- dobry
- Rośnie
- gwarancji
- Gość
- Guest Post
- uchwyt
- Prowadzenie
- mający
- tutaj
- Niezdecydowany
- Wysoki
- gospodarz
- W jaki sposób
- Jednak
- HTTPS
- pomysł
- zidentyfikowane
- identyfikator
- tożsamości
- tożsamość
- natychmiast
- ważny
- in
- włączony
- indywidualny
- nieuchronnie
- zamiast
- integralny
- integrować
- integralność
- interakcji
- zainteresowany
- Przedstawia
- problem
- problemy
- IT
- samo
- konserwacja
- Klawisz
- Klawisze
- Wiedzieć
- Wiedząc
- Brak
- duży
- Nazwisko
- prawowitość
- poziom
- Prawdopodobnie
- Ograniczony
- długo
- Popatrz
- stracić
- od
- magazyn
- robić
- i konserwacjami
- Masa
- mistrz
- dopasowywanie
- materiał
- znaczy
- mechanizm
- wzmiankowany
- Multisig
- koniecznie
- wymagania
- Nowości
- Następny
- Nasz
- oferta
- Oferty
- ONE
- otwiera
- Opinia
- Opinie
- zamówienie
- Inne
- Pozostałe
- zewnętrzne
- własny
- Ból
- par
- ścieżka
- Ludzie
- Platforma
- Platformy
- plato
- Analiza danych Platona
- PlatoDane
- Podcast
- punkt
- zwrotnica
- Popularny
- Post
- napisali
- potencjał
- potencjalnie
- Wcześniejszy
- prywatny
- Klucz prywatny
- Problem
- problemy
- dowód
- wniosek
- proponuje
- chronić
- chroniony
- protokół
- zapewniać
- publiczny
- Klucz publiczny
- Czytaj
- Czytający
- Recover
- regeneracja
- odzwierciedlić
- pozdrowienia
- odnowiony
- replikowane
- wymagać
- powrót
- korzeń
- "bezpiecznym"
- taki sam
- skalowaniem
- schemat
- druga
- bezpieczne
- bezpieczeństwo
- nasienie
- Usługi
- zestaw
- powinien
- pokazać
- znak
- podobny
- po prostu
- pojedynczy
- sytuacje
- So
- rozwiązanie
- Rozwiązania
- ROZWIĄZANIA
- Rozwiązuje
- kilka
- Ktoś
- coś
- Typ przestrzeni
- specyficzny
- Rozpościerający się
- Startowy
- Nadal
- Stop
- taki
- streszczać
- wsparcie
- system
- Brać
- trwa
- macica
- Techniczny
- Połączenia
- ich
- rzeczy
- trzy
- próg
- Przez
- czas
- do
- żeton
- Żetony
- trakcja
- handel
- Drzewa
- Zaufaj
- zaufany
- i twitterze
- Ostatecznie
- dla
- posługiwać się
- Użytkownik
- Użytkownicy
- zweryfikować
- wersja
- Co
- który
- będzie
- w ciągu
- pełen zdumienia
- Praca
- działa
- by
- napisany
- X
- You
- Twój
- youtube
- zefirnet