Šifrování
Všechno, co bae ukládá do neprůhledného cloudového domova, je zašifrováno, než opustí zařízení. bae neimplementuje vlastní kryptografii: celé schéma patří coven a tato stránka popisuje, jak ho bae používá. Procházetelné domovy se z toho všeho odhlašují; nic níže se jich netýká.
Klíč knihovny
Odkaz na tuto sekciNeprůhledná knihovna má jedno kořenové tajemství: náhodný 256bitový klíč vytvořený při založení domova. Žije v klíčence operačního systému, nikdy v souboru; na platformách Apple se položka klíčenky synchronizuje přes iCloud Keychain. Konfigurace bae ukládá jen otisk klíče, dostatečný k rozlišení špatného klíče od správného při odemčení, aniž by držela tajemství.
Klíč putuje mezi zařízeními dvěma způsoby, oba popisuje Identita a členství: zapečetěný pro veřejný klíč schváleného zařízení během pozvánky a nesený v obnovovacím kódu.
Generace
Odkaz na tuto sekciKlíč knihovny je ve skutečnosti klíčenka číslovaných generací. Odebrání člena přidá novou generaci, kterou odebraný člen nikdy nedostane: všechno zapsané potom používá novou generaci a je pro něj nečitelné, zatímco zbývající členové drží každou generaci a mohou číst celou historii. Každý zapečetěný objekt uvádí v čitelné podobě, která generace ho otevře.
Co se pečetí
Odkaz na tuto sekciKaždý objekt v domově: changesety, snapshoty, audio bloby, obrázky, záznamy členství, řídicí objekty. Objekty se pečetí pomocí XChaCha20-Poly1305 v blocích po 64 KB, každý blok je ověřený a svázaný se svým kontextem: zapečetěný objekt se dešifruje jen jako objekt, kterým měl být, pro tuto knihovnu, s tímto klíčem. Díky blokům funguje streamování, přehrávač může dešifrovat přesně ta bajtová rozmezí, která načítá.
Co vidí poskytovatel
Odkaz na tuto sekciPočet objektů, velikosti objektů, časy nahrávání a vzorce přístupu. Ne názvy, ne metadata, ne audio, ne obrázky, ne členství. Neexistuje obnova na straně serveru: uživatel, který ztratí každé zařízení i každou kopii klíče, ztratil šifrový text knihovny navždy, což odpovídá návrhu.
Odemčení a zamčení
Odkaz na tuto sekciOtevření knihovny čte klíč z klíčenky. Pokud knihovna klíč očekává a klíčenka ho nemá, bae považuje knihovnu za zamčenou: před otevřením si vyžádá klíč, ověří zadanou hodnotu proti uloženému otisku a teprve pak ji uloží zpět do klíčenky. Zamčení knihovny záměrně odstraní klíč z klíčenky; v cloudovém domově nelze nic číst ani zapisovat, dokud ho někdo znovu nezadá.