Przejdź do treści

Tożsamość i członkostwo

Nigdzie w bae nie ma systemu kont. Każda osoba w bibliotece jest członkiem coven: ma losowy, stały identyfikator członka i dwie pary kluczy, jedną do podpisywania i jedną, dla której pieczętuje się klucze, dzielone przez wszystkie urządzenia tej osoby i trzymane w pęku kluczy systemu operacyjnego każdego urządzenia. Urządzenie to jedna instalacja z własnym identyfikatorem, należąca do jednego członka. To, kto należy do biblioteki, jest zestawem podpisanych rekordów w domu w chmurze, sprawdzanych przez urządzenie każdego członka, niewydawanych przez żaden serwer. Mechanizm należy do coven; ta strona opisuje, jak używa go bae.

Rekordy członkostwa

Link do tej sekcji

Cała historia biblioteki w domu w chmurze to jedna numerowana sekwencja, a każde urządzenie stosuje ją w tej samej kolejności. Zmiana członkostwa albo ustawień jest wpisem administracyjnym w tej sekwencji, podpisanym kluczem autora i ocenianym względem stanu tuż przed nim, więc każde urządzenie samo dochodzi do tego samego werdyktu. Wpis liczy się tylko wtedy, gdy jego autor może go dokonać, a biblioteka zawsze zachowuje co najmniej jednego administratora.

Każda zmiana wysyłana przez urządzenie jest sprawdzana względem tego rekordu: podpisana przez obecnego członka, z urządzenia, które nie zostało usunięte. Zmiany z usuniętych urządzeń lub od usuniętych członków, z kluczy nigdy niedodanych albo z nieprawidłowymi podpisami się nie liczą. Dostawca przechowuje rekordy, ale nie może ich podrobić.

Administrator i Członek czytają i zapisują bibliotekę: coven nie sprawdza uprawnień przy zapisach do biblioteki, więc rola tylko do odczytu by się nie utrzymała. Administratorzy dodatkowo zapraszają i usuwają osoby, zmieniają role i zmieniają nazwę biblioteki. Osoba, która daje bibliotece dom w chmurze, jest jej pierwszym administratorem.

DziałanieKto
Zaproszenie osobyadministrator
Dodanie urządzeniasama osoba, z nowego urządzenia, ze swoim kodem przywracania
Usunięcie urządzeniajego osoba albo dowolny administrator
Usunięcie osobyadministrator
Zmiana nazwy bibliotekiadministrator

Profil, oceny, historia i playlisty osoby są wierszami właściciela: tylko urządzenia tej osoby mogą je zmieniać, więc ocena przypisana komuś pochodzi od niego.

Dodawanie własnego urządzenia

Link do tej sekcji

Kod przywracania dowodzi, że urządzenie należy do swojej osoby, więc nie potrzebuje zatwierdzenia:

  1. Nowe urządzenie dostaje kod, skanując kod QR pokazany przez inne urządzenie tej osoby, z pęku kluczy iCloud na urządzeniach Apple albo przez wpisanie.
  2. Dociera do przechowywania: w Dropbox i OneDrive przez zalogowanie się na własne konto osoby, w S3 jej kluczem dostępu, który kod QR niesie obok kodu.
  3. Wczytuje bibliotekę, sprawdza, że klucze z kodu należą do obecnego członka, i rejestruje się jako nowe urządzenie wpisem podpisanym tymi kluczami.

Kod, którego klucze zostały od tego czasu wymienione, nie zadziała. Przywracanie zawsze tworzy nowe urządzenie; nie ratuje niewysłanych edycji innej instalacji.

Zapraszanie osoby

Link do tej sekcji
  1. Administrator wpisuje konto dostawcy osoby i wybiera jej rolę. bae udostępnia folder biblioteki temu kontu albo w S3 tworzy dla niej klucz dostępu i pokazuje zaproszenie: kod QR z lokalizacją biblioteki, identyfikatorem członka wybranym dla tej osoby, jednorazowym sekretem i bieżącą nazwą biblioteki. Wygasa dobę po utworzeniu.
  2. Urządzenie osoby skanuje je, loguje się na jej własne konto, tworzy jej pary kluczy i zapisuje w przechowywaniu prośbę o dołączenie, zaszyfrowaną kluczem wyprowadzonym z sekretu zaproszenia i podpisaną jej nowym kluczem.
  3. Urządzenie administratora, jedyne, które ma sekret, pokazuje prośbę, a administrator ją zatwierdza.
  4. Zatwierdzenie pieczętuje każdy klucz magazynu dla nowego klucza pieczętowania osoby, a potem dodaje wpis, który ją przyjmuje.
  5. Nowe urządzenie otwiera swoje klucze, wczytuje bibliotekę, rejestruje się i zapisuje profil osoby z imieniem, które wpisała.

Odrzucenie zaproszenia albo pozwolenie mu wygasnąć cofa dostęp u dostawcy, który przyznało.

Usunięcie urządzenia albo osoby to wpis administracyjny, a jego miejsce w sekwencji jest linią w historii: to, co usunięte urządzenie albo osoba wyśle później, się nie liczy, a to, co dotarło wcześniej, zostaje. Usunięcie osoby usuwa też jej urządzenia i jej prywatny krąg, a klucze, które miała, są wymieniane, zanim zostaną zapisane kolejne dane (zobacz Szyfrowanie). Odcięcie dostępu do przechowywania to praca dostawcy: urządzenie konta, na którym leży biblioteka, przestaje udostępniać folder, a w S3 klucz dostępu osoby jest usuwany. To, co już zsynchronizowało się na usunięte urządzenie, zostaje z nim; danych nie da się cofnąć po wysłaniu.

Kody przywracania

Link do tej sekcji

Kod przywracania zawiera identyfikator członka i jego bieżące prywatne pary kluczy, identyfikator magazynu biblioteki i miejsce jej przechowywania; nigdy danych dostępowych do przechowywania, tokenów logowania ani nazwy biblioteki. Jest pokazywany na żądanie, automatycznie przechowywany w pęku kluczy iCloud na platformach Apple i jest dokładnie tak wrażliwy jak sama biblioteka: kto go ma, z dostępem do przechowywania, jest dla biblioteki tą osobą. Osobę, która straci każde urządzenie i swój kod, administrator może zaprosić ponownie do jej istniejącego identyfikatora członka, co wymienia jej klucze.