Kort fortalt
- Ingen overførsel: filen læses og rettes i browseren. Indholdet når aldrig en server – heller ikke min.
- Ingen lagring: dataene findes kun i browserfanens hukommelse. Lukker du fanen, er de væk.
- Ingen konto, ingen database: der findes intet upload-endpoint, som kunne modtage filer.
- Servere i EU: websitet hostes af Hetzner Online GmbH i et datacenter i Finland.
- Ingen tredjeparter: ingen analyse, ingen reklamer, ingen Google Fonts, intet CDN.
- Teknisk håndhævet: en Content Security Policy forbyder browseren at forbinde til andre servere.
Sådan fungerer behandlingen
- Når du åbner siden, henter din browser siden, stylesheetet, skrifttyperne og et JavaScript-program fra mojibuster.com – som på ethvert website.
- Når du vælger en fil, læser browseren den fra din enhed ind i hukommelsen via File API. Der sendes intet.
- En web worker – en baggrundsproces i samme fane – registrerer kodningen og retter de ødelagte tegn.
- Browseren gør resultatet til en download eller kopierer det til udklipsholderen. Det sker også lokalt.
Mojibuster ligner altså mere et program, der kører i browseren, end en onlinetjeneste: serveren leverer kun koden. Derfor kan kundelister rettes uden upload, og det samme gælder databasedumps. Kun din egen enhed arbejder nogensinde med dine data.
Tjek selv: netværksfanen
Du behøver ikke tage mit ord for det. Browserens udviklerværktøjer viser hver forbindelse, en side opretter:
- Åbn denne side i Chrome, Edge eller Firefox, og tryk på
F12(Mac:Cmd+Option+I). - Skift til fanen Network, og ryd listen med ikonet med den overstregede cirkel.
- Træk en testfil ind i feltet ovenfor, og download resultatet.
- Se på listen: Der dukker højst én post op, som begynder med
fileellertext– den anonyme tæller fra næste afsnit. Klikker du på „Ja“ eller „Nej“ under resultatet, kommer der en postfeedbacktil, igen kun med tal. Der findes ingen forespørgsel med dit filindhold – medmindre du efter „Nej“ bevidst sender en fejlrapport med et uddrag (report).
Klik på et punkt, og åbn Payload for at se, hvad der faktisk blev sendt – for tælleren kun de tal, der beskrives nedenfor, intet indhold.
Den eneste automatiske forespørgsel: en anonym tæller
Efter en rettelse sender browseren en forespørgsel til /count/file eller /count/text. Efter et klik på „Ja“ eller „Nej, stadig ødelagt“ følger en forespørgsel til /count/feedback med de samme tal og svaret. Adressen indeholder kun nogle få tal: sidens sprog, filtypen, størrelsen, den registrerede kodning, fejltypen og antallet af rettede steder – intet filindhold, intet filnavn og intet id. Serveren skriver disse tal sammen med datoen og landet (fastlagt ud fra den forkortede IP-adresse) i en separat tællerfil – ingen IP-adresse, intet klokkeslæt, ingen browser. Sådan ved jeg, hvor ofte og til hvad værktøjet bruges. Detaljer findes i privatlivspolitikken. En fejlrapport med et tekstuddrag sendes kun, når nogen bevidst sender den; den leveres som e-mail og gemmes ikke (se privatlivspolitikken).
Tjek selv: offlinetesten
En endnu tydeligere test virker uden internet, fordi Mojibuster også kører offline:
- Åbn denne side én gang, mens du er online. Browseren beholder programkoden i sin cache.
- Afbryd forbindelsen: slå wifi fra, træk kablet ud, eller sæt throttling til Offline i fanen Network i udviklerværktøjerne.
- Genindlæs siden, og ret en fil. Det virker – uden forbindelse kan intet overføres.
Fra browsermenuen (Install app eller Add to Home Screen) kan du også installere Mojibuster som en app.
Teknisk lås: Content Security Policy
Oven i det sender serveren en streng Content Security Policy (CSP) med hver side. Denne header fastlægger, hvor en side overhovedet må forbinde til. Den håndhæves af browseren – ikke af min kode. Selv et fejlbehæftet eller manipuleret script kunne ikke sende data til en fremmed server.
connect-src 'self': scripts må kun tale med mojibuster.com, ingen anden server.script-src 'self'plus hashes: kun websitets eget JavaScript kører, ingen kode hentet andre steder fra.default-src 'self',form-action 'none',frame-ancestors 'none': ingen fremmede billeder, skrifttyper, rammer eller formularmål.
Du finder headeren i udviklerværktøjerne under Network → første punkt (dokumentet) → Response Headers → Content-Security-Policy.
Tjenesteudbydere
Mojibuster indlejrer intet fra andre udbydere: ingen Google Fonts, intet CDN, ingen analyse- eller reklametjenester, ingen plugins til sociale medier. Skrifttyper og ikoner leveres fra websitets egen server.
- Hosting: Hetzner Online GmbH, Industriestr. 25, 91710 Gunzenhausen. Serveren står i Finland (EU).
- Adgangslog: som enhver webserver logger den forespørgsler – med forkortede IP-adresser, som slettes efter 30 dage. Filindhold optræder aldrig deri, fordi det aldrig forlader browseren.
- Browserlagring: dit valg af tema og sprog samt programkoden til offlinebrug. En cookie sættes kun, hvis du selv vælger et sprog.
Har vi brug for en databehandleraftale?
Efter min vurdering nej. En databehandleraftale efter artikel 28 i databeskyttelsesforordningen (GDPR) kræves, når en tjenesteudbyder behandler personoplysninger på vegne af din organisation. Med Mojibuster behandler din organisation selv filen, på sin egen enhed. Indholdet når aldrig til mig: jeg kan hverken se eller gemme det. Mojibuster leverer kun programkoden – lidt ligesom software, du downloader og kører lokalt.
Selve besøget på websitet giver tekniske adgangsdata, som på ethvert website. Jeg er dataansvarlig for dem; det er beskrevet i privatlivspolitikken.
Vigtigt: dette er ikke juridisk rådgivning. Afklar brugen med din databeskyttelsesrådgiver – denne side skal gøre den vurdering lettere.
Begrænsninger, du bør kende
- Browserudvidelser kan læse med på ethvert website, også dette. Til fortrolige data skal du bruge en browserprofil uden udvidelser.
- Den rettede fil havner i din downloadmappe. De samme interne regler gælder for den som for originalen.
- Koden kan ændre sig, for eksempel ved opdateringer. Derfor kan netværks- og offlinetesten gentages når som helst.
Ofte stillede spørgsmål
Bliver mine filer uploadet?
Nej. Filen læses og rettes i browseren. Indholdet sendes ikke til nogen server, heller ikke Mojibusters.
Bliver noget gemt?
Intet indhold. Dataene findes kun i den åbne fanes hukommelse. Browseren gemmer kun dit valg af tema og sprog samt programkoden til offlinebrug.
Hvordan tjekker jeg, at ingen data overføres?
Åbn udviklerværktøjerne (F12), fanen Network, og ret en fil. Ud over én tællerforespørgsel uden indhold er der ingen. Eller test offline: værktøjet virker uden internet.
Må vi rette kundedata med Mojibuster?
Teknisk set forlader dataene ikke din enhed. Om det passer til jeres interne retningslinjer, afgør jeres databeskyttelsesrådgiver – detaljerne på denne side letter vurderingen.
Hvor står serveren?
I et datacenter hos Hetzner Online GmbH i Finland (EU). Den indeholder kun websitets filer, aldrig dine data.
Kan man spore, hvad der blev ændret i dataene?
Ja. »Hvad er ændret?« viser hver ændret linje, »Tjek grundigt« lister hver slags ændring med antal. Enkelte rettelser kan slås fra, før du gemmer. Alt sker i browseren, uden at data forlader enheden.