חטיבה עליונה · קריאה של 11 דקות
מה זה סימן מים דיגיטלי
מחביאים בתוך קובץ אות שהעין לא רואה והאוזן לא שומעת, אבל תוכנה כן. זה עובד טוב יותר ממה שנדמה בתמונות, גרוע יותר ממה שנדמה בטקסט, ולא פותר את השאלה שבגללה המציאו אותו
בשבוע שעבר פתחה גוגל לכלל העולם כלי שבודק אם קובץ נושא סימן מים מסוג SynthID, ויומיים קודם הודיעה OpenAI שתתחיל לסמן טקסט באיחוד האירופי. שתי ההודעות נשענות על אותו רעיון בן שלושים שנה. העמוד מסביר איך מחביאים ביט בתוך תמונה בלי שהעין תראה, למה בטקסט זו בעיה אחרת לגמרי, מה שובר את הסימן, ולמה הכלי שנפתח אינו גלאי AI למרות שכולם קוראים לו כך.
פורסם לראשונה במהדורת יום שישי, 9 באוקטובר 2026
הבעיה: אין מה לבדוק בקובץ
נניח שהגיעה אליכם תמונה, והשאלה היא אם מצלמה צילמה אותה או שמודל ייצר אותה. הבעיה אינה שקשה לענות. הבעיה היא שאין בקובץ מה לבדוק. קובץ JPEG שיצא ממודל וקובץ JPEG שיצא ממצלמה הם אותו דבר בדיוק: רשת של פיקסלים, וכל פיקסל שלושה מספרים בין 0 ל-255. אין שדה שאומר מי יצר אותי.
אפשר לנסות לזהות בדיעבד. מערכות כאלה קיימות, והן מחפשות חתימות סטטיסטיות שמודלים נוטים להשאיר. החיסרון שלהן ידוע: הן מתאמנות על דור מסוים של מודלים, ודור הבא כבר לא נראה כך. גרוע מכך, הן טועות לשני הכיוונים, והטעות שמסמנת תוכן אנושי כמלאכותי יקרה הרבה יותר מהטעות ההפוכה.
סימן מים הופך את כיוון השאלה. במקום לנסות לזהות תוצר של מכונה אחרי שנוצר, מי שייצר אותו מחביא בו סימן בזמן היצירה. אם הסימן נמצא, יש לכם תשובה חיובית ודאית כמעט. אם הוא לא נמצא, אין לכם שום דבר. זו ההבחנה החשובה בעמוד הזה, ונחזור אליה בסוף.
גלוי וסמוי, ולמה הגלוי כמעט חסר ערך
סימן מים גלוי הוא הלוגו השקוף למחצה שסוכנויות תמונות מטביעות על גבי צילום. מטרתו מסחרית: להרתיע משימוש בלי תשלום, ולפרסם את הבעלים. כולם רואים אותו, וזה כל העניין.
לסימון תוצרי מכונה הוא כמעט חסר תועלת, מכיוון שאפשר לחתוך אותו בשניה, או למלא את האזור בעזרת אותו סוג מודל שייצר את התמונה. מי שרוצה להסיר אותו, מסיר. ומכיוון שהוא תופס שטח בתמונה, מי שמסמן בכנות משלם על כך באיכות.
סימן מים סמוי מתפרס על פני כל הקובץ במקום להתרכז בפינה, ומשנה כל אזור קצת. אי אפשר לחתוך אותו, מכיוון שכל חלק מספיק גדול בתמונה נושא עותק שלו. כדי להסיר אותו צריך לפגוע בקובץ עצמו, ושם מתחיל המשחק האמיתי.
איך מחביאים ביט בתוך תמונה
הרעיון הבסיסי פשוט עד כדי אכזבה. פיקסל אדום בעוצמה 142 ופיקסל אדום בעוצמה 143 אינם נבדלים לעין. אפשר אם כך להחליט שערך זוגי מקודד 0 וערך אי-זוגי מקודד 1, ולהעביר על פני כל התמונה מסר שלם. זה נקרא הביט הפחות משמעותי, וזו הדוגמה שמלמדים ראשונה.
היא גם חסרת תועלת בפועל. כל דחיסת JPEG, כל שינוי גודל, כל צילום מסך מחשבים מחדש את ערכי הפיקסלים, והביט התחתון הוא בדיוק מה שנמחק ראשון. מערכת שמסתמכת עליו שורדת עד הפעם הראשונה שמישהו שולח את התמונה בוואטסאפ.
לכן המערכות הרציניות אינן עובדות על הפיקסלים אלא על התדרים. במקום לשאול כמה אדום יש בנקודה הזאת, מפרקים את התמונה לדפוסים: שטחים גדולים ואחידים הם תדר נמוך, שינויים חדים וקצוות הם תדר גבוה. כל תמונה היא סכום של דפוסים כאלה, בדיוק כמו שצליל הוא סכום של תדרים.
ההטמעה משנה את עוצמתם של תדרים בינוניים בכמות זעירה. בחירה זו אינה מקרית. התדרים הנמוכים הם מה שהעין רגישה אליו ביותר, ולכן שינוי שם ייראה. התדרים הגבוהים הם בדיוק מה שדחיסה זורקת כדי לחסוך מקום, ולכן שינוי שם ימחק. האמצע שורד את שניהם.
זה גם מה שמכתיב את המגבלה המרכזית. ככל שמשנים את התדרים יותר חזק כך הסימן שורד יותר התקפות, וככל שמשנים חזק יותר כך הוא מתחיל להיות נראה. אי אפשר למקסם את שניהם. זה בדיוק מה שהסימולטור בהמשך העמוד מראה.
בשמע ובווידאו העיקרון זהה, רק שהמודל של מה שלא מורגש שונה. בשמע מסתמכים על כך שצליל חזק מסתיר צליל חלש בתדר סמוך לו, ומחביאים את הסימן בצל הזה.
בטקסט אין איפה להתחבא
בתמונה יש מיליוני ערכים שאפשר להזיז כל אחד בשבריר. בטקסט אין כלום. אם משנים אות, המילה שגויה. אם מוסיפים רווח כפול או תו בלתי נראה, כל העתקה לעורך טקסט פשוט מוחקת אותו. נדרשת שיטה אחרת.
השיטה מנצלת את אופן הפעולה של המודל. מודל שפה אינו כותב משפט בבת אחת, אלא בוחר אסימון אחד בכל פעם מתוך רשימת מועמדים עם הסתברויות. במקומות רבים יש כמה בחירות סבירות באותה מידה: התחיל, החל, פתח.
לפני כל בחירה מחלקים את כל אוצר המילים לשתי קבוצות בצורה שנראית אקראית, אבל נקבעת על ידי מפתח סודי ועל ידי המילים שכבר נכתבו. אחר כך מטים את הבחירה קצת לטובת אחת הקבוצות. כל בחירה בודדת נראית טבעית לגמרי, אבל אחרי כמה מאות מילים השכיחות של אותה קבוצה גבוהה מהמצופה בצורה שאפשר למדוד. מי שמחזיק במפתח יודע לשחזר את החלוקה ולבדוק. מי שלא, רואה טקסט רגיל.
המחיר נגזר ישירות מהמנגנון: השיטה צריכה מקומות שבהם למודל יש באמת בחירה. בטקסט שאין בו חופש ניסוח, כמו פתרון תרגיל במתמטיקה או קוד, אין לאן להטות, והסימן חלש בהרבה. OpenAI כותבת זאת במפורש בהודעה שלה מ-5 באוקטובר.
המחיר השני הוא שהסימן תלוי באורך. ההודעה של OpenAI מפרטת שברמת התרעת שווא של אחוז אחד, הזיהוי עומד על כ-80 אחוזים בקטע של 200 אסימונים ועל כ-95 אחוזים בקטע של 400. בציטוט קצר אין מספיק בחירות כדי שהסטייה תהיה מובהקת.
מה שורד ומה שובר
חוסן הוא השאלה המעשית היחידה. סימן מים ששורד רק קובץ שלא נגעו בו אינו שווה דבר, מכיוון שאף קובץ ברשת אינו נשאר כפי שנוצר. הוא נדחס, משתנה בגודל, נחתך, מצולם ממסך ומועלה מחדש.
הטבלה מפרידה בין שני דברים ששווה להפריד ביניהם: מה הטכנולוגיה אמורה לעשות, ומה פורסם בפועל במספרים. ההפרדה הזאת היא עיקר הלקוח מהשבוע שעבר.
| מה עושים לקובץ | מה אמור לקרות לסימן | מה פורסם במספרים |
|---|---|---|
| דחיסת JPEG | שורד. זו ההתקפה שהשיטה תוכננה מולה | גוגל לא פרסמה נתון |
| שינוי גודל | שורד בדרך כלל | גוגל לא פרסמה נתון |
| חיתוך חלק מהתמונה | שורד כל עוד נשאר אזור מספיק גדול | גוגל לא פרסמה נתון |
| צילום מסך והעלאה מחדש | מוחלש, לא בהכרח נמחק | גוגל לא פרסמה נתון |
| ציור מחדש של אזור בעזרת מודל | האזור שצויר מחדש נקי מסימן | לא נדון בהודעה |
| החלפת עשירית מהמילים בטקסט | נחלש | הזיהוי יורד מ-92 ל-66 אחוזים |
| החלפת רבע מהמילים בטקסט | נשבר כמעט לגמרי | הזיהוי יורד ל-17 אחוזים |
| תרגום הטקסט לשפה אחרת | נשבר. האסימונים אחרים | לא פורסם נתון |
| הקלדת הטקסט מחדש במילים שלכם | לא קיים. זה טקסט חדש | לא רלוונטי |
למה זה לא הוכחה
סימן מים נותן תשובה חיובית חזקה ותשובה שלילית חסרת ערך. אם נמצא סימן, כמעט בוודאי מדובר בתוצר של מי שמסמן. אם לא נמצא סימן, זה יכול להיות תוצר אנושי, או תוצר של מודל שאינו מסמן, או תוצר מסומן שההעברה ברשת שחקה את הסימן, או תוצר שמישהו ניקה בכוונה. ארבע האפשרויות נראות זהות לחלוטין.
זה מה שהופך את הכלי שגוגל פתחה ב-7 באוקטובר לכלי אחר ממה שהכותרות אמרו עליו. הוא קורא סימני מים מסוג SynthID, ולכן הוא מכסה את המודלים של גוגל ורשימת שותפים סגורה. מודל שאינו ברשימה אינו מסומן כלל, והכלי לא יראה דבר. הוא קורא, לא מזהה.
קיימת גם הבעיה ההפוכה, שמדברים עליה פחות: הטבעה של סימן בתוכן שאדם יצר. מי שמחזיק במפתח יכול לסמן מה שירצה. זו הסיבה שהגלאי של OpenAI לטקסט אינו ציבורי אלא מוגבל לחוקרים ולגופים מאושרים, ומשמעות ההגבלה היא שמורה שרוצה לבדוק עבודה אינו יכול.
והמגבלה הגדולה מכולן היא פשוט מי משתתף. סימון עובד כשמי שמייצר בוחר לסמן. מודל פתוח שרץ על מחשב פרטי אינו מסמן, ואין מי שיאכוף זאת עליו. סימן מים הוא כלי שמשפר את הסיכוי לדעת מאין הגיע תוכן ממקור ידוע ומשתף פעולה. הוא אינו כלי שמגלה זיוף.
מי מסמן היום, ובמה
SynthID של גוגל עובד בתמונה, בווידאו ובשמע, ולא בטקסט. גוגל מדווחת שסימנה עד כה יותר מ-180 מיליארד תמונות וסרטונים ומעל 240 אלף שנות שמע. רשימת השותפים שהכלי יודע לקרוא כוללת את OpenAI, אנבידיה וקקאו, ואפל מופיעה כמי שתצטרף. הזמינות שתוארה כעולמית מנוסחת בהודעה עצמה כעולמית באנגלית.
OpenAI הודיעה על סימון טקסט בטכנולוגיה בשם textGrain, שהיא מתכוונת לשחרר בקוד פתוח. ההפעלה היא באיחוד האירופי, בכל התוכניות שם, ולא הייתה פעילה ביום ההודעה אלא תוכננה לשבועות הקרובים. בממשק המתכנתים ההסדר הפוך: הסימון כבוי כברירת מחדל והמפתח צריך לבקש אותו, ושם זה חל בכל העולם.
המשותף לשתי ההודעות הוא שהן אמצעי, לא פתרון. הן מקלות על מי שרוצה לתת ייחוס הוגן לתוכן שלו. הן אינן עונות על השאלה שהתחלנו ממנה, מכיוון שהיא שאלה שאי אפשר לענות עליה מתוך הקובץ.
מדמה: ההתנגשות בין איכות לשרידות
הזיזו את עוצמת ההטמעה ואת חומרת ההתקפה. שימו לב שאין מצב שבו גם ההפרש אינו מורגש וגם הסימן שורד הכול. זו המגבלה המרכזית של השיטה, והיא נובעת מהשיטה עצמה ולא ממימוש גרוע.
המדמה ממחיש התנגשות, הוא אינו מודד מערכת אמיתית. העקומה שבו היא מודל חשבוני פשוט, והמספרים אינם לקוחים ממוצר מסחרי. המספרים המדודים היחידים שפורסמו בשבוע שעבר הם של OpenAI, על סימון טקסט, והם מופיעים בטבלת החוסן שלמעלה.
בדקו את עצמכם
מה חשוב לזכור
- סימן מים אינו מזהה תוצר של מכונה. הוא מסמן אותו מראש, ולכן הוא עובד רק על מי שבוחר לסמן.
- סימן סמוי פזור על פני כל הקובץ, ולכן חיתוך אינו מסיר אותו. סימן גלוי מרוכז באזור אחד, ולכן הוא כמעט חסר ערך כאן.
- ההטמעה נעשית בתדרים בינוניים: העין רגישה לנמוכים, הדחיסה מוחקת את הגבוהים.
- יש התנגשות בלתי נמנעת בין עוצמת הסימן לבין איכות הקובץ. אי אפשר למקסם את שניהם.
- בטקסט מטים את בחירת המילה בין חלופות שקולות. לכן קטע קצר, טקסט מתמטי וכתיבה מחדש מחלישים את הסימן או מוחקים אותו.
- היעדר סימן אינו מעיד על דבר, ומי שמחזיק במפתח יכול גם לסמן תוכן שאדם כתב.
- הכלי שגוגל פתחה ב-7 באוקטובר קורא סימני SynthID בתמונה, בווידאו ובשמע. הוא אינו קורא טקסט ואינו רואה מודלים שאינם ברשימת השותפים.