# Base64-enkoder og -dekoder

> Avansert Base64-verktøy for å kode og dekode tekst. Håndterer UTF-8-problemer, støtter URL-sikker formatering og forklarer kodingsprinsippet. Online og gratis.

URL: https://acrafto.com/no/base64-enkoder-dekoder/

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

Trenger du å konvertere lesbar tekst til Base64-format for bruk i HTTP-headere, eller omvendt, å tyde innholdet i et API-token? Vår **Base64 Tekst Enkoder & Dekoder** er et spesialisert verktøy for å arbeide med tekststrenger som også takler vanskeligheter som diakritiske tegn eller spesielle symboler.

> **Arbeider du med bilder?**  
> Hvis koden din starter med `data:image/png...` eller du vil konvertere en fil til tekst, vil dette verktøyet bare vise meningsløse tegn. Bruk vårt spesialiserte verktøy for bildekonvertering.

## Hvordan fungerer Base64-formatet?

Mange bruker Base64 daglig, men få vet hvordan det fungerer “under panseret”. Det er ikke magi, men enkel bitmatematikk.

Vanlig tekst på en datamaskin lagres i 8-bits grupper (1 byte). Base64 bruker imidlertid et “alfabet” med 64 tegn (`A-Z`, `a-z`, `0-9`, `+`, `/`). Fordi `2^6 = 64`, representerer ett Base64-tegn nøyaktig **6 biter** informasjon.

**Konverteringsprosess (Algoritme):**

1. Tre tegn fra teksten din tas (3 × 8 biter = 24 biter).
2. Disse 24 bitene deles inn i fire grupper à 6 biter.
3. Hver gruppe tildeles et tegn fra Base64-tabellen.

**Konsekvens:** Fordi vi lager fire tegn ut av tre, er den resulterende Base64-strengen alltid omtrent **33 % lengre** enn originalteksten.

## Tegnsettproblemet: Hvorfor ødelegger vanlige Base64-konvertere spesialtegn?

Hvis du noen gang har prøvd å kode ordet “Kůň” i nettleserkonsollen ved hjelp av funksjonen `btoa('Kůň')`, har du sannsynligvis fått en feil: *String contains characters outside of the Latin1 range.*

Base64 ble opprinnelig designet for 7-bits ASCII-tegn. Men spesialtegn, emoji og andre symboler (UTF-8) opptar mer enn én byte i minnet (multibyte-tegn).

- Bokstaven `a` = 1 byte.
- Bokstaven `æ` = 2 bytes.
- Emoji 🚀 = 4 bytes.

Vårt verktøy løser dette problemet. Før selve Base64-kodingen konverterer vi teksten korrekt til en sekvens av UTF-8-bytes. Dette gjør at du trygt kan kode JSON-objekter, tekster med spesialtegn og moderne symboler uten risiko for datakorrupsjon.

## Hvor brukes Base64 tekstkoding?

Mens Base64-bilder hovedsakelig brukes for innbygging i CSS/HTML, har tekstbasert Base64 helt andre bruksområder i backend-systemer:

### 1\. HTTP Basic Authentication

Når du logger på et API, ser headeren ofte slik ut: `Authorization: Basic YnJ1a2VyOnBhc3NvcmQ=` Bak denne koden skjuler det seg et enkelt sammensatt brukernavn og passord i formatet `bruker:passord`. Verktøyet vårt lar deg enkelt generere eller kontrollere disse headerne.

### 2\. JSON Web Tokens (JWT)

Moderne webapplikasjoner bruker såkalte JWT-er for pålogging. Et slikt token ser ut som tre lange strenger adskilt med et punktum. Datadelen (Payload) er et vanlig JSON-objekt kodet i Base64.

- **Tips:** Prøv å lime inn den midterste delen av JWT-tokenet ditt her og dekod det. Du vil se nøyaktig hvilke data applikasjonen registrerer om deg (f.eks. bruker-ID, utløpsdato).

### 3\. Konfigurasjonsfiler (Kubernetes Secrets)

Plattformer som Kubernetes lagrer hemmelige data (Secrets) i YAML-konfigurasjonsfiler nettopp i Base64. Dette er ikke kryptering, men en måte å lagre binære data eller tekst med problematiske tegn (nye linjer, anførselstegn) i en tekstfil.

## Hva er “URL-sikker Base64-koding” og hvorfor er det viktig?

Standard Base64-alfabetet inneholder tegnene `+` (pluss) og `/` (skråstrek). Begge disse tegnene har en spesiell betydning i URL-adresser:

- `/` skiller kataloger.
- `+` tolkes ofte som et mellomrom.

Hvis du sendte standard Base64 i en URL-parameter (f.eks. `site.com?token=ab/cd+ef`), kan serveren feiltolke dataene.

**Løsning (URL-sikker modus):** Vår bryter aktiverer **Base64URL**\-varianten (ifølge RFC 4648), som utfører disse endringene:

- `+` endres til `-` (bindestrek).
- `/` endres til `_` (understrek).
- På slutten fjernes tegnene `=` (padding), som ikke er nødvendige i URL-er.

---

## Myte: Base64 er ikke kryptering!

Det er viktig å forstå den grunnleggende forskjellen som nybegynnere ofte forveksler:

1. **Koding (Encoding - Base64):** Brukes for dataoverføring. Det er som å pakke en gjenstand i en koffert for at den ikke skal bli ødelagt underveis. Enhver som finner kofferten kan åpne den (dekode) og se innholdet. **Det er ikke sikkert for hemmelige data.**
2. **Kryptering (Encryption - AES, RSA):** Låser data med en nøkkel. Uten nøkkelen får du ikke tilgang til innholdet.
3. **Hashing (Hashing - SHA, MD5):** En enveisprosess (f.eks. for lagring av passord). Det er umulig å gjenopprette originalteksten fra resultatet.

*Hvis du trenger å sende et passord eller sensitive data, er Base64 alene ikke nok. Du må bruke HTTPS (SSL/TLS), som krypterer overføringen.*

---

## Ofte stilte spørsmål (FAQ)

### Hva betyr "="-tegnene på slutten av strengen?

Dette kalles "padding" (utfylling). Fordi Base64 koder data i grupper på 3 tegn, kan lengden på originalteksten noen ganger ikke være delelig med tre. Tegnene \`=\` legges til på slutten slik at dekoderen vet hvor mange biter den skal ignorere på slutten.

### Hvorfor vises den dekodede teksten som "uklar"?

Du prøver sannsynligvis å dekode data som ikke er tekst. Hvis en Base64-streng representerer en komprimert fil (ZIP), et bilde eller krypterte data, gir det ingen mening å konvertere til tekst (UTF-8). Prøv å finne ut dataenes opprinnelse.

### Fungerer verktøyet offline?

Ja. All konverteringslogikk er skrevet i JavaScript og kjører direkte i nettleseren din. Når siden er lastet, kan du koble fra internett, og verktøyet vil fortsatt fungere. Dataene dine sendes ingen steder.

## Other languages

- Čeština (cs): [Base64 Encoder a Decoder](https://acrafto.com/cs/base64-decoder-encoder/) ([Markdown](https://acrafto.com/cs/base64-decoder-encoder/index.md))
- Slovenčina (sk): [Base64 kódovač a dekódovač](https://acrafto.com/sk/base64-kodovac-dekodovac-online/) ([Markdown](https://acrafto.com/sk/base64-kodovac-dekodovac-online/index.md))
- English (en): [Base64 Encoder and Decoder](https://acrafto.com/en/base64-encoder-decoder/) ([Markdown](https://acrafto.com/en/base64-encoder-decoder/index.md))
- Deutsch (de): [Base64 Encoder und Decoder](https://acrafto.com/de/base64-encoder-decoder-online/) ([Markdown](https://acrafto.com/de/base64-encoder-decoder-online/index.md))
- Français (fr): [Encodeur et décodeur Base64](https://acrafto.com/fr/encodeur-decodeur-base64/) ([Markdown](https://acrafto.com/fr/encodeur-decodeur-base64/index.md))
- Español (es): [Codificador y decodificador Base64](https://acrafto.com/es/codificador-base64-decodificador-online/) ([Markdown](https://acrafto.com/es/codificador-base64-decodificador-online/index.md))
- Italiano (it): [Encoder e decoder Base64](https://acrafto.com/it/encoder-decoder-base64-online/) ([Markdown](https://acrafto.com/it/encoder-decoder-base64-online/index.md))
- Português (pt): [Codificador e decodificador Base64](https://acrafto.com/pt/encoder-decoder-base64-online/) ([Markdown](https://acrafto.com/pt/encoder-decoder-base64-online/index.md))
- Nederlands (nl): [Base64 encoder en decoder](https://acrafto.com/nl/base64-encoder-decoder/) ([Markdown](https://acrafto.com/nl/base64-encoder-decoder/index.md))
- Polski (pl): [Koder i dekoder Base64](https://acrafto.com/pl/koder-dekoder-base64-online/) ([Markdown](https://acrafto.com/pl/koder-dekoder-base64-online/index.md))
- Română (ro): [Base64 encoder și decoder](https://acrafto.com/ro/codor-decodor-base64/) ([Markdown](https://acrafto.com/ro/codor-decodor-base64/index.md))
- Magyar (hu): [Base64 kódoló és dekódoló](https://acrafto.com/hu/base64-kodolo-dekodolo-online/) ([Markdown](https://acrafto.com/hu/base64-kodolo-dekodolo-online/index.md))
- Ελληνικά (el): [Κωδικοποίηση και αποκωδικοποίηση Base64](https://acrafto.com/el/base64-encoder-decoder/) ([Markdown](https://acrafto.com/el/base64-encoder-decoder/index.md))
- Български (bg): [Base64 енкодер и декодер](https://acrafto.com/bg/base64-enkoder-dekoder-onlain/) ([Markdown](https://acrafto.com/bg/base64-enkoder-dekoder-onlain/index.md))
- Hrvatski (hr): [Base64 koder i dekoder](https://acrafto.com/hr/base64-koder-dekoder/) ([Markdown](https://acrafto.com/hr/base64-koder-dekoder/index.md))
- Slovenščina (sl): [Base64 kodirnik in dekodirnik](https://acrafto.com/sl/base64-kodirnik-dekodirnik/) ([Markdown](https://acrafto.com/sl/base64-kodirnik-dekodirnik/index.md))
- Eesti (et): [Base64 kodeerija ja dekodeerija](https://acrafto.com/et/base64-teisendaja/) ([Markdown](https://acrafto.com/et/base64-teisendaja/index.md))
- Latviešu (lv): [Base64 kodētājs un dekodētājs](https://acrafto.com/lv/base64-kodetajs-dekodetajs/) ([Markdown](https://acrafto.com/lv/base64-kodetajs-dekodetajs/index.md))
- Lietuvių (lt): [Base64 koduotuvas ir dekoduotuvas](https://acrafto.com/lt/base64-koduotuvas-dekoduotuvas/) ([Markdown](https://acrafto.com/lt/base64-koduotuvas-dekoduotuvas/index.md))
- Svenska (sv): [Base64 encode och decode](https://acrafto.com/sv/base64-kodare-avkodare-online/) ([Markdown](https://acrafto.com/sv/base64-kodare-avkodare-online/index.md))
- Dansk (da): [Base64 encoder og dekoder](https://acrafto.com/da/base64-encoder-dekoder-online/) ([Markdown](https://acrafto.com/da/base64-encoder-dekoder-online/index.md))
- Suomi (fi): [Base64-kooderi ja -dekooderi](https://acrafto.com/fi/base64-kooderi-dekooderi/) ([Markdown](https://acrafto.com/fi/base64-kooderi-dekooderi/index.md))
- Українська (uk): [Base64 кодер і декодер](https://acrafto.com/uk/base64-koder-dekoder-onlajn/) ([Markdown](https://acrafto.com/uk/base64-koder-dekoder-onlajn/index.md))
- Русский (ru): [Base64 кодировщик и декодировщик](https://acrafto.com/ru/base64-koder-dekoder/) ([Markdown](https://acrafto.com/ru/base64-koder-dekoder/index.md))
- Српски (sr): [Base64 enkoder i dekoder](https://acrafto.com/sr/base64-enkoder-dekoder-online/) ([Markdown](https://acrafto.com/sr/base64-enkoder-dekoder-online/index.md))
- Македонски (mk): [Base64 енкодер и декодер](https://acrafto.com/mk/base64-converter/) ([Markdown](https://acrafto.com/mk/base64-converter/index.md))
- Bosanski (bs): [Base64 koder i dekoder](https://acrafto.com/bs/base64-koder-dekoder/) ([Markdown](https://acrafto.com/bs/base64-koder-dekoder/index.md))
- Shqip (sq): [Base64 kodues dhe dekodues](https://acrafto.com/sq/kodues-dekodues-base64-online/) ([Markdown](https://acrafto.com/sq/kodues-dekodues-base64-online/index.md))
- Türkçe (tr): [Base64 kodlayıcı ve çözücü](https://acrafto.com/tr/base64-kodlayici-cozucu-online/) ([Markdown](https://acrafto.com/tr/base64-kodlayici-cozucu-online/index.md))
- 日本語 (ja): [Base64エンコード・デコード](https://acrafto.com/ja/base64-encoder-decoder/) ([Markdown](https://acrafto.com/ja/base64-encoder-decoder/index.md))
- 한국어 (ko): [Base64 인코딩 디코딩](https://acrafto.com/ko/base64-encoder-decoder/) ([Markdown](https://acrafto.com/ko/base64-encoder-decoder/index.md))
- العربية (ar): [ترميز وفك ترميز Base64](https://acrafto.com/ar/base64-encoder-decoder/) ([Markdown](https://acrafto.com/ar/base64-encoder-decoder/index.md))
- हिन्दी (hi): [Base64 एन्कोडर और डिकोडर](https://acrafto.com/hi/base64-encoder-decoder-online/) ([Markdown](https://acrafto.com/hi/base64-encoder-decoder-online/index.md))
- Bahasa Indonesia (id): [Base64 encode dan decode](https://acrafto.com/id/konverter-base64-online/) ([Markdown](https://acrafto.com/id/konverter-base64-online/index.md))
- Tiếng Việt (vi): [Mã hóa và giải mã Base64](https://acrafto.com/vi/base64-ma-hoa-giai-ma-online/) ([Markdown](https://acrafto.com/vi/base64-ma-hoa-giai-ma-online/index.md))
- ไทย (th): [เข้ารหัสและถอดรหัส Base64](https://acrafto.com/th/base64-encoder-decoder/) ([Markdown](https://acrafto.com/th/base64-encoder-decoder/index.md))
- עברית (he): [קידוד ופענוח Base64](https://acrafto.com/he/base64-encoder-decoder/) ([Markdown](https://acrafto.com/he/base64-encoder-decoder/index.md))
