כלי מפתחים בעברית — JSON, Base64, URL, UUID ו־Hash
רוב כלי המפתחים באינטרנט שולחים את מה שהדבקתם לשרת. כשמדובר בתגובת API עם טוקן או בפרטי לקוח, זו הרגלה שכדאי לשבור.
פורסם:
הבעיה שאף אחד לא מדבר עליה
מפתח מדביק תגובת API לכלי לעיצוב JSON כדי לקרוא אותה. בתוך התגובה יש טוקן, מזהה לקוח, לפעמים כתובת מייל. הכלי שולח את הכול לשרת של מישהו שלישי.
זה קורה עשרות פעמים ביום, בלי מחשבה. חמשת הכלים כאן עושים את אותו דבר — בדפדפן שלכם בלבד.
הדרך הישירה לוודא זאת היא לשונית הרשת בכלי הפיתוח (F12): הריצו כל אחד מהם ותראו שאין ולו בקשה אחת שנושאת את מה שהדבקתם. אפשר גם לנתק את האינטרנט — JSON, Base64, URL ו־UUID ימשיכו לעבוד מיד אחרי טעינת הדף. חישוב ה־Hash הוא היוצא מן הכלל: הוא מוריד ספריית WebAssembly בהפעלה הראשונה, ולכן שם צריך להריץ פעם אחת ורק אז לנתק.
עיצוב ואימות JSON
הכלי מסדר, מזער, מאמת וממיין מפתחות.
מה שמייחד אותו בעברית: הודעות השגיאה מצביעות על השורה והעמודה המדויקות ומסבירות בעברית מה לא תקין — עם סמן מתחת לתו הבעייתי. זה חשוב יותר ממה שנדמה, כי הודעות המנוע באנגלית לפעמים מצביעות למקום אחר לגמרי מהבעיה האמיתית.
המלכודות הנפוצות:
- פסיק עוקב —
{"a": 1,}אינו JSON תקין, למרות שבג’אווהסקריפט זה מותר. השגיאה הכי נפוצה בהעתקה מקוד. - גרשיים בודדים — JSON דורש מרכאות כפולות, תמיד, גם בשמות המפתחות.
- הערות —
// כךאינו חלק מהתקן. אם קיבלתם קובץ הגדרות עם הערות (JSONC), צריך להסיר אותן.
ועברית: הכלי לא ממיר אותיות עבריות ל־א. הן נשארות קריאות, וזה JSON תקין לחלוטין — התקן מתיר יוניקוד ישירות.
המרת Base64
הכלי ממיר טקסט וקבצים לשני הכיוונים, ומייצר גם data:URL מלא להטמעה בקוד.
הסיבה שהוא קיים: btoa("שלום") זורק שגיאה. הפונקציה המובנית בדפדפן יודעת לטפל רק בתווים בטווח Latin-1. הכלי כאן עובר דרך בתים ב־UTF-8, ולכן עברית, ניקוד ואפילו אימוג’י עוברים במלואם בשני הכיוונים.
אזהרה שחשוב להפנים: Base64 אינה הצפנה. כל אחד מפענח אותה בשנייה — בדיוק כמו שאתם עושים בכלי הזה. היא נועדה להעביר מידע בינארי בערוצים שמיועדים לטקסט, לא להסתיר אותו. לעולם אל תשתמשו בה להגנה על סיסמאות.
מתי data:URL משתלם: אייקונים קטנים, שם חוסכים בקשת רשת. לקבצים גדולים זה מנפח את הקוד ב־33% — עדיף קובץ רגיל.
קידוד כתובות URL
הכלי מבחין בין שני מצבים, וההבחנה הזו היא כל העניין:
“רכיב בודד” מקודד גם את : / ? & =. משתמשים בו לערך שנכנס אחרי סימן שוויון — מונח חיפוש, שם, ערך פרמטר.
“כתובת שלמה” משאיר את הסימנים האלה, כי שם הם חלק מהמבנה.
כלל אצבע: אם אתם מקודדים משהו שנכנס לתוך כתובת — רכיב בודד. אם אתם מקודדים את הכתובת עצמה — כתובת שלמה.
עברית בכתובות: כתובת עברית נראית כמו %D7%99%D7%A9%D7%A8%D7%90%D7%9C וזה תקין לגמרי — כל אות היא שני בתים. הדפדפן מציג לכם עברית ושולח את הצורה המקודדת. הדביקו כתובת כזו בכלי ופענחו כדי לראות אותה חוזרת.
מחולל UUID
הכלי מייצר מזהי v4 — עד 100 בבת אחת, עם אפשרות לאותיות גדולות ולסוגריים מסולסלים.
המזהים נוצרים דרך מנגנון האקראיות הקריפטוגרפי של הדפדפן, לא דרך פונקציית אקראיות רגילה. ההסתברות להתנגשות זניחה עד כדי כך שהיא קטנה מהסיכוי לתקלת חומרה.
מה שכדאי לזכור: UUID הוא מזהה, לא סוד. הוא מופיע בכתובות, בלוגים ובבסיסי נתונים. אל תשתמשו בו כטוקן סודי או כסיסמה.
חישוב Hash
הכלי מחשב MD5, SHA-1, SHA-256 ו־SHA-512 לטקסט ולקבצים — כולל קבצים של ג’יגה־בייטים, כי הקובץ נקרא במנות ולא נטען כולו לזיכרון.
התרחיש המרכזי: הורדתם קובץ והאתר פרסם לצידו ערך SHA-256. הדביקו אותו בשדה ההשוואה, והכלי יגיד מיד אם הקובץ שלכם זהה למקור. זה תופס גם הורדה שהשתבשה וגם קובץ שהוחלף.
למה MD5 מסומן “לא לאבטחה”: MD5 ו־SHA-1 שבורים קריפטוגרפית — אפשר לייצר במכוון שני קבצים שונים עם אותו ערך. הם עדיין שימושיים לזיהוי קבצים ולאיתור שגיאות העתקה, והרבה מערכות ותיקות מפרסמות רק אותם. לכן הם כאן, ולכן הם מסומנים.
שאלה שחוזרת: למה אותו טקסט נותן ערך שונה ממה שקיבלתם במקום אחר? כמעט תמיד בגלל תו נסתר — רווח בסוף, שורה ריקה, או סוג שונה של סוף שורה בין ווינדוס ללינוקס. שינוי של תו אחד משנה את הערך לגמרי, וזו בדיוק המטרה.
כלים נוספים באתר שעשויים לעזור
- תיקון עברית הפוכה — כשטקסט עברי יוצא הפוך או כג’יבריש מקובץ או ממסד נתונים. הסבר מלא במדריך על עברית הפוכה.
- מחולל QR — לקישורים, לרשת Wi-Fi ולכרטיס איש קשר. ראו מדריך ה־QR לעסק.
- בדיקת ספרת ביקורת — לאימות קלט של תעודת זהות או ח“פ בטופס. ההסבר המלא: איך עובדת ספרת הביקורת.