Base64 היא מערכת מספרי מיקום עם בסיס של 64 תווי ASCII (קוד אמריקאי סטנדרטי להחלפת מידע) הניתנים להדפסה. המערכת משמשת למשל להצגת קבצים בינאריים בדואר אלקטרוני. כל גרסאות Base64 משתמשות בתווים A-Z, a-z ו-0-9, 62 תווים בסך הכל, שני התווים החסרים מוחלפים בתווים שונים במערכות יישום. כל שלושה בתים מקוריים מקודדים בארבעה תווים.
היסטוריה של Base64
בהתחלה, ניתן היה לשלוח רק טקסט בדוא"ל (RFC 822). עם הזמן, יחד עם הטקסט, היה צורך להעביר קבצי אודיו, וידאו וגרפיקה, אפליקציות וכדומה. היה צורך להמיר קובץ בינארי לטקסט. Base64 נוסף לקידוד UUE הקיים אז (Uuencode), המשמש במפרט MIME (Multipurpose Internet Mail Extensions) (RFC 2045-2049).
MIME הוא תקן לתיאור כותרות בהודעות אלקטרוניות. השימוש בו מאפשר לשלוח מספר קבצים מצורפים במכתב אחד, למשל, קבצי ארכיון וטקסט או דפי HTML. תוכנת דואר אלקטרוני מודעת ל-MIME מחלצת בחופשיות את הארכיון מקובץ טקסט, מציגה את ההודעה ומנתחת את תגי ה-HTML. לדוגמה, Outlook Express מריץ אוטומטית סקריפטים המוטמעים בדף HTML.
Base64 נולד בעידן של שבעה, שישה ושלושה סיביות בתים. קידודים ישנים לא תמכו בתקן שמונה סיביות, בגלל זה, חלק מהמידע אבד כאשר הועבר מהמערכת הישנה לחדשה. לעתים קרובות, בעת שליחת מכתבים, שרת הדואר הפיל תוספת, שמינית, סיביות או לא שידר וידאו ותמונות. כדי לבטל בעיות כאלה, פותחו קידודים להמרת קוד בינארי לטקסט. המערכת הפופולרית והיעילה ביותר היא Base64, בשל הפשטות שלה היא משמשת בכל מקום.
אלגוריתם בשם "קידוד להדפסה" תואר לראשונה בשנת 1987, Base64 הופיע ביוני 1992. הגרסאות של מערכת זו הן Base16, Base32, Base36, Base58, Base85, Base91 ו-Base122. תקנים מאוחרים יותר נמצאים בשימוש פעיל בתחום ה-IT.
עובדה מעניינת
חלק מהמערכות משתמשות ב-Base58 כדי לקודד כתובות אתרים, השונה מ-Base64 בהיעדר תווים בטקסט הסופי שניתן לתפוס באופן דו-משמעי על ידי אדם. לא נכללים 0 (אפס), O (אותיות לטינית o), I (אותיות לטינית i), l (L לטינית קטנה). לא נכללים גם התווים + (פלוס) ו/(אלכסון), אשר, בעת קידוד כתובת אתר, עלולים להוביל לפרשנות שגויה של הכתובת.
Base64 מספק קידוד הפיך וניתן לשחזור. השירות מתרגם את התווים של טבלת הקוד שמונה סיביות לתווים שנשמרים במהלך העברת המידע ברשתות ובין מכשירים.