Transparantiemanifest

Versie 5.0 — 15 maart 2026

Dit document beschrijft precies welke informatie Solo2 over je heeft, wanneer die wordt verzameld, waarom, waar die zich bevindt, hoe lang die bewaard wordt en hoe die beschermd wordt. Er is geen kleine lettertjes. Er zijn geen uitzonderingen.

Fundamenteel principe

De server van Solo2 is volledig blind. No sabe con quién hablas, qué dices, ni qué archivos compartes. Ni siquiera las señales técnicas que establecen la conexión entre dispositivos son legibles para el servidor — viajan cifradas de extremo a extremo.

Je berichten reizen rechtstreeks tussen apparaten, end-to-end versleuteld. Je gespreksgeschiedenis leeft versleuteld in je browser, nooit op onze server.

De versleutelingssleutels roteren automatisch bij elk bericht. Elk bericht wordt versleuteld met een unieke sleutel die onmiddellijk daarna wordt weggegooid. Dit staat technisch bekend als Double Ratchet, y significa que incluso si alguien obtuviese una clave, solo podría leer un único mensaje — no la conversación. Además, la seguridad se restaura automáticamente tras cada turno de comunicación: una clave comprometida se vuelve inútil en cuanto se intercambia el siguiente mensaje.

Wanneer een directe verbinding tussen apparaten niet mogelijk is (bijvoorbeeld door netwerkbeperkingen), wordt een spiegelserver gebruikt (technisch een TURN-server): de gegevens worden van het ene apparaat naar het andere gespiegeld, maar de spiegel is zich niet bewust van wat hij spiegelt — alles reist end-to-end versleuteld en de server kan het niet lezen. Bovendien worden alle pakketten opgevuld tot een uniforme grootte om te voorkomen dat een waarnemer informatie kan afleiden door de grootte of frequentie van het verkeer te analyseren.

Je kunt in de applicatie altijd zien welk type verbinding je gebruikt — directa o a través del servidor espejo — y actuar en consecuencia.

Je hoofdsleutel wordt willekeurig gegenereerd met 256 bits echte entropie — hetzelfde niveau als Bitcoin. Al crear tu cuenta, Solo2 genera una clave única que se representa como 24 palabras. Tu contraseña protege el acceso al servicio. Tus 24 palabras son la llave de tus datos. Son dos llaves diferentes para dos puertas diferentes.

Zelfs als onze server verdwijnt, overleven je gegevens. Met je 24 woorden kun je zonder serververbinding toegang krijgen tot je lokale kluis. Je gegevens zijn van jou — echt waar.

1. Gegevens die WEL op de server staan

1.1 Je gebruikersaccount

Dit zijn alle velden die in je registratie bestaan. Er zijn er geen meer.

Gegeven Waarom Bescherming Duur
Gebruikersnaam Zodat je kunt inloggen Platte tekst (is openbaar door ontwerp) Totdat je je account verwijdert
Wachtwoord Authenticatie Beschermd met Argon2id (aanbevolen door OWASP, bestand tegen aanvallen met gespecialiseerde hardware). We slaan nooit je echte wachtwoord op, solo una huella matemática irreversible Totdat je je account verwijdert
Weergavenaam Zodat je contacten je herkennen Platte tekst (jij kiest het) Totdat je het wijzigt of je account verwijdert
Koppelingscode Je adres binnen Solo2 — als een telefoonnummer. Dit deel je met iemand zodat die je kan vinden en een verbindingsverzoek kan sturen Platte tekst, uniek (~10 tekens) Totdat je je account verwijdert
Publieke sleutel Cryptografische string die de applicatie automatisch gebruikt om de gegevens die naar jou worden gestuurd te versleutelen. Niemand gebruikt het direct — de applicatie regelt het. De koppelingscode is om je te vinden; de publieke sleutel is om voor jou te versleutelen Publieke sleutel (44 tekens). Kan zonder risico bekend zijn — alleen je privésleutel, die in je browser leeft, kan ontsleutelen Totdat je je account verwijdert
Financieel saldo Geld dat je aan je account hebt toegevoegd Getal (in centen) Totdat je je account verwijdert
Bonussaldo Ontvangen bonussen (uitnodigingen, promoties, cadeaus). Wordt eerder verbruikt dan het financieel saldo Getal (in centen) Totdat je je account verwijdert
Accounttype Je huidige abonnement (proef, standaard, goud, platina) Tekst Totdat het wijzigt of je je account verwijdert
Einddatum proefperiode Wanneer je gratis proefperiode eindigt Datum Totdat je je account verwijdert
Datum en tijd van registratie Wanneer je je account hebt aangemaakt Volledige datum en tijd (timestamp) Permanent
Laatste activiteit Wanneer je de applicatie voor het laatst hebt gebruikt Datum en tijd Wordt bij elk gebruik bijgewerkt
Interne identificatiecodes Codes die het systeem intern gebruikt om naar jou te verwijzen Ondoorzichtige ID's, zonder betekenis buiten het systeem Totdat je je account verwijdert
Beveiligingsversie Welke versie van het wachtwoordbeschermingsalgoritme is gebruikt Intern nummer Totdat je je account verwijdert
Statusindicatoren Technische flags (of je saldo is gewijzigd, of je de maximale beveiligingsmodus actief hebt) 1 byte — het equivalent van één enkele letter. Er past niet meer in Totdat je je account verwijdert

Om je een idee te geven van de omvang: je registratie beslaat ongeveer 250 vaste tekens (identificatiecodes, datums, sleutels, saldi) plus de lengte van de namen die je kiest. Het wachtwoord heeft geen invloed: het wordt altijd opgeslagen als een vingerafdruk van vaste grootte. Bijvoorbeeld, als je «Jan» heet en je weergavenaam «Jan Jansen» is, is alles wat je op onze server inneemt ongeveer 264 tekens — minder dan deze alinea.

1.2 Actieve sessies

GegevenWaaromBeschermingDuur
Sessietoken Je login actief houden We slaan alleen een onomkeerbare vingerafdruk (hash) op, niet het originele token 24 uur máximo, luego se borra automáticamente
Datum van laatste activiteit Inactieve sessies laten verlopen Datum en tijd Wordt verwijderd met de sessie

1.3 Koppelingsverzoeken

GegevenWaaromBeschermingDuur
ID van de aanvrager Weten wie het verzoek heeft verstuurd Interne ID 3 dagen máximo. Si no se responde, se elimina automáticamente
ID van de ontvanger Weten voor wie het bedoeld is Interne ID Hetzelfde als de aanvrager
Status In behandeling / geaccepteerd / geweigerd Tekst Wordt verwijderd bij afhandeling of verlopen

Belangrijke opmerking: Una vez aceptada la vinculación, el servidor no guarda la relación. Tu lista de contactos existe solo en tu navegador, cifrada.

1.4 Uitnodigingen

GegevenWaaromBeschermingDuur
Uitnodigingscode Unieke link om iemand uit te nodigen Willekeurig token Totdat het wordt gebruikt of verloopt (30 dagen)
ID van de afzender Weten wie heeft uitgenodigd Interne ID Permanent (boekhouding)
Cadeaubedrag Saldo cadeau bij de uitnodiging Getal Permanent (boekhouding)

1.5 Push-abonnementen (meldingen)

GegevenWaaromBeschermingDuur
Meldingsadres Meldingen naar je browser sturen URL van de browserleverancier (Google, Mozilla of Apple) Totdat je meldingen uitschakelt of je account verwijdert
Push-versleutelingssleutels De melding versleutelen zodat alleen jouw browser deze kan lezen Web Push-standaard Hetzelfde als het adres

1.6 Feedback (ondersteuning)

GegevenWaaromBeschermingDuur
Je bericht Zodat we je kunnen helpen Platte tekst Totdat we het verwerken
Je gebruikers-ID Om te weten wie hulp nodig heeft Interne ID Hetzelfde als het bericht

1.7 Verbindingssignalering (efemeer)

Om twee apparaten rechtstreeks te laten verbinden, moeten ze technische verbindingsopbouwsignalen uitwisselen (WebRTC-protocol). Deze signalen passeren kort via onze server, maar end-to-end versleuteld — el servidor solo transporta un bloque opaco que no puede descifrar.

GegevenWaaromBeschermingDuur
Verbindingssignalen De directe verbinding tussen apparaten tot stand brengen End-to-end versleuteld met de publieke sleutel van de ontvanger. De server kan ze niet lezen of wijzigen 60 seconden máximo, luego se borran. En memoria, nunca en disco

1.8 Spiegelserver (TURN-relay)

Als een directe verbinding niet mogelijk is, wordt een spiegelserver gebruikt: de gegevens gaan er doorheen zoals licht door een spiegel — ze worden van de ene kant naar de andere gereflecteerd, maar de spiegel is zich niet bewust van wat hij reflecteert. Alle pakketten worden opgevuld tot een uniforme grootte zodat een waarnemer geen bericht kan onderscheiden van een eenvoudige verbindingsheartbeat.

GegevenWaaromBeschermingDuur
Toegangscredential Je authenticeren bij de spiegelserver Je identiteit wordt omgezet in een onomkeerbare vingerafdruk — de spiegelserver weet niet wie je bent 24 uur, luego se regenera

1.9 Verwerkte betalingen

Betalingen zijn het enige punt waar er echte spanning is met anonimiteit. Laten we daar eerlijk over zijn.

Wanneer je je registreert bij Solo2, kies je een gebruikersnaam (mag verzonnen zijn), een wachtwoord en een weergavenaam (ook verzonnen als je wilt). Geen enkel gegeven koppelt je aan een echte persoon. Maar als je een betaling met een kaart doet, weet je financiële instelling wel wie je bent.

Wat wij van de betalingsprovider ontvangen is uitsluitend een bevestiging en een bedrag. We ontvangen noch bewaren de naam van de rekeninghouder, het kaartnummer, het identiteitsbewijs, noch enig persoonsgegeven van de betaler. Het gaat om kleine bedragen — juridisch equivalent aan een contant bonnetje, alsof je een lolly koopt bij een kiosk: de kioskhouder registreert niet het identiteitsbewijs van wie betaalt.

Bovendien is het betalingsrecord opzettelijk losgekoppeld de tu cuenta de usuario. No existe ningún campo en nuestra base de datos que cruce un ticket de cobro con una cuenta concreta.

GegevenWaaromBeschermingDuur
Betalingsrecord Boekhouding en fiscale verplichtingen Bevestiging + bedrag. Zonder persoonlijke gegevens van de betaler. Zonder koppeling aan enig gebruikersaccount Permanent (wettelijke verplichting)

Over het ergst denkbare scenario: Incluso con una orden judicial, la cadena de rastreo sería: tu tarjeta → tu banco → la pasarela de pago → nuestro ticket de cobro. Pero nuestro ticket no contiene ningún identificador de usuario. No es un descuido: es una decisión de diseño. No existe ningún campo ni índice en nuestra base de datos que relacione un pago con una cuenta. La única vía teórica sería una correlación temporal — si fueses el único pago en un periodo dado — pero incluso en ese caso extremo, la cuenta no contiene información que identifique a la persona real: el nombre de usuario y el nombre público pueden ser totalmente inventados.

Al onze inkomsten zijn legaal en worden geboekt via de betalingsprovider. We dragen de bijbehorende belastingen af. Maar de anonimiteit van de klant is van onze kant totaal.

2. Gegevens die NIET op de server staan

Dit is wat ons definieert. De server van Solo2 slaat niet op en heeft geen toegang tot:

  • Je berichten — Viajan directamente entre dispositivos, cifrados de extremo a extremo. El servidor nunca los ve.
  • Je bestanden — Igual que los mensajes: directos y cifrados.
  • Je contactenlijst — Existe solo en tu navegador, cifrada en La Bóveda.
  • Je chatgeschiedenis — Solo en tu navegador, cifrado.
  • Je locatie — Los GeoSellos se calculan en tu dispositivo y se envían directamente al destinatario. El servidor nunca los procesa.
  • Gebruiksanalyses — La aplicación Solo2 no tiene ningún sistema de analíticas, ni cookies de seguimiento, ni scripts de terceros.
  • Apparaatgegevens — No recogemos modelo, resolución, sistema operativo, ni ninguna característica de tu dispositivo.
  • Communicatiemetadata — No sabemos con quién hablas, cuándo, con qué frecuencia, ni durante cuánto tiempo.

Over je IP-adres

We registreren je IP-adres niet. Noch de applicatie noch de webserver slaat IP-adressen op in hun logs. De verbindingssignalen, die je IP zouden kunnen bevatten, zijn end-to-end versleuteld — de server kan ze niet lezen.

3. Gegevens in je browser (De Kluis)

Alles hieronder leeft uitsluitend in je browser, cifrado con AES-256-GCM (un estándar de cifrado de grado militar utilizado por gobiernos y entidades financieras). La clave se genera a partir de tu contraseña mediante Argon2id (el algoritmo más resistente disponible contra ataques con hardware especializado), y este proceso ocurre enteramente dentro de tu navegador. Tu contraseña nunca se envía al servidor.

Je gegevens zijn versleuteld in rust — zelfs als iemand toegang zou krijgen tot de opslag van je browser, zou hij alleen onleesbare versleutelde blokken vinden zonder je wachtwoord.

Wanneer je een back-up exporteert, wordt deze versleuteld met dezelfde bescherming (Argon2id + AES-256-GCM). Alleen wie je wachtwoord kent kan het ontsleutelen.

Gegeven Versleuteling Controle
BerichtenAES-256-GCMJij beslist wanneer je ze verwijdert
BestandenAES-256-GCMJij beslist wanneer je ze verwijdert
Contacten (paren)AES-256-GCMJij beslist met wie je koppelt
VerificatiestatusAES-256-GCMJij verifieert de identiteit van elk contact
ZoekindexVersleuteld met onomkeerbare tokens (HMAC)Wordt opgebouwd vanuit je berichten
AfleveringsstatusAES-256-GCMWelke berichten zijn afgeleverd
Wachtende berichtenAES-256-GCMVerzendwachtrij wanneer er geen verbinding is

Tijdelijke browseropslag

Gegeven Type Duur Waarom
Gebruikerssessie Lokaal browsergeheugen (localStorage) Totdat je uitlogt Je login behouden
App-versie Lokaal browsergeheugen (localStorage) Permanent Updates detecteren
Themavoorkeur Lokaal browsergeheugen (localStorage) Permanent Je visuele thema onthouden
Taalvoorkeur Lokaal browsergeheugen (localStorage) Permanent Je taal onthouden
Wachtwoord (maximale beveiligingsmodus) Tabblad-geheugen (sessionStorage) Verdwijnt bij het sluiten van het tabblad De versleuteling herinitialiseren als je de pagina herlaadt

Opmerking over browserbeveiliging

Solo2 werkt binnen je webbrowser. Je versleutelde gegevens zijn in rust beschermd, maar wanneer de applicatie geopend is en je je ontsleutelde berichten op het scherm toont, hangt de beveiliging ook af van je omgeving:

  • Browserextensies: Una extensión maliciosa con acceso a las páginas que visitas podría, en teoría, leer lo que se muestra en pantalla. Recomendamos utilizar el menor número posible de extensiones y solo de fuentes de confianza.
  • Schone browser: Un navegador actualizado y sin extensiones innecesarias es tu mejor aliado.
  • Native applicatie: En el futuro, ofreceremos una aplicación de escritorio (Windows, Mac, Linux) que proporcionará un nivel adicional de aislamiento al no depender del entorno del navegador.

4. Netwerkverbindingen

De Solo2-applicatie

Domein Reden Verzonden gegeven
solo2.netApplicatie-APIAuthenticatie, signalering, aanwezigheid
pay.menzuri.comBetalingsproviderAlleen als je een betaling doet

Geen enkel ander domein. Ningún script externo. Ningún CDN de seguimiento. La política de seguridad de contenido (CSP) del servidor lo impone técnicamente: cualquier intento de cargar recursos de otros dominios es bloqueado por el navegador.

Zelfs om het openbare IP-adres van je apparaat te ontdekken (nodig om directe verbindingen tussen gebruikers tot stand te brengen), gebruiken we onze eigen server (technisch een STUN-server). We delegeren niet aan externe diensten. We beheren het zelf.

De presentatiepagina

De presentatiepagina (solo2.net/info) — die onafhankelijk is van de applicatie — gebruikt een anoniem meetsysteem dat gehost wordt op onze eigen servers in Duitsland:

Domein Reden Verzonden gegeven
stats.menzuri.comAnonieme bezoekmetingBezochte pagina (zonder cookies, zonder IP, zonder identificatie)

Dit systeem plaatst geen cookies, registreert je IP-adres niet, identificeert je niet, volgt je niet tussen bezoeken en deelt geen gegevens met derden. De Solo2-applicatie heeft dit systeem niet, noch enig ander type analyse.

5. Je gegevens verwijderen

Er zijn twee verschillende acties, en het is belangrijk dat je het verschil kent:

Lokale gegevens verwijderen

Vanuit de instellingen van de applicatie heb je twee opties voor lokaal verwijderen:

  • Mijn gegevens verwijderen — Elimina solo tus datos (identidad, bóveda, sesión) sin afectar a otros usuarios que usen el mismo navegador.
  • Noodreset — Borra absolutamente todo: datos de todos los usuarios, Service Worker, caché y claves criptográficas. Requiere doble confirmación.

In beide gevallen blijft je account op de server bestaan. Puedes volver a iniciar sesión, pero tus datos locales se habrán perdido irreversiblemente. Al hacerlo, se genera una identidad criptográfica completamente nueva: quien tuviese tu clave pública anterior ya no puede cifrar nada para ti. Si un contacto anterior quiere reconectarse, deberá solicitarte vinculación de nuevo, y tú decides si la aceptas o no.

Automatisch herstel tussen apparaten

Als je je gegevens op een apparaat verliest en een ander apparaat verbonden hebt, detecteert Solo2 de situatie en biedt aan om je identiteit en kluis automatisch te herstellen. Het herstel reist versleuteld (Argon2id) via een directe verbinding tussen je apparaten — zonder via de server te gaan.

Je account van de server verwijderen

  1. Alle rijen in de database die gekoppeld zijn aan je ID worden verwijderd: alle las filas en la base de datos asociadas a tu ID: cuenta, sesiones, solicitudes, invitaciones, suscripciones push, feedback.
  2. De verwijdering is atomair (todo o nada): o se borra todo o no se borra nada.
  3. Betalingsrecords blijven opzettelijk losgekoppeld de tu identidad — existen por obligación legal, pero no se puede trazar un pago a tu persona.
  4. De identificatiecodes in de serverlogs zijn onomkeerbare vingerafdrukken: een log kan niet aan je account worden gekoppeld zodra het is verwijderd.
  5. De Kluis in je browser wordt niet automatisch verwijderd met deze actie (wij hebben geen toegang tot je browser). Om deze te verwijderen, voer je eerst de noodreset uit of wis je de sitegegevens in je browser.

5b. Je hoofdsleutel en je 24 woorden

Bij het aanmaken van je Solo2-account wordt een hoofdsleutel gegenereerd met 256 bits echte entropie (dezelfde als bij Bitcoin). Deze sleutel wordt weergegeven als 24 woorden die alleen jij kent. Je wachtwoord omhult deze sleutel om hem versleuteld op de server op te slaan — de server kan hem niet lezen.

Dit betekent dat je twee onafhankelijke sleutels: tu contraseña (para conectar al servidor y recuperar tu clave envuelta) y tus 24 palabras (para acceder directamente a tus datos sin servidor). Si pierdes una, la otra te protege. Si pierdes ambas, tus datos son irrecuperables — como en Bitcoin.

Exacte algoritmen (verifieerbaar)

Generatie: CSPRNG del sistema operativo (crypto.getRandomValues, 256 bits). Cifrado de la clave maestra: Argon2id (OWASP) para derivar la clave de envoltorio + AES-256-GCM (cifrado autenticado) para protegerla. Identidad: Ed25519 (firma) + X25519 (intercambio). Mensajes: Double Ratchet con ChaCha20-Poly1305. Al cerrar la pestaña del navegador, todos los datos sensibles desaparecen de la memoria.

Hoe je hoofdsleutel wordt beschermd

Layer What it is Where it lives
Password Servertoegang. Omhult je hoofdsleutel In je geheugen + hash op de server
Device secret Invisible second factor, generated automatically on install On your device (non-extractable)
Hoofdsleutel (24 woorden) 256 bits echte entropie, willekeurig gegenereerd. Bitcoin-niveau (BIP39) Op een papier dat jij bewaart + omhuld op de server
Key rotation Each message uses a unique key that is destroyed after (Double Ratchet) Automatic, transparent

If you change your password

Je wachtwoord wijzigen is onmiddellijk. Je hoofdsleutel wordt simpelweg opnieuw omhuld met het nieuwe wachtwoord — je identiteit verandert niet, je kluis wordt niet opnieuw versleuteld, je contacten worden niet beïnvloed, en je 24 woorden blijven dezelfde. Het is een bewerking van milliseconden.

Recovery

Als je je wachtwoord verliest, kun je met je 24 woorden toegang krijgen tot je kluis — zonder server. Als je je 24 woorden verliest, kun je inloggen met je wachtwoord en de server geeft je omhulde sleutel terug. Als je beide verliest, zijn je gegevens onherstelbaar. Net als bij Bitcoin is dat beveiliging by design.

6. Wat er gebeurt als iemand onbevoegd toegang krijgt tot de server

Als een aanvaller volledige toegang tot de server van Solo2 zou krijgen, zou hij het volgende verkrijgen:

  • Gebruikersnamen en weergavenamen
  • Koppelingscodes
  • Publieke sleutels (nutteloos zonder de privésleutel, die in je browser zit)
  • Wachtwoordvingerafdrukken (nutteloos zonder een extreem kostbare brute-force-aanval dankzij Argon2id)
  • Sessietokenvingerafdrukken (nutteloos zonder het originele token)
  • Openstaande koppelingsverzoeken (interne ID's, verlopen na 3 dagen)
  • Accounttype, saldi en registratiedatums
  • Betalingsrecords (zonder ze aan een specifieke gebruiker te kunnen koppelen)

Wat hij NIET zou verkrijgen:

  • Geen enkel bericht (ze waren nooit op de server)
  • Geen enkel bestand (ze waren nooit op de server)
  • Geen enkele contactenlijst (die was nooit op de server)
  • Geen enkele chatgeschiedenis (die was nooit op de server)
  • Geen enkele privésleutel (die leven in je browser)
  • Geen enkel IP-adres (die worden niet geregistreerd)

7. Ons engagement

Dit manifest wordt bijgewerkt bij elke relevante wijziging in het gegevensbeheer. Als we een nieuw veld aan de database toevoegen, verschijnt het hier. Als we iets verwijderen, ook.

De geldende versie is altijd deze pagina.

Solo2 — Je gesprek is alleen van jou.