Grunnleggende prinsipp
Solo2 oppretter en privat tunnel mellom to personer. Direkte. Uten mellomledd.
Vår server gjør bare én ting: presenterer de to endene av tunnelen slik at de kan finne hverandre. Til det trenger den et absolutt minimum — identifiktatorene til de to partene — som den beholder i RAM-minnet bare i de millisekundene presentasjonen varer. I det øyeblikket de to enhetene har funnet hverandre, slettes disse dataene fra minnet. Aldri, på noe tidspunkt, blir de skrevet til disk.
Når dere er tilkoblet, forsvinner serveren. Den deltar ikke i samtalen. Den ser den ikke. Den lagrer den ikke. Den vet ikke hvor lenge den varer, hvor ofte dere snakker, eller hva dere snakker om.
Vi ber deg ikke om å tro på oss. Vi ber deg om å sjekke det selv:
Test 1 — Serveren er overflødig.
Når den direkte tunnelen er etablert, deltar ikke serveren vår lenger. Hvis den skulle gå ned i det øyeblikket, ville samtalen deres fortsette uten avbrudd. Så lenge deres enheter er påskrudd og koblet til internett, er tunnelen deres. Vi er ikke der lenger.
Test 2 — Send en fil på 10 gigabyte.
Ikke bare vil det gå raskt — det er at serveren vår bryr seg overhode ikke. Prøv å sitte i 24 timer sammenhengende og sende filer på 10 gigabyte eller mer. Serveren vår vil ikke en gang merke det, fordi den ikke griper inn. Prøv det med hvilken som helst annen meldingstjeneste.
Test 3 — Snakk om teleskoper.
Bruk en ettermiddag på å snakke med noen om teleskoper, eller fiskestenger, eller hva som helst du aldri har søkt etter på internett. Vent noen dager. Det vil ikke dukke opp reklame for teleskoper noen steder. Dine ord forlot aldri tunnelen din.
Dine data, ditt ansvar.
Dette er vår største dyd og, for å være ærlig, det som vil koste deg mest å venne deg til. Dine meldinger, filer og kontakter lever i et kryptert hvelv inne på din enhet. Det finnes ingen kopi på noen server. De er beskyttet med 24 ord — samme sikkerhetsnivå som Bitcoin. Men de er bare på ett sted, med mindre du installerer Solo2 på en enhet nummer to — da vil begge hvelv synkronisere seg automatisk når de er tilkoblet samtidig. Du kan også eksportere en kryptert sikkerhetskopi. Her finnes ingen sky som kan redde deg hvis du mister din eneste enhet. Dine data er dine, med alle konsekvenser.
I detalj
Solo2-serveren er helt blind. Den vet ikke hvem du snakker med, hva du sier, eller hvilke filer du deler. Ikke en gang de tekniske signalene som etablerer tilkoblingen mellom enhetene er lesbare for serveren — de reiser ende-til-ende-kryptert.
Meldingene dine reiser direkte mellom enhetene, ende-til-ende-kryptert. Historikken din lever kryptert i nettleseren din, aldri på vår server.
Krypteringsnøklene roterer automatisk med hver melding. Hver melding krypteres med en unik nøkkel som kastes umiddelbart etterpå. Dette er teknisk kjent som Double Ratchet, og betyr at selv om noen fikk tak i en nøkkel, kunne de bare lese én enkelt melding — ikke hele samtalen. Dessuten gjenopprettes sikkerheten automatisk etter hver kommunikasjonsrunde: en kompromittert nøkkel blir ubrukelig så snart neste melding utveksles.
Når direkte tilkobling mellom enheter ikke er mulig (for eksempel pga. nettverksbegrensninger), brukes en speilserver (teknisk kalt TURN): dataene reflekteres fra én enhet til en annen, men speilet er ikke klar over hva det reflekterer — alt reiser ende-til-ende-kryptert og serveren kan ikke lese det. Dessuten fylles alle pakker til en ensartet størrelse for å forhindre at en observatør kan utlede informasjon ved å analysere størrelsen eller frekvensen på trafikken.
Du kan alltid se i applikasjonen hvilken type tilkobling du bruker — direkte eller via speilserveren — og handle deretter.
Masternøkkelen din genereres tilfeldig med 256 biter ekte entropi — samme nivå som Bitcoin. Ved opprettelse av kontoen genererer Solo2 en unik nøkkel som representeres som 24 ord. Passordet ditt beskytter tilgangen til tjenesten. Dine 24 ord er nøkkelen til dine data. Det er to forskjellige nøkler til to forskjellige dører.
Selv om vår server skulle forsvinne, overlever dine data. Med dine 24 ord kan du få tilgang til ditt lokale hvelv uten tilkobling til serveren. Dine data er dine — på ekte.
1. Data som vi JA har på serveren
1.1 Din brukerkonto
Dette er alle feltene som eksisterer i din oppføring. Det finnes ingen andre.
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Brukernavn | For at du skal kunne logge inn | Ren tekst (er offentlig ved design) | Til du sletter kontoen din |
| Passord | Autentisering | Beskyttet med Argon2id (anbefalt av OWASP, motstandsdyktig mot angrep med spesialisert maskinvare). Vi lagrer aldri ditt virkelige passord | Til du sletter kontoen din |
| Offentlig navn | For at dine kontakter skal kjenne deg igjen | Ren tekst (du velger det selv) | Til du endrer det eller sletter kontoen din |
| Tilkoblingskode | Din adresse inne i Solo2 — som et telefonnummer. Det er det du deler med noen for at de skal finne deg og sende deg en tilkoblingsforespørsel | Ren tekst, unik (~10 tegn) | Til du sletter kontoen din |
| Økonomisk saldo | Penger du har lagt til kontoen din | Tall (i cent) | Til du sletter kontoen din |
| Bonus-saldo | Mottatte bonuser (promosjoner). Forbrukes før den økonomiske saldoen | Tall (i cent) | Til du sletter kontoen din |
| Kontotype | Din nåværende plan (prøve, standard, gull, platina) | 1 byte (heltall: 0=prøve, 1=standard, 2=gull, 3=platina, 4=pauset, 5=suspendert) | Til den endres eller du sletter kontoen din |
| Registreringsdato og -tid | Når du opprettet kontoen din | Full dato og tid (timestamp) | Permanent |
| Interne identifikatorer | Systemet trenger to interne koder for å referere til deg uten å bruke brukernavnet ditt. Den ene er din hoved-ID og den andre en referansekode. Begge er ugjennomsiktige — de betyr ingenting utenfor systemet | To tilfeldige koder på 24 tegn hver (f.eks.: u_7kX9mP2...). De inneholder ikke navnet ditt, dato eller noen personopplysning — de er rent tilfeldige | Til du sletter kontoen din |
| Sikkerhetsversjon | Hvilken versjon av passordbeskyttelsesalgoritmen som ble brukt | Internt nummer | Til du sletter kontoen din |
| Statusindikatorer | Tekniske flagg (om saldoen din er endret, om du har maksimal sikkerhetsmodus aktiv) | 1 byte — tilsvarende en enkelt bokstav. Ingenting annet får plass | Til du sletter kontoen din |
For å gi deg en idé om volumet: din fulle oppføring tar opp ca. 400 bytes — mindre enn dette avsnittet. Det er navnene dine (fiktive hvis du vil), et avtrykk av passordet ditt (fast størrelse, 60 bytes), din krypterte masternøkkel (en ugjennomsiktig blob på ~128 bytes som vi ikke kan lese), to tall for din saldo, noen datoer og en konfigurasjons-byte. Det er alt du eksisterer i vår server.
1.2 Aktive sesjoner
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Hash av sesjonstoken | Opprettholde din innlogging | Irreversibelt avtrykk (SHA-256). Det originale tokenet lagres aldri på serveren | 24 timer — deretter slettes den helt |
| Opprettelsesdato | For at systemet skal vite når den ble opprettet — nyttig for automatisk rengjøring | Numerisk timestamp (unix sekunder) | Slettes med sesjonen |
| Utløpsdato | Sesjonen utløper 24 timer etter opprettelse. Den fornyes ikke ved bruk — den har en fast utløpsdato | Numerisk timestamp (opprettelse + 24 timer) | 24 timer — deretter slettes den helt |
Ved utlogging eller utløp slettes raden helt fra databasen. Ingen spor blir liggende etter at sesjonen eksisterte.
1.3 Tilkoblingsforespørsler
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Søkerens ID | Vite hvem som sendte forespørselen | Intern kode på 24 tilfeldige tegn | 3 dager — deretter slettes den automatisk |
| Mottakerens ID | Vite hvem den er rettet til | Intern kode på 24 tilfeldige tegn | 3 dager — deretter slettes den automatisk |
| Status | Venter / akseptert / avvist | 1 byte (heltall: 0=venter, 1=akseptert, 2=avvist) | Slettes ved løsning eller utløp (3 dager) |
| Opprettelsesdato | Vite når forespørselen ble opprettet for å kunne slette den automatisk | Numerisk timestamp (unix sekunder) — 4 til 8 bytes | 3 dager — deretter slettes den automatisk |
Viktig merknad: Mens forespørselen venter (maks 3 dager), vet serveren at bruker A ba om å koble seg til bruker B. Etter 3 dager slettes forespørselen automatisk. Når tilkoblingen er akseptert, lagrer ikke serveren forholdet. Din kontaktliste eksisterer bare i din nettleser, kryptert.
1.4 Tilkoblingskode
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Tilkoblingskode (alias) | Kort identifikator slik at en annen bruker kan finne deg og be om å opprette en tunnel | Tilfeldig kode på 8 tegn avledet fra din interne ID | Permanent (er din offentlige tilkoblings-ID) |
1.5 Push-abonnementer (varslinger)
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Varslingsadresse | Sende varslinger til nettleseren din | URL fra nettleserleverandøren (Google, Mozilla eller Apple) | Til du deaktiverer varslinger eller sletter kontoen din |
| Krypteringsnøkler for push | Kryptere varslingen slik at bare din nettleser kan lese den | Web Push standard | Samme som adressen |
1.6 Feedback (støtte)
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Din melding | For at vi skal kunne hjelpe deg | Ren tekst | Til vi behandler den |
| Din bruker-ID | For å vite hvem som trenger hjelp | Intern ID | Samme som meldingen |
1.7 Tilkoblingssignalering (efemær)
For at to enheter skal kunne koble seg direkte til hverandre, må de utveksle noen tekniske signaler for tilkoblingsoppsett (WebRTC-protokoll). Det eneste øyeblikket vår server beholder din brukerkode og din kontakts kode i minnet, er i løpet av de millisekundene den behandler denne tilkoblingsforespørselen. Det varer et øyeblikk, det ligger bare i RAM-minnet og skrives aldri til disk. Signalene i seg selv er ende-til-ende-kryptert
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Tilkoblingssignaler | Etablere direkte tilkobling mellom enheter | Ende-til-ende-kryptert med mottakerens offentlige nøkkel. Serveren kan ikke lese eller endre dem | 60 sekunder |
1.8 Speilserver (TURN relay)
Hvis direkte tilkobling ikke er mulig, brukes en speilserver: dataene passerer gjennom den som lys gjennom et speil — de reflekteres fra den ene siden til den andre, men speilet er ikke klar over hva det reflekterer. Alle pakker fylles til ensartet størrelse slik at en observatør ikke kan skille en melding fra et enkelt tilkoblings-hjerteslag (heartbeat).
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Tilgangsbevis | Autentisere deg overfor speilserveren | Din identitet transformeres til et irreversibelt avtrykk — speilserveren vet ikke hvem du er | 24 timer |
1.9 Behandlede betalinger
Betalinger er det eneste punktet der det er reell friksjon med anonymitet. La oss være ærlige om det.
Når du registrerer deg i Solo2, velger du et brukernavn (kan være fiktivt), et passord og et offentlig navn (også fiktivt hvis du vil). Ingen data kobler deg til en ekte person. Men hvis du utfører en kortbetaling, vet din finansinstitusjon hvem du er.
Det vi mottar fra betalingsløsningen er kun en bekreftelse og et beløp. Vi mottar eller lagrer aldri innehaverens navn, kortnummer, personnummer eller noen personopplysning om betaleren. Det dreier seg om små beløp — juridisk sett tilsvarende en kontantkvittering, som å kjøpe en kjærlighet på pinne i en kiosk: kioskeieren registrerer ikke personnummeret til den som betaler.
Dessuten er betalingsregistreringen bevisst koblet fra
| Data | Hvorfor | Beskyttelse | Varighet |
|---|---|---|---|
| Betalingsregistrering | Regnskap og skattemessige forpliktelser | Bekreftelse + beløp. Uten betalerens personopplysninger. Uten kobling til noen brukerkonto | Permanent (juridisk forpliktelse) |
Om det verste tenkelige scenarioet:
Alle våre inntekter er lovlige og registreres via betalingsløsningen. Vi betaler de tilhørende skattene. Men kundeanonymiteten er total fra vår side.
2. Data som vi IKKE har på serveren
Dette er det som definerer oss. Solo2-serveren verken lagrer eller har tilgang til
- Dine meldinger
- Dine filer
- Din kontaktliste
- Din chat-historikk
- Din posisjon
- Bruksanalyse
- Enhetsdata
- Metadata for kommunikasjon
Om din IP-adresse
Din IP-adresse lagres ikke i noen database. I serverens tekniske logger transformeres IP-adresser til irreversible avtrykk (hash) — nyttig for å oppdage mønstre av misbruk, men umulig å reversere til den originale IP-en. Disse loggene slettes automatisk hver 7. dag. Tilkoblingssignalene, som kunne inneholde din IP, er ende-til-ende-kryptert — serveren kan ikke lese dem.
3. Data i din nettleser (Hvelvet)
Alt det følgende lever eksklusivt i din nettleser
Dine data er kryptert i hvile — selv om noen fikk tilgang til din nettlesers lagring, ville de bare finne uleselige krypterte blokker uten ditt passord.
Når du eksporterer en sikkerhetskopi, krypteres den med samme beskyttelse (Argon2id + AES-256-GCM). Bare den som kjenner passordet ditt kan dechiffrere den.
| Data | Kryptering | Kontroll |
|---|---|---|
| Meldinger | AES-256-GCM | Du bestemmer når de skal slettes |
| Filer | AES-256-GCM | Du bestemmer når de skal slettes |
| Kontakter (par) | AES-256-GCM | Du bestemmer hvem du vil koble til |
| Verifiseringsstatus | AES-256-GCM | Du verifiserer identiteten til hver kontakt |
| Søkeindeks | Kryptert med irreversible tokens (HMAC) | Gjenoppbygges fra dine meldinger |
| Leveringsstatus | AES-256-GCM | Hvilke meldinger ble levert |
| Ventende meldinger | AES-256-GCM | Sendingskø når det ikke er tilkobling |
Midlertidig lagring i nettleseren
| Data | Type | Varighet | Hvorfor |
|---|---|---|---|
| Brukersesjon | Nettleserens lokale minne (localStorage) | Til du logger ut | Opprettholde din innlogging |
| App-versjon | Nettleserens lokale minne (localStorage) | Permanent | Oppdage oppdateringer |
| Temapreferanse | Nettleserens lokale minne (localStorage) | Permanent | Huske ditt visuelle tema |
| Språkpreferanse | Nettleserens lokale minne (localStorage) | Permanent | Huske språket ditt |
| Passord (maks sikkerhetsmodus) | Faneminne (sessionStorage) | Forsvinner når du lukker fanen | Reinitalisere krypteringen hvis du laster siden på nytt |
Merknad om sikkerhet i nettleseren
Solo2 fungerer inne i din nettleser. Dine krypterte data er beskyttet i hvile, men når appen er åpen og viser deg dine dechiffrerte meldinger på skjermen, avhenger sikkerheten også av ditt miljø:
- Nettleserutvidelser:
- Ren nettleser:
- Nativ applikasjon:
4. Nettverkstilkoblinger
Solo2-applikasjonen
| Domene | Grunner | Sendte data |
|---|---|---|
| solo2.net | Appens API | Autentisering, signalering, tilstedeværelse |
| pay.menzuri.com | Betalingsløsning | Bare hvis du utfører en betaling |
Ingen andre domener.
Selv for å oppdage den offentlige IP-adressen til din enhet (nødvendig for å etablere direkte tilkoblinger mellom brukere), bruker vi vår egen server (teknisk kalt STUN). Vi delegerer ikke til eksterne tjenester. Vi administrerer den selv.
Presentasjonssiden
Presentasjonssiden (solo2.net) — som er uavhengig av appen — bruker et anonymt målesystem hostet på våre egne servere i Tyskland:
| Domene | Grunner | Sendte data |
|---|---|---|
| stats.menzuri.com | Anonym måling av besøk | Besøkt side (uten informasjonskapsler, uten IP, uten identifisering) |
Dette systemet installerer ikke informasjonskapsler, registrerer ikke din IP-adresse, identifiserer deg ikke, følger deg ikke mellom besøk og deler ikke data med tredjeparter. Solo2-appen har ikke dette systemet eller noen annen form for analyse.
5. Slette dine data
Det finnes to forskjellige handlinger, og det er viktig at du kjenner forskjellen:
Slette lokale data
Fra appens innstillinger har du to valg for lokal sletting:
- Slett mine data
- Nødtilbakestilling (reset)
I begge tilfeller fortsetter kontoen din på serveren å eksistere.
Automatisk gjenoppretting mellom enheter
Hvis du mister dataene dine på en enhet og har en annen tilkoblet, oppdager Solo2 situasjonen og tilbyr deg å gjenopprette din identitet og hvelv automatisk. Gjenopprettingen reiser kryptert (Argon2id) via direkte tilkobling mellom dine enheter — uten å gå via serveren.
Slette kontoen din fra serveren
- Sletter alt
- Slettingen er atomisk
- Betalingsregistreringer forblir bevisst frakoblet
- Identifikatorene i serverens logger er irreversible avtrykk: en logg kan ikke knyttes til din konto når den først er slettet.
- Hvelvet i nettleseren din slettes ikke automatisk med denne handlingen (vi har ikke tilgang til din nettleser). For å slette det, utfør først den nukleære slettingen eller rens nettsteddata i din nettleser.
5b. Din masternøkkel og dine 24 ord
Ved opprettelse av din konto i Solo2 genereres en masternøkkel med 256 biter ekte entropi (samme som Bitcoin bruker). Denne nøkkelen representeres som 24 ord som bare du kjenner. Passordet ditt "pakker inn" denne nøkkelen for å lagre den kryptert på serveren — serveren kan ikke lese den.
Dette betyr at du har to uavhengige nøkler
Eksakte algoritmer (verifiserbart)
Generering: CSPRNG
Hvordan masternøkkelen din beskyttes
| Lag | Hva er det | Hvor bor det |
|---|---|---|
| Passord | Tilgang til serveren. Pakker inn masternøkkelen din | I ditt minne + hash på serveren |
| Enhetshemmelighet | Usynlig andre faktor, generert automatisk ved installasjon | På din enhet (kan ikke trekkes ut) |
| Masternøkkel (24 ord) | 256 biter ekte entropi, generert tilfeldig. Bitcoin-nivå (BIP39) | På et papir du tar vare på + innpakket på serveren |
| Nøkkelrotasjon | Hver melding bruker en unik nøkkel som destrueres etterpå (Double Ratchet) | Automatisk, gjennomsiktig |
Hvis du endrer passordet ditt
Å endre passordet ditt skjer umiddelbart. Bare masternøkkelen din blir "pakket inn" på nytt med det nye passordet — identiteten din endres ikke, hvelvet ditt blir ikke re-kryptert, kontaktene dine påvirkes ikke, og dine 24 ord forblir de samme. Det er en operasjon på millisekunder.
Gjenoppretting
Hvis du mister passordet ditt, kan du få tilgang til hvelvet med dine 24 ord — uten å trenge server. Hvis du mister dine 24 ord, kan du logge inn med passordet ditt og serveren returnerer din innpakkede nøkkel. Hvis du mister begge, er dataene dine umulig å gjenopprette. Som i Bitcoin, er det sikkerhet ved design.
6. Hva skjer hvis noen får uautorisert tilgang til serveren
Hvis en angriper fikk full tilgang til Solo2-serveren, ville de få:
- Brukernavn og offentlige navn
- Tilkoblingskoder
- Offentlige nøkler (ubrukelige uten den private nøkkelen, som ligger i din nettleser)
- Passordavtrykk (ubrukelige uten et ekstremt kostbart brute-force angrep takket være Argon2id)
- Avtrykk av sesjonstokens (ubrukelige uten det originale tokenet)
- Ventende tilkoblingsforespørsler (interne ID-er, caducan en 3 dager)
- Kontotype, saldoer og registreringsdatoer
- Betalingsoppføringer (uten mulighet til å knytte dem til en spesifikk bruker)
Hva de IKKE ville fått:
- Ingen meldinger (de var aldri på serveren)
- Ingen filer (de var aldri på serveren)
- Ingen kontaktliste (den var aldri på serveren)
- Ingen chat-historikk (den var aldri på serveren)
- Ingen private krypteringsnøkler (de lever i din nettleser)
- Ingen IP-adresser (de blir ikke registrert)
7. Vårt engasjement
Dette manifestet vil bli oppdatert ved enhver relevant endring i datahåndteringen. Hvis vi legger til et nytt felt i databasen, vil det dukke opp her. Hvis vi fjerner noe, likeså.
Den gjeldende versjonen er alltid denne siden.