Encoderen en decoderen

Zet tekst gratis om naar Base64, URL-encoding, HTML-entiteiten, hexadecimaal, binair, ROT13 of morsecode, en weer terug. Alles direct in je browser.

Tekst omzetten naar code en weer terug

Met deze tool encodeer en decodeer je tekst in zeven veelgebruikte formaten. Encoderen betekent: dezelfde informatie opschrijven in een andere vorm, volgens vaste afspraken. Er gaat dus niets verloren en er komt geen wachtwoord aan te pas; wie de afspraak kent, kan de code altijd weer terugvertalen. Typ of plak je tekst, kies een methode en richting, en het resultaat verschijnt direct. Alles gebeurt in je eigen browser, dus wat je invult verlaat je apparaat niet.

Deze methodes zitten erin

  • Base64: zet elke soort data om in gewone letters, cijfers en de tekens + en /. Veel gebruikt om bestanden en afbeeldingen als tekst te versturen, bijvoorbeeld in e-mailbijlagen of webpagina's
  • URL-encoding: vervangt tekens die niet in een webadres mogen door een procentteken met een code, zoals een spatie die %20 wordt
  • HTML-entiteiten: maakt tekens als <, > en & veilig om letterlijk op een webpagina te tonen, zodat de browser ze niet als HTML-code leest
  • Hexadecimaal: toont de bytes van je tekst in het zestientallig stelsel, twee tekens per byte; handig voor programmeurs die data willen inspecteren
  • Binair: toont dezelfde bytes als enen en nullen, acht per byte; zo ziet je computer tekst er vanbinnen echt uit
  • ROT13: schuift elke letter dertien plaatsen op in het alfabet; een klassiek geheimschriftje om bijvoorbeeld een spoiler of puzzeloplossing onleesbaar te maken
  • Morsecode: vertaalt letters, cijfers en leestekens naar punten en strepen, met een / tussen de woorden

Zo werkt het

  • Methode en richting: kies wat je wilt omzetten en welke kant op; het resultaat wordt bij elke toetsaanslag bijgewerkt
  • Wissel richting: zet het resultaat met een klik in het invoerveld en draai de richting om, handig om een uitkomst meteen terug te vertalen
  • Foutmeldingen: plak je een ongeldige code, dan legt de tool uit wat er mis is in plaats van een half resultaat te tonen
  • URL-veilige Base64: een optie voor de base64url-variant die - en _ gebruikt, zodat de code veilig in een webadres past

Veelgestelde vragen

Nee, en dat verschil is belangrijk. Encoderen is een openbare afspraak over hoe je iets opschrijft; iedereen kan het zonder sleutel weer terugvertalen. Versleutelen (encryptie) is juist bedoeld om informatie geheim te houden: zonder de juiste sleutel is de inhoud niet te lezen. Zet dus nooit een wachtwoord of andere geheime informatie "veilig weg" in Base64 of ROT13, want voor een ander is dat net zo leesbaar als gewone tekst.

Base64 hakt de data in stukjes van 3 bytes (24 bits) en verdeelt die over 4 groepjes van 6 bits. Elk groepje van 6 bits kan 64 verschillende waarden hebben, en elke waarde krijgt een teken uit een vast alfabet: de hoofdletters A t/m Z, de kleine letters a t/m z, de cijfers 0 t/m 9 en de tekens + en /. Omdat er van elke 3 bytes 4 tekens worden gemaakt, wordt een Base64-code altijd ongeveer een derde langer dan het origineel. Het isgelijkteken aan het einde is opvulling voor als de lengte niet precies deelbaar is door 3.

In een webadres hebben veel tekens een vaste taak: het vraagteken start bijvoorbeeld de parameters en het en-teken scheidt ze. Wil je zulke tekens, spaties of accenten als gewone inhoud meesturen, dan moeten ze worden omgezet naar een procentteken met de hexadecimale code van de bytes: een spatie wordt %20 en de é wordt %C3%A9. Zo weet de server precies wat inhoud is en wat bij de structuur van het adres hoort.

Een browser leest < en > als het begin en einde van een HTML-tag. Wil je die tekens letterlijk op je pagina tonen, bijvoorbeeld in een stukje voorbeeldcode, dan schrijf je ze als entiteit: &lt; voor < en &gt; voor >. Deze tool zet de vijf tekens om die in HTML een speciale betekenis hebben: <, >, &, het dubbele en het enkele aanhalingsteken. Bij het decoderen worden ook benoemde entiteiten zoals &eacute; en nummercodes zoals &#233; gewoon herkend.

Beide tonen precies dezelfde bytes van je tekst, alleen in een ander talstelsel. Binair gebruikt twee cijfers (0 en 1) en heeft acht tekens per byte nodig; hexadecimaal gebruikt zestien tekens (0 t/m 9 en a t/m f) en is daardoor vier keer zo compact: twee tekens per byte. De letter H is binair bijvoorbeeld 01001000 en hexadecimaal 48. Programmeurs gebruiken meestal hexadecimaal, omdat het veel prettiger leest dan lange rijen enen en nullen.

ROT13 schuift elke letter 13 plaatsen op, en het alfabet heeft er 26. Twee keer 13 plaatsen opschuiven is dus precies een heel rondje, waardoor je weer bij de originele letter uitkomt. Encoderen en decoderen zijn bij ROT13 daarom exact dezelfde bewerking. Leuk om te weten: ROT13 is een speciaal geval van het geheimschrift dat Julius Caesar ruim tweeduizend jaar geleden al gebruikte, alleen schoof hij drie plaatsen op in plaats van dertien.

Ja. Het omzetten gebeurt volledig in je eigen browser. De tekst die je invult of plakt verlaat je apparaat niet, wordt nergens opgeslagen en is voor niemand anders zichtbaar.