הצפנה
כל מה ש-bae שם בבית ענן אטום מוצפן לפני שהוא עוזב את המכשיר. bae לא מממש קריפטוגרפיה משלו: כל הסכמה היא של coven, והדף הזה מתאר איך bae משתמש בה. בתים ניתנים לעיון מוותרים על כל זה; שום דבר למטה לא חל עליהם.
מפתח הספרייה
קישור למקטע הזהלספרייה אטומה יש סוד שורש אחד: מפתח אקראי של 256 סיביות שנוצר כשהבית נוצר. הוא חי במחזיק המפתחות של מערכת ההפעלה, לעולם לא בקובץ; בפלטפורמות Apple רשומת מחזיק המפתחות מסתנכרנת דרך iCloud Keychain. ההגדרה של bae שומרת רק טביעת אצבע של המפתח, מספיק כדי להבדיל בין מפתח שגוי ונכון בפתיחה בלי להחזיק את הסוד.
המפתח עובר בין מכשירים בשתי דרכים, שתיהן מתוארות בזהות וחברות: אטום למפתח הציבורי של מכשיר שאושר בזמן הזמנה, ונישא בתוך קוד שחזור.
דורות
קישור למקטע הזהמפתח הספרייה הוא למעשה מחזיק מפתחות של דורות ממוספרים. הסרת חבר מוסיפה דור חדש שהחבר שהוסר לעולם לא מקבל: כל מה שנכתב אחר כך משתמש בדור החדש ואינו קריא עבורו, בעוד החברים שנותרו מחזיקים בכל דור ויכולים לקרוא את כל ההיסטוריה. כל אובייקט אטום רושם בגלוי איזה דור פותח אותו.
מה נאטם
קישור למקטע הזהכל אובייקט בבית: changesets, snapshots, blobs של שמע, אמנות, רשומות חברות ואובייקטי בקרה. אובייקטים נאטמים עם XChaCha20-Poly1305 במקטעים של 64 KB, כל מקטע מאומת, וקשורים להקשר שלהם: אובייקט אטום מתפענח רק כאובייקט שהוא נכתב להיות, עבור הספרייה הזאת, במפתח הזה. חלוקה למקטעים היא הסיבה שהזרמה עובדת, הנגן יכול לפענח בדיוק את טווחי הבתים שהוא מושך.
מה הספק יכול לראות
קישור למקטע הזהמספר אובייקטים, גדלי אובייקטים, זמני העלאה ודפוסי גישה. לא שמות, לא מטא־נתונים, לא שמע, לא אמנות, לא חברות. אין שחזור בצד שרת: משתמש שמאבד כל מכשיר וכל עותק של המפתח איבד את הטקסט המוצפן של הספרייה לתמיד, וזה התכנון בפעולה.
פתיחה ונעילה
קישור למקטע הזהפתיחת ספרייה קוראת את המפתח ממחזיק המפתחות. אם הספרייה מצפה למפתח ולמחזיק המפתחות אין אותו, bae מתייחס לספרייה כנעולה: הוא מבקש את המפתח לפני פתיחה, מאמת את הקלט מול טביעת האצבע השמורה לפני שהוא שומר אותו בחזרה למחזיק המפתחות. נעילת ספרייה מסירה בכוונה את המפתח ממחזיק המפתחות; אי אפשר לקרוא או לכתוב שום דבר בבית הענן עד שמזינים אותו שוב.