Identita a členství
V bae nikde není systém účtů. Identitou zařízení je pár klíčů Ed25519, který si samo vygeneruje a uchová v klíčence operačního systému; veřejný klíč je identita. Kdo patří do knihovny, je množina podepsaných záznamů v cloudovém domově, ověřitelná kýmkoli, kdo je drží, nevydaná žádným serverem. Mechanika patří coven; tato stránka popisuje, jak ji bae používá.
Záznamy členství
Odkaz na tuto sekciKaždý vlastník zapisuje do cloudového domova proud podepsaných záznamů členství, do kterého se jen přidává: tento klíč byl přidán s touto rolí, tento klíč byl odebrán. Každý záznam odkazuje na předchozí a každý vlastník podepisuje hlavu oznamující špičku svého proudu, takže poskytovatel, který záznamy zahodí nebo přeuspořádá, je odhalen místo toho, aby mu knihovna věřila. Knihovna přijímá sjednocení ověřených proudů všech vlastníků.
Při každém stažení změn se autor každého changesetu kontroluje proti tomuto záznamu: podepsaný aktuálním členem s rolí, která smí zapisovat. Changesety z odebraných zařízení, z klíčů, které nikdy nebyly přidány, nebo s neplatnými podpisy se nepoužijí. Poskytovatel záznamy ukládá, ale nemůže je padělat; členství mohou měnit jen držitelé klíčů vlastníků.
Owner a Member oba knihovnu čtou a zapisují do ní; vlastníci navíc schvalují a odebírají zařízení. Zakládající zařízení bae je owner a každé zařízení, které schválí, se připojí jako member. (V podkladové mechanice existuje třetí role, read-only follower, kterou bae aktuálně nepřiděluje.)
Připojovací handshake
Odkaz na tuto sekciPřidání zařízení je jedna místní párovací relace s explicitním ověřením člověkem:
- Vlastník spustí zařízení Přidejte zařízení. bae krátce poslouchá v místní síti a ukazuje jeden párovací kód. Obsahuje adresy posluchačů, dočasný klíč relace, název knihovny, poskytovatele a vypršení platnosti – žádný klíč knihovny ani trvalé pověření úložiště.
- Připojované zařízení naskenuje kód, vytvoří svůj pár klíčů zařízení, v případě potřeby se přihlásí k poskytovateli a odešle svůj podepsaný veřejný klíč a identitu účtu poskytovatele prostřednictvím šifrovaného místního připojení. Obě zařízení zobrazují stejný otisk prstu.
- Majitel porovná otisky prstů a schválí přesnou identitu. Schválení uděluje svému cloudovému účtu přístup tam, kde je to požadováno, podepisuje záznam o členství a zapečetí klíč knihovny a konečný přístup k úložišti veřejnému klíči nového zařízení.
- Zapečetěný balík se vrací přes stejné ověřené místní připojení. Připojované zařízení jej otevře, spustí se z cloudového úložiště a spustí se synchronizace.
Vypršené, přerušené nebo odmítnuté párování nic neuděluje.
Odebrání
Odkaz na tuto sekciOdebrání člena přidá podepsané odebrání a otočí klíč knihovny na novou generaci, kterou odebraný klíč nikdy nedostane (viz Šifrování). V úložišti, které umí odebrat přístup, se přístup také odebere. Co už bylo synchronizováno na odebrané zařízení, zůstává u něj; data nejde vzít zpět. Všechno po obměně je mimo jeho dosah.
Obnovovací kódy
Odkaz na tuto sekciObnovovací kód záměrně obchází členství: jsou to souřadnice cloudového domova plus klíč knihovny v jednom bearer řetězci pro obnovení vlastní knihovny bez přeživšího schvalovatele. Generuje se na vyžádání, na platformách Apple se automaticky ukládá do iCloud Keychain a je přesně tak citlivý jako samotná knihovna.