Τι είναι αυτό το εργαλείο;
Το Base64 είναι ένα σχήμα κωδικοποίησης που μετατρέπει δυαδικά ή δεδομένα κειμένου σε ένα σύνολο 64 ασφαλών χαρακτήρων ASCII (A–Z, a–z, 0–9, + και /). Χρησιμοποιείται παντού στο λογισμικό: ενσωμάτωση εικόνων σε HTML/CSS, κεφαλίδες πιστοποίησης HTTP Basic, συνημμένα email (MIME), JSON Web Tokens, και ωφέλιμα φορτία API που πρέπει να επιβιώσουν σε κανάλια μόνο κειμένου.
Σημαντικό: το Base64 είναι κωδικοποίηση, όχι κρυπτογράφηση. Οποιοσδήποτε μπορεί να το αποκωδικοποιήσει. Ο σκοπός του είναι να κάνει τα δεδομένα ασφαλή για μετάδοση μέσα από συστήματα που κατανοούν μόνο κείμενο — όχι να τα κρατήσει μυστικά.
Το Base64 ορίζεται επίσημα στο RFC 4648, το οποίο ορίζει επίσης την παραλλαγή ασφαλή για URL που χρησιμοποιείται σε JWT και web API: αντικαθιστά το + με - και το / με _ ώστε η κωδικοποιημένη συμβολοσειρά να μπορεί να ταξιδέψει μέσα σε ένα URL χωρίς κωδικοποίηση ποσοστού.
Γιατί να το χρησιμοποιήσετε;
- Αποκωδικοποίηση tokens API, τμημάτων JWT και κεφαλίδων πιστοποίησης για να δεις τι περιέχουν.
- Κωδικοποίηση κειμένου για data URI, αρχεία ρυθμίσεων ή κεφαλίδες HTTP.
- Ασφαλές για UTF-8: emoji και μη λατινικοί χαρακτήρες κωδικοποιούνται και αποκωδικοποιούνται σωστά.
- 100% ιδιωτικό — η μετατροπή γίνεται στο πρόγραμμά σου περιήγησης, τίποτα δεν ανεβαίνει.
- Δωρεάν, χωρίς σύνδεση, χωρίς όρια μεγέθους.
Πώς χρησιμοποιείται
- Πληκτρολόγησε ή επικόλλησε το περιεχόμενό σου στο πλαίσιο εισόδου.
- Κάνε κλικ στο "Κωδικοποίηση" για να μετατρέψεις κείμενο σε Base64, ή στο "Αποκωδικοποίηση" για να μετατρέψεις Base64 πίσω σε κείμενο.
- Αν η αποκωδικοποίηση αποτύχει, η είσοδος δεν είναι έγκυρο Base64 — έλεγξε για χαρακτήρες που λείπουν ή επιπλέον κενά.
- Κάνε κλικ στο "Αντιγραφή" για να αντιγράψεις το αποτέλεσμα.
Παράδειγμα
Είσοδος
Hello, CodeKitHub! 你好 👋Έξοδος
SGVsbG8sIENvZGVLaXRIdWIhIOS9oOWlvSDwn5GLΠαρατήρησε πώς οι κινέζικοι χαρακτήρες και το emoji επιβιώνουν τη μετάβαση εκεί και πίσω — αυτό είναι το ασφαλές για UTF-8 κομμάτι.
Πρακτικές συμβουλές
- Τα tokens JWT είναι τρία τμήματα Base64 ενωμένα με τελείες — αποκωδικοποίησε τα δύο πρώτα (κεφαλίδα και ωφέλιμο φορτίο) ξεχωριστά για να τα διαβάσεις· το τρίτο είναι δυαδική υπογραφή και θα φαίνεται σαν θόρυβος.
- Αν η αποκωδικοποίηση αποτύχει σε τμήμα JWT, αυτό είναι κωδικοποίηση base64url: αντικατέστησε πρώτα το - με + και το _ με / (τα τυπικά εργαλεία περιμένουν το αλφάβητο +/).
- Κενά και αλλαγές γραμμής μέσα σε μια συμβολοσειρά Base64 είναι συνήθως αβλαβή υπολείμματα από email ή αρχεία καταγραφής, αλλά ένα γέμισμα = που λείπει στο τέλος συχνά δεν είναι — έλεγξε το μήκος πριν υποθέσεις ότι τα δεδομένα είναι κατεστραμμένα.
- Το Base64 φουσκώνει τα δεδομένα κατά ~33%. Εντάξει για μικρά ωφέλιμα φορτία· για εικόνες πάνω από λίγα KB, ένα πραγματικό αρχείο είναι σχεδόν πάντα καλύτερη επιλογή από ένα data URI.
Πραγματικά σενάρια χρήσης
Οι τρεις περιπτώσεις που φέρνουν κόσμο εδώ καθημερινά: ανάγνωση του τι υπάρχει μέσα σε κεφαλίδα Authorization ή JWT, αποκωδικοποίηση ενός πεδίου ωφέλιμου φορτίου webhook/API που έφτασε τυλιγμένο σε Base64 (συχνά JSON — μορφοποίησέ το μετά την αποκωδικοποίηση), και παραγωγή ενός data URI ή συμβολοσειράς Basic-Auth με το χέρι κατά τον εντοπισμό σφαλμάτων.
Για δυαδικά δεδομένα (εικόνες, αρχεία), θυμήσου ότι αυτό που θα πάρεις αποκωδικοποιώντας ως κείμενο είναι mojibake — τα δεδομένα μπορεί να είναι απόλυτα έγκυρα, απλώς δεν είναι κείμενο. Η κωδικοποίηση/αποκωδικοποίηση δυαδικών ανήκει στον κώδικα· αυτό το εργαλείο είναι βελτιστοποιημένο για τις περιπτώσεις κειμένου.
Πώς να διαγνώσεις μια αποτυχία αποκωδικοποίησης
Οι αποτυχίες αποκωδικοποίησης Base64 σχεδόν πάντα οφείλονται σε μία από τρεις αιτίες, κατά σειρά συχνότητας: η είσοδος ήταν στην πραγματικότητα base64url (χρησιμοποιεί - και _ αντί για τα τυπικά + και /, κοινό σε JWT και περιβάλλοντα ασφαλή για URL) και χρειάζεται εκείνοι οι χαρακτήρες να αντικατασταθούν πίσω πριν η τυπική αποκωδικοποίηση τα δεχτεί· η συμβολοσειρά περικόπηκε κάπου στη διαδρομή (μια αντιγραφή-επικόλληση που έχασε τους τελευταίους χαρακτήρες, ή μια γραμμή καταγραφής που κόπηκε), κάτι ανιχνεύσιμο επειδή το μήκος μιας έγκυρης συμβολοσειράς Base64 είναι πάντα πολλαπλάσιο του 4 όταν ληφθεί υπόψη το γέμισμα· ή παρείσακτοι χαρακτήρες (επιπλέον κενά, μια τυχαία αλλαγή γραμμής, ένας κατά λάθος διπλασιασμένος χαρακτήρας) εισήχθησαν κατά την αντιγραφή, γι' αυτό η επικόλληση απευθείας από μια ακατέργαστη πηγή αντί για επαναπληκτρολόγηση είναι πάντα ασφαλέστερη.
→ Μορφοποιητής JSON · Κωδικοποιητής / Αποκωδικοποιητής URL · Αποκωδικοποιητής JWT
Συχνές ερωτήσεις
Είναι το Base64 κρυπτογράφηση;
Όχι. Το Base64 είναι μια αναστρέψιμη κωδικοποίηση που μπορεί να αποκωδικοποιήσει οποιοσδήποτε — παρέχει μηδενική ασφάλεια. Αν χρειάζεσαι να προστατέψεις δεδομένα, χρησιμοποίησε πραγματική κρυπτογράφηση (όπως AES)· το Base64 είναι μόνο για να κάνει τα δεδομένα ασφαλή για μεταφορά ως κείμενο.
Γιατί η αποκωδικοποιημένη έξοδός μου φαίνεται σαν σκουπίδια;
Είτε η είσοδος δεν είναι στην πραγματικότητα Base64, είτε έχει περικοπεί, είτε τα αρχικά δεδομένα ήταν δυαδικά (όπως μια εικόνα) αντί για κείμενο. Τα δυαδικά δεδομένα δεν θα εμφανιστούν ως αναγνώσιμοι χαρακτήρες.
Τι είναι τα σύμβολα = στο τέλος;
Γέμισμα (padding). Το Base64 λειτουργεί σε μπλοκ 3 byte εισόδου → 4 χαρακτήρες εξόδου. Όταν το μήκος εισόδου δεν διαιρείται με το 3, ένα ή δύο χαρακτήρες = γεμίζουν το τελευταίο μπλοκ.
Λειτουργεί αυτό το εργαλείο με emoji και κινέζικους χαρακτήρες;
Ναι. Κωδικοποιεί το κείμενο ως byte UTF-8 πρώτα, που είναι η τυπική προσέγγιση. Τα απλοϊκά εργαλεία που χρησιμοποιούν απευθείας btoa() αποτυγχάνουν σε οποιονδήποτε χαρακτήρα εκτός Latin-1 — αυτό δεν αποτυγχάνει.
Ανεβαίνουν τα δεδομένα μου κάπου;
Όχι. Η κωδικοποίηση και αποκωδικοποίηση γίνονται εξ ολοκλήρου στο πρόγραμμά σου περιήγησης με JavaScript. Τα δεδομένα σου δεν φεύγουν ποτέ από τη συσκευή σου.