Hoppa till innehållet
Tillbaka till Nymchat

Kunskapsbas Utanför internet

Bluetooth mesh

Meddelanden utan internet, ingen mobiltjänst och ingen infrastruktur snäll. Enheter i närheten länkar över Bluetooth LE och reläer för varandra, så ett meddelande når människor utanför radioräckvidden genom att hoppa genom enheterna däremellan.

Vad är nätet

Nätet är en andra transport som körs vid sidan av reläerna, inte en separat app eller en separat identitet. Både offentliga kanaler och privata meddelanden fungerar över det, och appen bestämmer vilket väg att ta på egen hand: onlinesändningar går över internet och faller tillbaka till Bluetooth när det är inte tillgängligt, medan en peer som bara kan nås via radion förblir på nätet i båda riktningarna.

Det är ett översvämningsnätverk. Varje enhet skickar paket vidare till de enheter den kan hör, med en hoppgräns på 7, deduplicera vad den redan har sett så en paketet cirkulerar inte för alltid. Två personer som inte kan höra varandra direkt fortfarande utbyta meddelanden så länge det finns en kedja av enheter mellan dem.

Under det kör varje par jämnåriga en Buller XX handslag och pratar över dess egen krypterad session. Paketen är vadderade och, när de är stora, fragmenterade, så storleken på vad du skickar säger så lite som möjligt om vad det är.

Slår på den

Öppna Bluetooth-nätpanelen och tryck på Sätta på. Vad som händer härnäst beror på vad du kör den på.

Nymchat Bluetooth-mesh-panelen visar mesh-status, ihopparade enheter, peers på mesh och en radiologg.
Nätpanelen: status, ihopparade enheter, hörda peers och en liveradiologg.

På Android och iOS

Appen kör båda Bluetooth-rollerna samtidigt - annonserar sig själv och söker efter andra — så att två närliggande enheter länkas upp oavsett vilken som märkte den andra. Grant Bluetooth-tillståndet när det tillfrågas och det hittar peers av sig själv.

I en webbläsare

Webbappen ansluter till samma mesh via webb-Bluetooth, på Chromium-webbläsare: Chrome, Edge, Opera och Brave. På Safari och Firefox, som inte implementerar webb-Bluetooth, ska mesh kontroller döljs helt istället för att erbjudas och misslyckas sedan.

En webbläsare går med som ett blad

En webbläsare kan bara ta Bluetooth central roll: den kan inte annonsera sig själv, så andra enheter kan inte upptäcka det. Den ansluter utåt till närliggande telefoner och reläer igenom dem. Du väljer varje enhet en gång genom webbläsarens egen enhetsväljare, varefter den återansluter på egen hand. Två webbläsare kan inte länka till varandra direkt.

Delar ett nät med Bitchat

Nymchat implementerar Bitchats mesh-protokoll på tråden, byte för byte — samma GATT-tjänst och egenskap UUID, samma pakethuvud, samma meddelandetyper, samma standardhoppgräns. De två appar överbryggas inte genom någonting; de är helt enkelt på samma mesh och en Nymchat-enhet och en Bitchat-enhet upptäcker varandra och utbyter krypterade meddelanden direkt.

Annonspaket kan också bära en nostrLink: en signerad länk från en mesh-peer till deras verkliga Nostr-identitet. När en är närvarande och verifierar, en kamrat du träffade över Bluetooth dyker upp som samma person som du känner från stafetterna.

Spökläge

En mesh-enhet är en radio som meddelar sig själv upprepade gånger, vilket är precis det som gör det enkelt att följa över platser och sessioner. Ghost Mode är svaret på valet.

Medan den är på, varje identifierare ett tillkännagivande bär ersätts med en släng värde, och alla roterar tillsammans:

  • den statiska brustangenten — som peer-ID och fingeravtryck härrör från;
  • signeringsnyckeln Ed25519;
  • det annonserade Bluetooth-namnet;
  • smeknamnet;
  • det aviserade nostrLink, som förblir verklig men blir tillfällig, så kamrater kan fortfarande nå dig utan att något löser sig för din npub.

Rotation sker under en skakig epok på ungefär 15 minuter. Pensionerade identiteter förbli dekrypterbar i upp till 8 epoker så ett sent svar kommer fortfarande, och a konversationen startade medan ghosted är fäst i nätet för gott snarare än tyst migrerar till reläerna under din riktiga nyckel.

Avatar- och bannerdelning nekas medan spökläget är aktivt: en upprepad bild länkar två epoker tillsammans snabbare än någon tangent skulle göra.

Spökläge är inte anonymitet

Det gör en enhet mycket svårare att följa. Det gör det inte spårbart. Bluetooth hårdvaruadressen styrs av operativsystemet, inte av appen, och timing och sociala mönster förblir korrelerbara - samma person, på samma plats, pratar med samma människor, vid samma tidpunkter.

Gränser

  • Räckvidd är Bluetooth-räckvidd. Tiotals meter i det fria, mindre genomgående väggar. Nätet utökar räckvidden genom att hoppa, inte genom att skrika högre.
  • Bandbredden är liten. Ramar är begränsade till 512 byte och större meddelanden är splittrade. Den är byggd för text, inte för media.
  • Leverans görs bäst. En storflod med en gräns på 7 hopp ger inga löften. Om ingen är inom räckhåll och ingen kommer inom räckvidd, väntar meddelandet.
  • Webbläsare är löv, enligt ovan, och är beroende av att en telefon finns i närheten.
  • Radion kostar batteri, eftersom skanning och reklam kontinuerligt är det som gör att nätet fungerar.