Developer Tools
Base64 Decode & Encode
Input Paste Base64-encoded text
Output
What is Base64 Encoding?
Base64 is a binary-to-text encoding scheme that represents binary data using a set of 64 ASCII characters. It is used to safely transport binary content over text-based protocols such as HTTP headers, URLs, and JSON payloads. Every 3 bytes of input become 4 Base64 characters, increasing the size by roughly 33%.
Common Use Cases
- Kubernetes Secrets: Values returned by
kubectl get secretare Base64-encoded. Paste them here to inspect the raw content. - Data URIs: Inline images in HTML and CSS are embedded using the
data:image/png;base64,…scheme. - HTTP Basic Auth: The
Authorization: Basicheader is the Base64 encoding ofusername:password. - JWT Tokens: The header and payload sections of JSON Web Tokens are Base64URL-encoded. Decode them here to inspect their claims.
- TLS Certificates: PEM-format certificates and private keys are Base64-encoded DER data wrapped in -----BEGIN/END----- markers.
Client-Side Execution
Data entered here is processed strictly inside your browser's memory and is never sent to any server. Your Kubernetes secrets, credentials, and tokens remain entirely private.
Base64 Is Not Encryption
Base64 is purely an encoding scheme — it provides zero confidentiality. Anyone can decode it without a key or password. For sensitive data, use real encryption: TLS in transit, AES at rest, or Kubernetes-native solutions like HashiCorp Vault or Sealed Secrets.
Frequently Asked Questions
Is Base64 the same as encryption?
No. Base64 is an encoding scheme, not an encryption algorithm. Anyone can decode it without a key or password — it provides zero confidentiality. For sensitive data, use real encryption: TLS in transit, AES at rest, or Kubernetes solutions like HashiCorp Vault or Sealed Secrets.
Why are Kubernetes Secret values Base64-encoded?
Kubernetes stores Secret values in Base64 not as a security measure, but to allow arbitrary binary data (TLS certificates, binary configs) to be stored inside YAML/JSON manifests. The
data field of kubectl get secret -o yaml output is Base64-encoded. Paste it directly here to decode.How do I decode a Kubernetes Secret with kubectl?
Run:
kubectl get secret <name> -n <ns> -o jsonpath='{.data.<key>}' | base64 -d. Or paste the encoded value into this tool — all decoding is done in your browser, no data leaves your machine.How does Base64 work in HTTP Basic Authentication?
The value in the
Authorization: Basic header is the Base64 encoding of the username:password string. You can decode it with this tool to inspect the contents. Basic Auth is only safe over HTTPS — over plain HTTP, credentials travel in the clear, since Base64 provides no confidentiality on its own.What is the difference between Base64 and Base64URL?
Standard Base64 uses
+, /, and = padding. Base64URL (used in JWTs and OAuth tokens) replaces these with URL-safe - and _ characters and omits padding. This tool automatically handles both formats when decoding.Does Base64 encoding increase file size?
Yes. Base64 converts every 3 bytes of binary data into 4 characters, increasing the encoded size by approximately 33%. For this reason, Base64 is used only where necessary (text-only protocols) — not as a general compression or storage format.