Kennisbank Praten met mensen
Groepschats
End-to-end gecodeerde groepsgesprekken die hun eigen gesprekken niet lekken lidmaatschap. Ieder bericht wordt voor ieder lid apart verpakt, geadresseerd aan een sleutel welteverstaan één keer gebruikt.
Deze pagina is voor het gemak automatisch vertaald. Het Engelse origineel is de versie die van toepassing is.
Een groep aanmaken
/group @alice @bob Weekend plans creëert een groep met die leden en zo
naam. De naam is optioneel. Je kunt ook kiezen Groepschat maken van
iemands contextmenu, of gebruik de + naast het gedeelte Groepschats in de
zijbalk.
Jij wordt van de groep eigenaar. Er is een maximum aan groepen 100 leden, omdat elk bericht voor elk bericht afzonderlijk wordt gecodeerd de fan-out per bericht moet begrensd blijven.
Leden toevoegen
/addmember @nym, of /invite @nym terwijl je in de groep zit. Of
iedereen behalve de eigenaar mag dit doen, dit is van de groep sta toe dat leden anderen toevoegen
instelling, in het contextmenu van de groep.
/groupinfo vermeldt de huidige leden.
Links uitnodigen
Standaard uitgeschakeld. De eigenaar gaat aan Sta deelname toe via de uitnodigingslink van de contextmenu van de groep, waarna de link daar verschijnt — voor de eigenaar en voor leden ook als "leden toestaan anderen toe te voegen" is ingeschakeld.
Iemand die gloednieuw is en een uitnodigingslink opent, wordt gevraagd een nieuwe naam te kiezen of eerst in te loggen; de verbinding wordt dan vanzelf hervat, zodat ze de link geen tweede keer hoeven te vinden.
Uitnodigingslink opnieuw instellen trekt elke tot nu toe gedeelde link in één keer in. Gebruik het wanneer een link is ergens terechtgekomen waar u niet de bedoeling had.
Geschiedenis delen met nieuwe leden
Ook standaard uitgeschakeld, ook de oproep van de eigenaar: Deel geschiedenis met nieuwe leden binnen het contextmenu van de groep.
Als deze is ingeschakeld, gaat degene die iemand toevoegt door naar de laatste van de groep 50 berichten aan dat nieuwe lid, als een enkele gecodeerde klodder, aan hen alleen. Doorgestuurde berichten zijn gemarkeerd niet geverifieerd, omdat de handtekeningen van de originele auteurs niet opnieuw kunnen worden gecontroleerd zodra de tekst door een derde partij is doorgegeven, vertrouwt u de persoon die heeft toegevoegd je hebt niet bewerkt wat ze hebben doorgegeven.
Eigenaars, moderators en leden
| Commando | Doet | Wie kan |
|---|---|---|
/kick @nym | Verwijdert een lid | Eigenaar, moderatoren |
/ban @nym | Verwijdert ze en blokkeert hun terugkeer | Eigenaar, moderatoren |
/unban @nym | Heft een verbod op | Eigenaar |
/addmod @nym | Promoot tot moderator | Eigenaar |
/removemod @nym | Degradeert een moderator | Eigenaar |
/transferowner @nym | Geeft de groep over | Eigenaar |
/leave | Verwijdert u uit de groep | Iedereen |
Er is geen server om te arbitreren, dus elke client controleert zelf de rol – wanneer het verzenden van een moderatieactie, en opnieuw bij elke moderatiegebeurtenis die het ontvangt. Een klant dat een macht claimt die het niet heeft, wordt eenvoudigweg door alle anderen genegeerd.
Hoe groepsversleuteling werkt
Groepschats gebruiken dezelfde NIP-17-geruchten en NIP-59-cadeauverpakkingen als privé berichten, één wrap per lid, elk gecodeerd naar dat lid. Nymchat voegt dan iets toe wat standaard NIP-17 niet heeft.
Sleutels van ontvanger roteren
Met gewoon NIP-17 ziet iemand die naar een estafette kijkt, N cadeauverpakkingen op hetzelfde moment verschijnen, geadresseerd aan N verschillende pubkeys. Dat is een ledenlijst en deze hoeft niet te worden gedecodeerd lezen.
Dus Nymchat roteert de sleutels van de ontvanger. Elke keer dat u verzendt, munt uw klant een nieuw exemplaar
kortstondig sleutelpaar en maakt reclame voor de publieke helft ervan binnen het gecodeerde gerucht, als een
ephemeral_pk label. Vanaf dat moment adresseert iedereen zijn berichten aan die sleutel
in plaats van je echte. Voor een waarnemer reist elk bericht in de groep tussen
eenmalige pubkeys die geen zichtbare link naar welke identiteit dan ook hebben, en geen twee berichten delen een
ontvanger.
Herstel na een compromis
Die rotatie is tevens het herstelmechanisme. Als een apparaat is aangetast, kan de gebruiker dat eenvoudigweg doen stuurt een bericht: de nieuwe kortstondige sleutel die hij adverteert, vervangt de oude voor elk lid automatisch. Er is geen resynchronisatie buiten de band om te regelen en er is niets waar de groep het over eens is op.
Terugkomen na weggeweest te zijn
Kortstondige sleutels roteren, en de gebeurtenissen die ze dragen verlopen via relais. Een klant die geweest is dagenlang offline kunnen komen, kunnen daarom terugkomen met sleutels waar iedereen langs is gegaan. Zo verder opnieuw verbinding maakt, stuurt het, na een pauze die lang genoeg is, een sleutel-hersynchronisatieverzoek met beperkte snelheid naar elk van zijn groepen en wisselt huidige sleutels opnieuw uit - wat ervoor zorgt dat een lange vakantie niet doorgaat in een groep die je niet meer kunt lezen.