Base64 Encoder & Decoder
Μετατρέψτε κείμενο και αρχεία σε Base64 και αντίστροφα. Χειρίζεται σωστά το Unicode, υποστηρίζει το URL-safe base64url και σας λέει ακριβώς γιατί αποτυγχάνει μια μη έγκυρη είσοδος.
Τρέχει στον browser σαςΧωρίς εγγραφήΤίποτα δεν ανεβαίνει
Πώς να χρησιμοποιήσετε: Base64 κωδικοποίηση / αποκωδικοποίηση
- Επιλέξτε Κωδικοποίηση ή Αποκωδικοποίηση.
- Πληκτρολογήστε ή επικολλήστε την είσοδο. Το αποτέλεσμα ενημερώνεται καθώς πληκτρολογείτε.
- Για URLs, JWT και ονόματα αρχείων, τσεκάρετε URL-safe ώστε να χρησιμοποιούνται τα
-και_, και προαιρετικά αφαιρέστε τη συμπλήρωση=. - Για να ενσωματώσετε μια εικόνα ή γραμματοσειρά, πατήστε Κωδικοποίηση αρχείου και αφήστε τσεκαρισμένο το Έξοδος ως data URI.
- Αντιγράψτε το αποτέλεσμα ή χρησιμοποιήστε την Εναλλαγή για να το περάσετε ξανά προς την αντίθετη κατεύθυνση.
Πώς λειτουργεί το Base64
Το Base64 αναπαριστά δυαδικά δεδομένα με 64 εκτυπώσιμους χαρακτήρες ASCII: A-Z, a-z, 0-9, + και /. Κάθε 3 bytes εισόδου γίνονται 4 χαρακτήρες, οπότε τα κωδικοποιημένα δεδομένα είναι περίπου 33% μεγαλύτερα. Όταν το μήκος της εισόδου δεν είναι πολλαπλάσιο του 3, ένα ή δύο σύμβολα = συμπληρώνουν την έξοδο. Το Base64 είναι κωδικοποίηση, όχι κρυπτογράφηση: οποιοσδήποτε μπορεί να το αποκωδικοποιήσει.
Κανονικό Base64 και base64url
Οι χαρακτήρες + και / έχουν ειδική σημασία σε URLs και διαδρομές αρχείων. Το URL-safe αλφάβητο του RFC 4648 §5 τους αντικαθιστά με - και _ και συνήθως παραλείπει τη συμπλήρωση. Τα JWT, πολλές παράμετροι OAuth και ορισμένα cloud APIs χρησιμοποιούν base64url. Ο decoder εδώ δέχεται αυτόματα και τα δύο αλφάβητα.
Unicode και η παγίδα του btoa()
Στους browsers, το btoa("café") δουλεύει αλλά το btoa("日本") πετάει σφάλμα, επειδή το btoa δέχεται μόνο Latin-1. Η σωστή προσέγγιση είναι να κωδικοποιήσετε πρώτα το κείμενο σε bytes UTF-8, όπως κάνει αυτό το εργαλείο. Σε JavaScript: btoa(String.fromCharCode(...new TextEncoder().encode(text))), ή Buffer.from(text).toString('base64') στο Node.js.
Συνηθισμένες χρήσεις
- Data URIs για μικρές εικόνες και γραμματοσειρές σε CSS ή HTML
- Headers HTTP Basic authentication (κωδικοποιημένο
user:password) - Δυαδικά συνημμένα σε JSON payloads και email (MIME)
- Kubernetes Secrets, που αποθηκεύουν τις τιμές ως Base64