Skip to main content

rawops.dev

Skip to tool content

Base64 & Hex Encode/Decode

Encode and decode Base64 strings. Auto-detects input, handles URL-safe variant, supports batch decoding. Everything runs in your browser.

Plain Text
Type or paste text to encode...
Base64 Output

What is Base64 Encoding?

Base64 is a binary-to-text encoding scheme that represents binary data using 64 printable ASCII characters (A-Z, a-z, 0-9, +, /). It's commonly used to embed binary data in text-based formats like JSON, YAML, XML, and email (MIME).

Important: Base64 is encoding, not encryption. It provides no security — anyone can decode it. Never use Base64 as a way to “hide” sensitive data like passwords or API keys.

Common DevOps Use Cases

  • Kubernetes Secrets — Values in kubectl get secret -o yaml are Base64-encoded. Use batch mode to decode them all at once.
  • Config files in YAML — Embedding certificates, SSH keys, or binary configs in Helm charts or Kustomize overlays.
  • CI/CD variables — Many CI systems store secrets as Base64 to avoid special character issues.
  • Docker configs~/.docker/config.json stores registry auth tokens as Base64.
  • JWT tokens — Header and payload are Base64URL-encoded. Our JWT Decoder handles these automatically.

Standard vs URL-safe Base64

FeatureStandard (RFC 4648)URL-safe (RFC 4648 §5)
Characters 62-63+ /- _
Padding= (required)Optional (usually omitted)
Used inMIME, PEM, K8s SecretsJWT, URLs, filenames

Decoding Kubernetes Secrets

To quickly decode all values from a Kubernetes secret, run:

kubectl get secret my-secret -o jsonpath='{.data}' | jq -r 'to_entries[] | "\(.key): \(.value)"'

Then paste the output into this tool with “Decode each line separately” enabled. Each key-value pair will be decoded individually with a copy button per value.

Related Tools & Resources