פענוח מילה פשוטה
SGVsbG8gV29ybGQ=
Hello World
ה-= בסוף הוא ריפוד כי Hello World הוא 11 בתים, שאינו כפולה של 3. הפענוח תמיד מסיר אותו נכון.
לקודד או לפענח מחרוזות וקבצי Base64 מיד.
עודכן לאחרונה
ב-Coddy לומדים דרך כתיבת קוד אמיתי בדפדפן: שיעורים אינטראקטיביים, משוב מיידי ועזרה מ-AI כשנתקעים.
Base64 היא שיטת קידוד שמייצגת נתונים בינאריים באמצעות 64 תווים ניתנים להדפסה. מפתחים משתמשים בה בכל פעם שמערכת שמבינה רק טקסט צריכה להעביר בתים: תמונות קטנות שמוטמעות ב-HTML, טוקנים, קבצים מצורפים לאימייל, data URL, סודות להעתקה בלוגים ושדות JSON שמאחסנים בלובים בינאריים.
Base64 הוא *קידוד*, לא הצפנה. פענוח של מחרוזת Base64 חושף בדרך כלל את התוכן המקורי מיד, ולכן אסור להתייחס אליו כגבול אבטחה. כל מה שנמצא בתוך Base64 הוא למעשה ציבורי, אלא אם הוצפן *לפני* הקידוד.
מאחורי הקלעים, Base64 לוקח 3 בתים (24 ביט) וכותב אותם מחדש כ-4 תווים מתוך אלפבית קבוע של 64 תווים (A עד Z, a עד z, 0 עד 9, +, /). כשאורך הקלט אינו כפולה של 3, המקודד מוסיף בסוף תו = אחד או שניים כריפוד. לכן מחרוזות Base64 מסתיימות לעתים קרובות ב-=.
= משלימים את הקבוצה האחרונה של 4 והם רגילים בהרבה מחרוזות Base64.+ וב-/) ו-Base64URL (משתמש ב-- וב-_ כדי שיהיה בטוח בכתובות URL וב-JWT).בחרו קידוד אם יש לכם טקסט רגיל או קובץ ואתם רוצים פלט Base64. בחרו פענוח אם יש לכם מחרוזת Base64 ואתם רוצים לקבל בחזרה את התוכן המקורי.
הדביקו מחרוזת בתיבת הטקסט, או גררו קובץ (תמונה, PDF, כל דבר) לאזור השחרור. קבצים מומרים ל-URL מסוג data: שמוכן להטמעה ב-HTML או ב-CSS.
פלט מקודד הוא מחרוזת ה-Base64. פלט מפוענח הוא הטקסט המקורי, או, אם הקלט היה קובץ, הבתים ששוחזרו כקישור להורדה.
לחצו על כפתור ההעתקה כדי לשים את התוצאה בלוח. הכול רץ בדפדפן, כך שהקלט לא עוזב את המחשב שלכם.
החלקים שתפגשו שוב ושוב ברגע שתתחילו לעבוד עם Base64, כפי שמוגדרים ב-RFC 4648.
| רכיב | משמעות | דוגמה |
|---|---|---|
| אלפבית | 64 התווים שבהם משתמש Base64 סטנדרטי | A–Z, a–z, 0–9, +, / |
| אלפבית בטוח ל-URL | משמש ב-JWT ובכתובות URL | A–Z, a–z, 0–9, -, _ |
| ריפוד | מרפד את הקבוצה האחרונה כשהאורך אינו כפולה של 3 | = או == |
| גודל קבוצה | בתים לכל מקטע מקודד ← 4 תווי פלט | 3 בתים ← 4 תווים |
| גידול באורך | הפלט גדול בכ-33% מהקלט | 100 B ← 136 תווים |
| Data URL | הטמעת קובץ ישירות ב-HTML/CSS | data:image/png;base64,... |
SGVsbG8gV29ybGQ=
Hello World
ה-= בסוף הוא ריפוד כי Hello World הוא 11 בתים, שאינו כפולה של 3. הפענוח תמיד מסיר אותו נכון.
{"role":"student","active":true}eyJyb2xlIjoic3R1ZGVudCIsImFjdGl2ZSI6dHJ1ZX0=
טוקני JWT מקודדים כל מקטע בדיוק כך, ולכן מטעני JWT מתחילים בדרך כלל ב-eyJ, שזו צורת ה-Base64 של {".
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNgAAIAAAUAAen8GVAAAAAASUVORK5CYII=
הקידומת מצהירה על סוג המדיה (image/png) ועל הקידוד (base64). כל מה שאחרי הפסיק הוא תוכן הקובץ. שימושי לתמונות זעירות שנטענות יחד עם הדף.
Pj4/Pyc+Pg==
Pj4_Pyc-Pg
Base64 בטוח ל-URL מחליף את + ב-- ואת / ב-_, כך שהערך יכול לשבת בתוך URL בלי escape נוסף. JWT משתמשים בגרסה הזו.
= ידנית ולהזין את התוצאה למפענח קפדני שמצפה לו. (מפענחים בטוחים ל-URL מקבלים בדרך כלל ריפוד חסר; מפענחים סטנדרטיים אולי לא.)= אחד או שניים כריפוד.atob() בדפדפנים, Buffer.from(str, 'base64') ב-Node.js, base64.b64decode() ב-Python.=?= הוא ריפוד. Base64 מפיק 4 תווים על כל 3 בתים של קלט. כשאורך הקלט אינו כפולה של 3, מתווספים = אחד או שניים כדי שאורך הפלט יישאר כפולה של 4.data:image/png;base64,... כך שהתמונה מוטמעת ישירות ב-HTML, ב-CSS או ב-JSON בלי בקשת רשת נפרדת.