Problemet: blind tillit
När du installerar en babyvaktapp ger du den tillgång till en mycket privat plats: ditt barns rum. Appen lyssnar, och ibland tittar den också. Samtidigt kan föräldrar ofta inte se vad som händer i bakgrunden: går strömmarna via tredjepartsservrar, samlas användningsdata in, vem kan rent tekniskt få åtkomst till något?
Det ärliga svaret är att du inte vet med många appar. Koden är sluten och arkitekturen är bara ett påstående. I slutändan förväntas du lita på leverantören.
Sluten kod, öppna sårbarheter
Det har kommit tillräckligt många rapporter om hackade babyvakter de senaste åren. Främlingar har kunnat lyssna, styra kameror eller prata genom högtalarna. Oftast handlade det inte om avancerade attacker, utan om tydliga brister: okrypterade anslutningar, standardlösenord och avsaknad av autentisering.
Med proprietär programvara ser utomstående ofta de här svagheterna först efter att något har hänt. Säkerhetsforskare, oberoende utvecklare och föräldrar granskar en färdig produkt utifrån. För en enhet i barnrummet är det en svag modell.
Transparens som säkerhetsprincip
Informationssäkerhet har en gammal och användbar regel: Kerckhoffs princip. Säkerheten får inte vara beroende av att designen hålls hemlig. Ett system ska förbli säkert även när någon vet hur det är byggt.
Öppet dokumenterad kod gör inte programvara säker i sig. Men den gör påståenden möjliga att kontrollera. Personer med kunskap inom området kan granska dataflöden, nyckelhärledning och regler i stället för att läsa marknadsföringstext.
Timmys upplägg: en separat säkerhetskärna
I Timmy skiljer jag nu mycket tydligt på vilka delar som verkligen är säkerhetskritiska. Inte varje rad i gränssnittet avgör om produkten förtjänar förtroende. Det avgörande är backendlogiken, signaleringskontrakten, kryptografin för parkoppling och frågan om vilka data som når en server.
Därför finns säkerhetskärnan nu i det offentliga baby-monitor-timmy-core-repositoriet. Hela appkoden är inte offentlig just nu. De säkerhetskritiska byggstenarna har lyfts ut ur gränssnitts- och produktlogiken så att de kan dokumenteras och granskas för sig.
Vad innebär det här i praktiken?
- Tydliga gränser: säkerhetsbyggstenar hålls åtskilda från gränssnitts- och produktlogik.
- Granskningsbara dataflöden: parkoppling, signalering och backendgränssnitt kan dokumenteras separat.
- Inga dolda spårare: kritiska flöden innehåller bara det som tekniskt hör hemma där.
- Långsiktig underhållbarhet: en separat kärna är lättare att granska än en ostrukturerad monolit.
Slutsats: Föräldrar förtjänar transparens
När en app har tillgång till barnrummet bör den vara konkret kring de kritiska frågorna: Vilka data skapas? Vart tar de vägen? Vem kan läsa dem? Föräldrar förtjänar mer än en integritetsmärkning i sidfoten.
Baby Monitor Timmy ska visa att en bra produkt och granskningsbar säkerhet kan gå hand i hand. För mig betyder det inte att göra varje del av appen offentlig. Det innebär att öppna de delar som avgör parkoppling, signalering, backendåtkomst och dataflöden.