Kihagyás

No Solutions #25. White Noise, MLS, and Marmot w/ Jeff G

Epizód: #25 • Dátum: 2026. május 30. • Házigazda: No Solutions host (Sovereign Engineering, Gigi) • Vendég: Jeff G (White Noise és Marmot projekt fejlesztő) Forrás: honlap Transcript: Whisper ggml-medium.en.bin (whisper.cpp, Metal GPU), saját futtatás a podcast oldalról (kb. 12 000 szó, ~110 perc — az epizód hossza az oldal szerint) Hossz: ~110 perc — sétálós epizód Oslóban, a Sovereign Engineering cohort egyik leghosszabb No Solutions beszélgetése. A középpontban a White Noise messenger és a Marmot (MLS-alapú csoportos chat) áll, de a beszélgetés messze túlmutat a technikai részleteken: AI vibe coding, KYC-ellenes rendszerek, és a „Bitcoin szellemében építeni” filozófiája is terítékre kerül.


Összegzés

A No Solutions #25 Jeff G-vel, a White Noise és Marmot fejlesztőjével készült, és a decentralizált titkosított csoportos chat építésének fundamentális kihívásait járja körül. A fő probléma: az MLS (Messaging Layer Security) szigorú rendezést követel meg, a Nostr viszont broadcast rendszer, ahol az események elveszhetnek. Ez a két tulajdonság ellentmond egymásnak, és a megoldás irányát Jeff G egy determinisztikus state machine-ben látja, amelyet a csoport konszenzussal fogad el, és ahol a rendezési szabályok a csoportra szabhatók.

A White Noise Jeff G saját szavaival „the most private messenger possible” indult, és lassan „unstoppable messenger”-ré mutálódott, amely túléli a csúnya hálózati körülményeket és a hostilis környezetet. Az MLS + Nostr kombináció ordering probléma: az identity és a delivery a könnyű rész, a group-state evolution az, ahol minden széttörik. A forked histories, a missing commits, és az „észrevétlenül kettészakad a csoport” rémálma az MLS specifikus sajátossága: ha egyetlen commit kimarad, a tagok más-más chat history-t látnak, és a csoport kettészakad. Jeff G szerint „ha tudtam volna, mennyire nehéz lesz, lehet jobban átgondolom”, de pont ezért izgalmas a feladat.

A determinisztikus state machine megközelítés Jeff G jelenlegi fő csapásiránya. A timestamp alapú rendezés nem működik (a Bitcoin tanulsága: a Bitcoin sem használ órát, a difficulty adjustment az igazi óra). A megoldás: egy csoport-szintű konszenzussal elfogadott state machine, amelyben a rendezési szabályok testre szabhatók. Ha a kliens deszinkronizálódik, az MLS re-init proposal segítségével automatikusan vissza lehet hozni a csoportba: pár üzenet elveszhet, de a csoport folytatódik. A cél: havonta max egyszer forduljon elő desync. Kis csoportokban szinte soha.

Az MLS Light a jövő egyik fontos lépcsője. Csak néhány tagnak van teljes state-je (adminok), a többiek csak üzenetkulcsokat kapnak. Nem tudják verifikálni a teljes taglistát, de tudnak üzenni. Az alap MLS-ben nincs admin koncepció, minden full member egyenlő. Jeff G-ék rétegezték rá az admin funkciót. Az app components új MLS extension rendszer: kisebb, moduláris feature-ök, capability negotiation a key package-en keresztül. Ha a másik kliens nem támogat egy feature-t, a csoport automatikusan visszavesz azokból.

A „serial killer relay” vita az epizód egyik legérdekesebb technikai párbeszéde. Pablo (a „serial killer relay” atyja) olyan relayt akar, amelyik megköveteli az eventek láncolását: csak akkor fogad el új eventet, ha az előzőre mutat. Kelly (Cashu fejlesztő) lelkes: a Cashu-nak pont ilyen rendezés kell. Jeff G ellenáll: „ez pont az, amit NEM akarunk megoldani, ha kell egy sequencer/coordinator, akkor nem is próbáljuk meg a decentralizált utat”. Gigi érve: ha a relay már nem relay, hanem community szerver, akkor ne hívjuk relay-nek. A vita lényege: a centralizáció elkerülése néha kompromisszumokkal jár, és a kompromisszumot tudatosan kell vállalni, nem pedig „csak úgy megtörténni” hagyni.

A centralizált szerver trade-off spektrum fontos gondolat. A jelenlegi Marmot már jól működik one-on-one chatekhez (Gigi hetekig használta exclusive Pika-t). A privacy vs. group size kérdés: 2000 fős csoportban úgyis van 5 feds és 3 spook, minek a tökéletes privacy? Nagy csoportoknál vissza lehet esni egyszerűbb rendszerekre. Jeff G konklúziója: „a Nostr relay = unstoppable, de unreliable. Ez a trade-off. Az unstoppable-ségért cserébe elfogadjuk, hogy nem kapunk meg mindent.”

A crypto identitások és AI ágensek a No Solutions #25 egy másik nagy témája. Gigi saját setupja: minden projektnek saját npub, az agent projekt-specifikus session-t tart. „Küldök egy DM-et a projektnek” — ez természetes. A White Noise + OpenClaw integráció Fabian NIP-17 plugin-jén keresztül működik, emoji reakciókkal jelzik a thinking state-et. Jeff G streamelt text chat appot épített White Noise-ra: az agent elkezdi streamelni a választ, a végén jön a teljes transcript anchor. A lényeg: nincs telefonszám, nincs KYC, nincs SIM swap, csak crypto identitás. „Ez az igazi unlock.”

Az AI vibe coding a szoftverfejlesztés középső sávjának eltűnéséről szól. Jeff G december óta nulla kézzel írt kódsor, a crypto részt kivéve (ami már beérett). „A szoftverfejlesztés középső sávja, az implementáció, eltűnt. Az AI elvégzi. Ami marad: magas szintű architektúra + felhasználói visszajelzési loop.” A modellek a bell curve közepe felé gravitálnak („the most insufferable person”), a trükk: vagy nagyon egyszerűt, vagy nagyon komplexet kell építeni, mindkettőnél harcolni kell a modellel. A Nostr-on vannak fejlesztők, akik Android appot publisholnak anélkül, hogy lenne Android eszközük: az agent buildeli, a user feedback jön Nostr-on, iterálnak. Gigi saját megjegyzése: „a vibeline-em pont erre van, miért gépeljek, ha bele tudom dumálni a telefonba?”

Az internet KYC a closing argumentum. „Scan your passport and bring a stool sample” — a KYC az interneten terjed. A válasz: olyan rendszereket építeni, amelyek unstoppable-ok. A White Noise notification szerver úgy épült, hogy nulla adatot tárol: csak annyi encrypted tokent, hogy az Apple Push ki tudja küldeni az értesítést. „Amikor a rendőrség kopogtat és kéri a logokat, igazat mondasz: nincs semmink.” A notification server itt konkrét megvalósítása a „minél kevesebb adatot tároljunk” elvnek.

A FIPS, BitChat, Bluetooth mesh a hálózati réteg alternatívái. Jonathan Corgan FIPS protokollja transport-agnostic P2P hálózat a Nostr-on (lásd #24). White Noise-nál a transport plug-and-play lesz: a key package tartalmazza, milyen transportot támogat a kliens (relay, FIPS, Bluetooth, stb.). A BitChat Jack Dorsey projektje, Bluetooth-only, ephemeral chat: konferenciákon, fesztiválokon, internet shutdown esetén. „A letöltési térkép alapján lehet tudni, hol történik valami, Madagaszkáron letöltési spike? Csekkold a híreket.”

A „build it right” kérdés a Bitcoin szellemében építést jelenti. Permissionless, cryptographic identity, nem kellenek a node-ok, nincs centralizáló erő, online/offline működés. Az internet maga is így épült: nukleáris háborúra tervezve, ahol a hálózat fele elpusztulhat. Az apprenticeship modell vissza kell hozni: a bölcsesség (miért építsünk valamit) nem átadható dokumentációval, csak mester-tanítvány viszonyban. Jonathan Corgan megjegyzése Jeff G-nek: „a White Noise a legfontosabb projekt a Nostr térben”, ez Jeff G-t aggasztja. A „Coinbase for Nostr” kérdésre (Pablo „insect bunker”-je, Coinbase-szerű Nostr kliens) Jeff G válasza: „amíg a rendszer lehetővé teszi a self-sovereign használatot, addig oké. Csak legyen választásod.”

A záró gondolatok között a „rectification > evangelization” elve jelenik meg. Gigi 10 év orange-pilling után feladta, megírta a „dear family, dear friends” dokumentumot, és azóta nem beszél Bitcoinról. „0.2% kíváncsi, 99.8% úgyis wrecked lesz.” A Nostr adoption nem attól nő gyorsabban, hogy mindenki saját nsec-et kezel, hanem hogy a Damus és hasonlók alatt ott van a Nostr, de a user nem is tudja. „Csak azt látja, hogy király videókat csinálok.” Az oktatás az AI korában: a gyerekeknek nem a konkrét tudás kell, hanem a gondolkodásmód, hogyan steelman-eld az ellenérvet, hogyan lásd a másod- és harmadrendű következményeket.

A teljes epizód a „no script” filozófiát testesíti meg, és a séta-formátum itt is leveszi a performance-nyomást. Jeff G szakértelme a White Noise és a Marmot projektekben koncentrálódik, de a beszélgetés szélesebb körben járja körül a decentralizált rendszerek építésének kérdéseit. A „stop theorycrafting, start shipping” gondolat itt is visszaköszön, csak most a Marmot (MLS csoportos chat) kontextusában.

A beszélgetés főbb témái

  • White Noise és Marmot eredete. White Noise „most private messenger possible”-ből „unstoppable messenger” lett, Marmot MLS-alapú csoportos chat a Nostr-on
  • MLS + Nostr = ordering probléma, strict commit sorrend vs. broadcast rendszer, forked histories, „észrevétlenül kettészakad a csoport”
  • Determinisztikus state machine, timestamp-alapú rendezés nem működik, csoport-szintű konszenzus, MLS re-init proposal automatikus visszahozásra
  • MLS Light és app components, adminok, capability negotiation a key package-en, kisebb moduláris feature-ök
  • Serial Killer Relay vita. Pablo láncolt event relay ötlete, Cashu-s rendezési igény, Jeff G ellenállása, „ha kell sequencer, nem is próbáljuk a decentralizált utat”
  • Crypto identitások + AI ágensek. NIP-17 plugin, OpenClaw setup, „nincs telefonszám, nincs KYC, nincs SIM swap”
  • AI vibe coding eltűnés, „szoftverfejlesztés középső sávja eltűnt”, magas szintű architektúra + felhasználói visszajelentési loop
  • Internet KYC-ellenesség, notification server nulla adattal, „nincs mit odaadni a rendőrségnek”
  • FIPS, BitChat, Bluetooth mesh, transport-agnostic P2P, key package plug-and-play, BitChat Bluetooth-only ephemeral chat
  • „Build it right” a Bitcoin szellemében — permissionless, apprenticeship modell, „legyen választásod self-sovereign használatra”

Kulcsmondatok

  • „What we're building is an unstoppable messenger.” — Jeff G
  • „MLS on Nostr is mostly an ordering problem: identity and delivery are the easy parts, group-state evolution is where everything breaks.” — Jeff G
  • „A Nostr relay = unstoppable, de unreliable. Ez a trade-off.” — Jeff G
  • „A szoftverfejlesztés középső sávja, az implementáció, eltűnt.” — Jeff G
  • „Scan your passport and bring a stool sample.” — Gigi (az internet KYC terjedésére)
  • „Rectification > evangelization.” — Gigi

Vendég: Jeff G

A White Noise messenger és a Marmot (MLS-alapú csoportos chat) projekt fejlesztője. A White Noise v2 irányát ő határozza meg, és az MLS + Nostr kombináció rendezési problémáinak megoldásán dolgozik. A cohort-on belül több más projekthez is hozzájárul: az OpenClaw NIP-17 plugin (Fabian munkája, Jeff G irányítása alatt), a notification server architektúra, és az AI agent workflow-k. A „stop theorycrafting, start shipping” elv Jeff G-nél konkrét: december óta nulla kézzel írt kódsor, és a gyakorlatban bizonyítja, hogy az LLM-alapú fejlesztés működik, ha a design review fázis megmarad.

Házigazda

A No Solutions epizódot Gigi vezeti, aki a Sovereign Engineering alapító tagja. A séta-formátum itt is alkalmazkodik, és Gigi saját tapasztalatait (Pika használata, saját OpenClaw setup, 10 év orange-pilling tapasztalat) hozza be a beszélgetésbe. A serial killer relay vitában Gigi aktív résztvevő: ő hozza fel a „ha már nem relay, ne hívjuk relay-nek” érvet, és a vita a cohort nyilvánossága előtt zajlik.

Főbb érvek és gondolatmenetek

A White Noise és a Marmot nem független projektek, hanem ugyanannak a víziónak két aspektusa. Jeff G a White Noise-t „most private messenger possible”-ként indította, és a cél az volt, hogy a lehető legkevesebb metaadatot tárolja. Az út során kiderült, hogy a „private” önmagában nem elég: ha a szerver leáll, a kommunikáció is leáll. A „unstoppable” dimenzió hozzáadása a rendszerhez azt jelenti, hogy a hálózati rétegnek is alternatívának kell lennie. A Marmot az MLS (Messaging Layer Security) protokollt használja csoportos chatre, és itt jön a rendezési probléma.

Az MLS specifikáció szigorú rendezést követel meg: ha egyetlen commit kimarad, a csoport kettészakad, és a tagok észrevétlenül más-más chat history-t látnak. Ez a tulajdonság a Bitcoin konszenzus modelljéből jön, és a cél az volt, hogy a csoportos üzenetek is hasonló biztonságot kapjanak. A Nostr viszont broadcast rendszer: a relayek commodity-k, az események eltűnhetnek és újra megjelenhetnek, nincs globális állapot. Ez a két tulajdonság ellentmond egymásnak, és a megoldás nem triviális.

Jeff G jelenlegi megközelítése egy determinisztikus state machine, amelyet a csoport konszenzussal fogad el. A rendezési szabályok a csoportra szabhatók, és a cél az, hogy a csoport-tagok ugyanazt a history-t lássák, akármilyen sorrendben is érkeznek az eventek. Ha egy kliens deszinkronizálódik, az MLS re-init proposal automatikusan visszahozza a csoportba: pár üzenet elveszhet, de a csoport folytatódik. Ez a kompromisszum a „perfect ordering” és a „pragmatikus resilience” között.

A serial killer relay vita az epizód egyik legérdekesebb technikai párbeszéde. Pablo ötlete: a relay követeli meg az eventek láncolását (minden új event az előzőre mutat). Ez megoldaná a Cashu (és sok más alkalmazás) rendezési problémáját. Jeff G ellenáll: ha a relay már sequencer, akkor nem is relay, hanem community szerver, és ez a centralizáció visszahozatala a rendszerbe. A vita lényege: a centralizáció elkerülése néha kompromisszumokkal jár (például: alkalmankénti desync), és a kompromisszumot tudatosan kell vállalni, nem pedig „csak úgy megtörténni” hagyni.

A crypto identitások és AI ágensek kombinációja az OpenClaw setup-on keresztül konkrétan megjelenik. Minden projektnek saját npub (Nostr public key), az agent projekt-specifikus session-t tart. A fejlesztő DM-et küld a projektnek, és az agent válaszol. Ez a workflow több szempontból is forradalmi: nincs telefonszám, nincs KYC, nincs SIM swap, csak crypto identitás. A „nincs mit odaadni a rendőrségnek” elv itt konkrétan megvalósul: a notification server nulla adatot tárol, csak annyi encrypted tokent, hogy az Apple Push ki tudja küldeni az értesítést.

Az AI vibe coding hatása a szoftverfejlesztésre Jeff G tapasztalataiból konkrétan megfogalmazódik. December óta nulla kézzel írt kódsor, és a „szoftverfejlesztés középső sávja, az implementáció, eltűnt”. Ami maradt: magas szintű architektúra és felhasználói visszajelentési loop. A modellek a bell curve közepe felé gravitálnak, és a trükk az, hogy vagy nagyon egyszerűt, vagy nagyon komplexet kell építeni, mindkettőnél harcolni kell a modellel. A cohort-on belül több fejlesztő is publishol Android appot anélkül, hogy lenne Android eszköze: az agent buildeli, a user feedback Nostr-on jön, iterálnak.

A „build it right” kérdés a Bitcoin szellemiségéből jön. A permissionless, cryptographic identity, a node-ok nélkülözhetősége, a centralizáló erő hiánya, az online/offline működés mind a Bitcoin alapértékeiből következnek. Az internet maga is így épült (nukleáris háborúra tervezve), és a cél az, hogy ezt a szemléletet visszahozzuk a mai szoftverfejlesztésbe. Az apprenticeship modell (mester-tanítvány viszony) fontos, mert a bölcsesség (miért építsünk valamit) nem átadható dokumentációval, csak személyes példán keresztül. Johnathan Corgan példája („a White Noise a legfontosabb projekt a Nostr térben”) azt mutatja, hogy az idősebb fejlesztők szakértelme pótolhatatlan.

Szakmai párhuzamok és kontextus

A No Solutions #25 szorosan kapcsolódik több más epizódhoz. A #23 (Shipping Violently w/ Justin Moon) a Marmot skálázási problémáját (15 embernél összeomlik) említi. A #24 (Building FIPS w/ Johnathan Corgan) a FIPS transport-agnostic hálózati rétegről szól, és Jeff G itt jelenti be, hogy a White Noise v2-ben a FIPS-t integrálják. A #21 (Hashtree, Nostr VPN, and Iris w/ Martti Malmi) a Nostr VPN-ről szól, amely szintén a hálózati réteg alternatívája. A #28 (Speak Human w/ MouxDesign) és a #31 (Buzz, Mosaico, and Other Stuff w/ Pablo) szintén visszautalnak a White Noise / Marmot ökoszisztémára.

A MLS (Messaging Layer Security) és a Signal Protocol párhuzama fontos kontextus. Az MLS-t az IETF 2023-ban standardizálta (RFC 9420), és a cél az volt, hogy a Signal-féle Double Ratchet algoritmust skálázhatóvá tegyék nagy csoportokra. A Double Ratchet 1-1 chatre kiváló, de csoportos chatre nem skáláz. Az MLS ezt a problémát csoportkulcs-agreementtel oldja meg, de a rendezési probléma (strict commit order) megmarad. A Nostr broadcast modellje ezt a rendezést nem biztosítja, és ez az alapvető feszültség.

A „permissionless alternatives at every layer” gondolat Jeff G-nél konkrétan jelenik meg: a White Noise v2-ben a transport plug-and-play lesz, és a key package tartalmazza, milyen transportot támogat a kliens (relay, FIPS, Bluetooth, stb.). Ez a megközelítés a cohort több más projektjében is visszaköszön: a #23-as Shadow OS a mobil OS alternatívája, a #24-es FIPS a hálózati réteg alternatívája, és most a White Noise a kommunikációs réteg alternatívája. A „függőségmentes rendszerek” gondolata (Bitcoin, Nostr, FIPS, White Noise) összeköti ezeket.

A Bitcoin konszenzus modellje a „legyen óra nélküli rendezés” tanulsága fontos. Jeff G a timestamp-alapú rendezést azért utasítja el, mert a Bitcoin sem használ órát: a difficulty adjustment az igazi óra, és a konszenzus a block height-ből következik. Ez a tanulság a Marmot state machine-jére is érvényes: a rendezési szabályokat a csoport határozza meg, nem egy külső időbélyeg-szolgáltató. Ez a „bottom-up” gondolkodás a Cypherpunk hagyományból jön, és a cohort több más projektjében is megjelenik.

A „rectification > evangelization” elve Gigi személyes konklúziója. Tíz év orange-pilling tapasztalat után feladta a Bitcoin evangelizációt, és most a saját rendszerek építésére koncentrál. A cohort filozófiája ezt tükrözi: nem az a cél, hogy mindenkit meggyőzzünk a Bitcoinról vagy a Nostr-ról, hanem az, hogy alternatívákat építsünk, és aki kíváncsi, az maga megtalálja őket. A „you can just do things” gondolat ehhez kapcsolódik: a cohort nem vár engedélyre, nem kér review-t, egyszerűen épít.

Forrás

  • Epizód URL: https://sovereignengineering.io/podcast/25-white-noise-mls-and-marmot-w-jeff-g
  • Transcript forrás: Whisper ggml-medium.en.bin (whisper.cpp, Metal GPU), saját futtatás a podcast oldalról (kb. 12 000 szó, ~110 perc)
  • Vendég: Jeff G (White Noise és Marmot projekt fejlesztő)
  • Házigazda: Gigi (Sovereign Engineering alapító, séta partner)
  • Helyszín: Oslo, séta a parkban
  • Dátum: 2026. május 30. (~110 perc, Bitcoin block 951 696)
  • Kapcsolódó epizódok: #09 (No Strudelutions w/ hzrd149), #21 (Hashtree, Nostr VPN, and Iris w/ Martti Malmi), #23 (Shipping Violently w/ Justin Moon, Marmot skálázási probléma), #24 (Building FIPS w/ Johnathan Corgan, FIPS transport), #28 (Speak Human w/ MouxDesign), #31 (Buzz, Mosaico, and Other Stuff w/ Pablo, Serial Killer Relay)
  • Projektek: White Noise (https://www.whitenoise.chat/), Marmot (https://github.com/marmot-protocol/marmot), Pika (https://git.pikachat.org/git), BitChat (https://bitchat.free/), FIPS (https://fips.network/), Tubestr (https://www.tubestr.app/), Cashu (https://cashu.space/), Serial Killer Relay (https://github.com/pablof7z/serial-killer), OpenClaw (https://openclaw.ai/), OpenClaw NIP-17 plugin (https://github.com/fabianfabian/openclaw-nostr-nip17), NIP-60 (https://sovereignengineering.io/projects/SEC-02#nip-60)
Vissza a tetejére