הפניה / ראיות
Telegram · ייצוא חשבונות
ייצא את מה שהחשבון יכול לקרוא כרגע: היקף, משימות הניתנות להמשך, ארכיון חתום ועותקי שיתוף ממוזערים.
TgWitness / תיעוד · ראיות ואימות
ייצוא חשבון מקצה את החשבון באופן בלעדי. לפני התחלה או חידוש יש להשהות במפורש ניטור או איסוף אחר; היישום לעולם אינו עוצר אותם אוטומטית.
כמנהל ההתקנה, בחר "התחל כאן" → "ייצא את החשבון שלי", או "ייצוא" → "חשבון Telegram" → "הגדר ייצוא חשבון". התחבר במידת הצורך, בדוק את היקף הייצוא, והפעל את הייצוא באופן מפורש. אין צורך במעקב רציף. "תצפיות שמורות" הוא ייצוא נפרד של היומן הקיים; ה-ZIP שלו כולל את כל המקורות ללא תלות במסנני היומן. לכל סביבת עבודה יש משימות, זהות חתימה ואחסון משלה. גישה ללוח שהונפקה, כולל הרשאת ייצוא רגילה ללא הגבלות, אינה יכולה לפתוח נתיבים אלה ברמת החשבון.
מסנני השולח והטקסט נפתחים תחת "סינון לפי שולח" או "טקסט ההודעה". "נתוני חשבון ושיטת חיבור" מכיל קטגוריות חשבון אופציונליות ובחירה בין "Takeout" ל"הפעלה רגילה"; הסיכום שלו מציג את האפשרויות הפעילות גם כשהוא סגור. סגירת חלקים אלה שומרת את הגדרותיהם. טיוטות ייצוא ודוחות נשארות בפעולת הפאנל הנוכחית בעת שינוי תצוגות; הן אינן נשמרות בעת טעינה מחדש של הדפדפן. ניתן לגשת למשימות קיימות משתי אפשרויות הייצוא.
זרימת עבודה זו מייצאת נתונים הנגישים כרגע לחשבון המחובר. ברירת המחדל היא שימוש ב-Telegram Takeout; זהו אינו גיבוי של נתוני Telegram שאינם זמינים או שנמחקו. צ'אטים סודיים, היסטוריה שאינה נגישה ועריכות קודמות אינן משוחזרות. Telegram עשויה להטיל תקופת המתנה לפני תחילת ה-Takeout. הלוח מציג את זמן ההמתנה הזה; הוא אינו מחליף את אמצעי ההעברה בשקט. האפשרות המפורשת של ה-API הרגיל כוללת כיסוי שונה ומתעדת קטגוריות שאינן נתמכות.
Takeout הוא ה-API הרשמי לייצוא, המשמש גם את Telegram Desktop. TgWitness יכול לכתוב JSON תואם ל-Desktop ישירות מהרכישה שלו; אין צורך לייבא ארכיון של מישהו אחר. מזהי צ'אט והודעות זמינים בשני אמצעי ההעברה. צ'אט ציבורי או הרשאה להעברה אינם מבטיחים ייצוא מהיר יותר או ביטול עיכוב האישור של Takeout. יש למדוד את אותו היקף ואת אותן הגדרות מדיה לפני השוואת המהירות.
עבור עד 20 מזהי צ'אט שנבחרו במפורש, ייצוא ה-API הרגיל פותר את אותם עמיתים
ישירות לפני שהוא בוחן את מלאי הדיאלוגים המלא של החשבון. ערוץ ציבורי
הניתן לקריאה יכול לפיכך להיות מיוצא מבלי להצטרף אליו, גם כאשר הוא נעדר
מרשימת הדיאלוגים. עמיתים שאינם מאוחסנים במטמון חוזרים למאגר הרגיל.
מסנן הארכיון נשאר בתוקף: אם טלגרם לא מחזירה דיאלוג וצ'אטים בארכיון
אינם נכללים, מצב הארכיון הלא ידוע נרשם כהשמטה.
Takeout שומר על נוהל המאגר בטווח מפוצל. אף אחד מהנתיבים לא מצטרף לצ'אטים או
משנה הרשאות העברה.
ב-JSON התואם למחשב שולחני, ערוצים ש-Telegram מסמן כ-left מופיעים תחת
left_chats, כולל ערוצים ציבוריים הניתנים לקריאה שהחשבון לא הצטרף אליהם.
הבקשות להשהיה מסוג FLOOD_WAIT ו-FLOOD_PREMIUM_WAIT נמשכות לאורך כל
התקופה המבוקשת על ידי השרת. מועד הסיום של החשבון נשמר גם לאחר חיבורים מחודשים והפעלות מחדש;
המתנה מאוחרת וקצרה יותר אינה יכולה לקצר אותו. מספר הניסיונות מוגבל, ביטול הבקשה משמר דפים חתומים,
ואישורי ה-API אינם מוחלפים כדי לעקוף מגבלת קצב. לא מתבצעת רכישת Premium.
בחרו מה ייאסף#
| הגדרה | משמעות |
|---|---|
| מטרה | תעדו מדוע יש צורך ברכישה זו. אל תציינו כאן שמות מיותרים או פרטים רגישים הקשורים לתיק. |
| שפת הדוח | בחרו את השפה של תוויות הדוח הקריא. טקסט ההודעה המקורי נשאר ללא שינוי; תוויות תבנית שלא תורגמו יופיעו באנגלית. השפה נקבעת באמצעות אפשרויות המשימה החתומות. |
| סוגי צ'אט / מזהי צ'אט | כל הסוגים שנבחרו, או רק הצ'אטים המפורטים; "הודעות שמורות" שייכות לצ'אטים פרטיים. ניתן לבחור בנפרד צ'אטים בארכיון. |
| תאריכים | UTC. תאריכי לוח השנה "מ-" ו-"עד" של הפאנל כלולים שניהם. ה-API משתמש בתאריכים כוללניים from_utc וללא to_utc; הלוח שולח את תחילת היום שלאחר "עד". גבול ריק משאיר את הצד הזה ללא הגבלה. |
| מזהי שולחים | רק הודעות מהשולחים המפורטים; רשימה ריקה כוללת את כל השולחים. |
| הטקסט מכיל | ביטויים מילוליים שאינם רגישים לאותיות רישיות, המתאימים באמצעות OR. תנאים של שולח/תאריך/הודעה אישית משולבים באמצעות AND. |
| הודעות משלך | שמור רק הודעות יוצאות. |
| סוגי מדיה | בחר קטגוריות של קבצים מצורפים, או נקה את הכל כדי להימנע מהורדת קבצי הודעות. |
| מגבלות קבצים / מדיה כוללת | נפח לכל קובץ ב-MiB ונפח כולל של מדיה שהורדה ב-GiB. טקסט, קבלות, דוחות קריאים ונתוני תקורה מסוג ZIP דורשים שטח דיסק נוסף. |
| קטגוריות חשבונות | לפרופיל, אנשי הקשר, תמונות הפרופיל, הסיפורים, מטא-נתוני ההפעלה ונתוני Takeout אחרים יש אפשרויות שליטה נפרדות. |
הגדרת ברירת המחדל של אוסף "Minimize" מבטלת קבצים ומטא-נתונים של חשבונות. מסנני שולח/תוכן חלים לפני שמירת דפי הודעות והורדת מדיה. Telegram עדיין מעבירה דפי היסטוריית API המכילים הודעות הדרושות להערכת מסננים אלה: הסינון אינו מבטיח שהודעות שלא נבחרו לעולם לא ייכנסו לזיכרון המעבד. תצפיות אחרות המתבצעות במרחב העבודה כוללות הגדרות היקף ושמירה משלהן.
היסטוריית תמונות הפרופיל והסיפורים אינם נבחרים כברירת מחדל. יש להשבית גם את הפרופיל ואת אנשי הקשר כאשר התיק דורש הודעות בלבד. אם קבצים מצורפים או מטא-נתונים אינם נחוצים, אי-הכללתם במהלך האיסוף תמנע שמירת עותק פרטי נוסף בייצוא זה.
נתוני תמונה משתמשים בגרסת התמונה הסטטית המזוהה במטא-נתונים ובמניפסטי ההאש שלהם, כולל תמונות עם גרסת אווטאר מונפשת. האנימציה הזו אינה מחליפה את התמונה הסטטית שנבחרה. תוכן קצר או ארוך יותר מהגודל שנצפה נרשם כקובץ מצורף שנכשל, וייצוג שונה במהלך חידוש הפניה לקובץ נדחה. כשלים אלה מותירים את הארכיון חלקי תוך שמירה על רשומות ההודעות. אימות עצמאי דוחה גם קבצים מצורפים שנשמרו שאורכם החתום סותר את הגודל או הייצוג שנצפו, כולל בארכיונים ישנים יותר.
סיכום, כיסוי ואימות#
כל משימה מקפיאה את האפשרויות ואת זהות החשבון שלה. המלאי והדפים שנלכדו חתומים; קבלות הדפים מתעדות חשישים, סמנים, זמנים, תוצאות קבצים מצורפים והקבלה שקדמה להם. רק דפים שאושרו מקדמים את ההתקדמות. הפעלה מחדש/המשך בודקים את הרישומים הללו לפני ההמשך. חשבון ששונה, דף חתום ששונה או שרשרת קבלות לא עקבית נדחים. לא ניתן לערוך את האפשרויות באמצע תהליך הרכישה: יש להתחיל משימה נוספת עבור היקף אחר.
הפעלת הפסקת זמנית (Pause) מפסיקה את פעולת החשבון הפועלת. הפעלה מחדש של היישום משאירה את העבודה שלא הושלמה זמינה להמשך מפורש. הפעלת Takeout שפג תוקפה מחייבת המשך מפורש; שינוי טווחי הפיצול ב-Telegram עשוי לדרוש איסוף נתונים חדש. המשך (Resume) שומר את התצפיות הקודמות, ולכן ייצוא המתמשך לאורך זמן אינו תמונת מצב אטומית אחת. פעולות אחרות המשנות את החשבון וייצואים סותרים נחסמים במהלך איסוף הנתונים. יש להמתין לסיום האריזה לפני מחיקת סביבת עבודה.
הפונקציה "Resume" מאמתת תוכן שכבר נלכד לפני שהיא ממשיכה. ארכיונים גדולים באחסון איטי עלולים לחרוג מהפרמטרים → פסק זמן לפעולות בלוח הבקרה שהוגדר (120 שניות כברירת מחדל). יש להגדיל את ההגדרה הזו לפני ניסיון חוזר; ביטול או הפרעה באחסון מותירים משימה בהשהיה, ובדיקות תקינות שנכשלו מותירות משימה שנכשלה עם הסבר. האימות חייב להסתיים או להיעצר בבטחה לפני שניתן לסגור את הקבצים. אף טענה לגבי תפוקה של חשבונות גדולים לא אומתה על ידי הבדיקות הסינתטיות.
הלוח מבחין בין היקף נבחר שהושלם לארכיון חלקי, ומתעד השמטות וקריאות שנכשלו. קבצים שהוחרגו בכוונה נבדלים מקבצים שנכשלו או שאינם זמינים. בדקו את הכיסוי גם כאשר אימות התקינות מצליח. אף קורא מקומי אינו יכול להוכיח ש-Telegram החזירה כל הודעה שאי פעם הייתה קיימת.
ZIP שהושלמו נשארים זמינים להורדות חוזרות ולהורדות בטווח HTTP. ארכיון חשבון מכיל manifest.json, manifest.sig, חתומים job.json, inventory.json, receipts/, מוסמך data/*.jsonl, נבחרים media/, HTML קריא ומאמת. הצמיד את טביעת האצבע של האספן דרך ערוץ עצמאי, ולאחר מכן אמת באמצעות התקנה מהימנה:
python -m tgwitness.verify account-export.zip --fingerprint TRUSTED_SHA256
עבור ארכיונים שתוכנם המורחב עולה על 4 GiB, יש להגדיר --max-gib. הפאנל מאמת את הארכיונים המקומיים המאושרים והשלמים שלו באמצעות הגודל המורחב המוצהר שלהם ותמצית ה-ZIP שפורסמה; ה-CLI החיצוני שומר על מגבלת הגודל העצמאית שלו. יש לאמת לפני פתיחת ה-HTML הקריא. המאמת המצורף לארכיון הוא נוח, אך מאמת שהושג באופן עצמאי מונע את הצורך לסמוך על קוד הניתן להפעלה המצורף לראיות.
חתימת Ed25519 וה-SHA-256 מזהים שינויים לאחר שהאספן ביצע commit של הבתים הרלוונטיים. הם אינם מוכיחים ש-Telegram חתמה על ההודעות הללו, שהמפעיל של האספן היה ישר, שההיסטוריה של החשבון שלמה, או שבית משפט יקבל את החומר. זמני הלכידה מבוססים על השעון של האספן. יש להעריך בנפרד חותמות זמן עצמאיות ומקור איסוף עצמאי.
הכן גילוי נאות עבור עורך דין או נמען אחר#
לאחר הורדת ייצוא מוגמר, שמרו את הקובץ המקורי ZIP ופתחו index.html
מהעותק שחולץ. הדוח מסביר את היקפו, את הכיסוי הזמין ואת
המגבלות. הפניות הרישום שלו משלבות את הפניה לארכיון, נתיב המסמך ו
מספר הרישום, כך שהנמען יכול לאתר את אותה רשומה ב-HTML או בהדפסה.
לדוגמה מעשית, פתח את הדוח הבדיוני.
מתוך ייצוא חשבון מוגמר, בחרו באפשרות "הכן עותק לשיתוף". פעולה זו יוצרת נגזרת חתומה נפרדת. המקור ZIP נשאר ללא שינוי ופרטי; אין לשלוח אותו יחד עם נגזרת ממוזערת, אלא אם כן הנמען מורשה לקבל את תוכנו המלא. בחרו את שפת הדוח בנפרד. שינוי השפה או כל הגדרת בחירה אחרת מחייב תצוגה מקדימה נוספת לפני היצירה.
- הזן את מטרת הגילוי ובחר תאריכים, מזהי שולחים וקריטריונים לטקסט מדויק.
- בחרו אם לשמור על זהויות, לחשוף רק את המשתתפים המפורטים, או להשתמש בשמות בדויים עבור כולם. בכל אחד ממצבי השימוש בשמות בדויים, גם מזהי/כותרות הצ'אט ומזהי ההודעות מוחלפים. שמות בדויים נשארים קבועים בתוך חשיפה אחת ומשתנים בין חשיפות שהוכנו באופן עצמאי.
- שמרו את טקסט ההודעה, השמיטו אותו לחלוטין, או הוסיפו שמות/ביטויים מילוליים להסוואה. במצבים פרטיים, הכלי גם מסווה שמות שולחים מוסתרים ידועים ושמות משתמש חלופיים, מזהי שולח שלמים, שמות בצ'אט ישיר, קישורים, כתובות דוא"ל ומחרוזות דמויות טלפון. התאמת שמות ידועים מטפלת בהמרת רישיות ב-Unicode, כולל
Straße/STRASSE. כותרות כלליות של קבוצות/ערוצים אינן מוסרות אוטומטית מטקסט ההודעה. אם חורגים ממגבלת הסתרת הזהויות הידועות, יש לצמצם את הייצוא מהמקור או להשמיט טקסט; הכלי מסרב לדלג בשקט על שמות הבאים. כללים אלה נועדו למאמץ מיטבי, ולא לאנונימיזציה כללית. - יש להשאיר קבצים מחוץ לתיעוד, אלא אם כן הנמען זקוק להם. הקבצים המקוריים הכלולים בתיעוד שומרים על הפיקסלים, האודיו, הטקסט והמטא-נתונים שלהם. הכלי אינו מבצע אנונימיזציה שלהם.
- הצג תצוגה מקדימה של הספירות, האזהרות ודוגמאות להודעות שעברו עיבוד, ולאחר מכן אשר במפורש את היצירה. הדוגמאות מוגבלות ל-12 הודעות ו-2,000 תווים טקסט בכל אחת. זוהי דוגמה, ולא סקירה מלאה של התוצאה. שינוי הגדרות מחייב תצוגה מקדימה נוספת. תצוגה מקדימה פוקעת לאחר 15 דקות והיא קשורה לאותה הפעלה של המנהל ולZIP המקורי המדויק; לא ניתן לעשות בה שימוש חוזר לאחר יצירתה. תצוגה מקדימה חדשה מבטלת את הקודמת עבור אותה משימה ואותה הפעלה.
- בדקו את התוצאה המלאה
index.htmlוהתוצאהmessages.jsonlמקומית לפני שתמסרו אותו. אם הוא חושף מידע מיותר, צרו גילוי חדש עם הגבלות חמורות יותר. אל תערכו את ה-ZIP החתום במקומו.
הודעות שלא נכללו בבחירה#
תצוגה מקדימה. גילוי אינו נראה שלם כאשר הוא אינו כזה. בתוך כל צ'אט המכיל לפחות הודעה אחת שנחשפה, ההודעות שהבחירה השמיטה מופיעות כסימנים, [withheld by selection — rule: sender] (או text, period). בחרו "הודעות שלא נכללו בבחירה": סמן אחד לכל רצף של הודעות שנשמרו ברצף (ברירת מחדל) או סמן אחד לכל הודעה. הסמנים נושאים רק את הכלל ואת המספר, לעולם לא טקסט, שולח, תאריך או קבצים. צ'אטים שבהם לא נחשף דבר אינם נכללים כלל, כך שהחבילה אינה מגלה את קיומם.
תשובות שנחשפו מציינות על מה הן עונות: הודעה הכלולה בעותק זה, הודעה שנשמרה על ידי הבחירה, או הודעה שאינה נמצאת בייצוא המקור (נמחקה לפני הייצוא או מעולם לא יוצאה; הייצוא אינו יכול להבחין בין השניים). הודעה שנשמרה, שעליה עונה תשובה שנחשפה, מקבלת תמיד סימון משלה, כך שהתשובה מפנה לרישום שמסביר מדוע היא ריקה. שלושת המצבים הללו נבדלים ממחיקות ומפערים באוסף, השייכים לייצוא המקור.
ב messages.jsonl (בפורמט tgwitness-account-disclosure-v2) לכל הודעה יש state: disclosed, או withheld עם rules ו count. לתשובה שנחשפה יש reply_to עם היעד id ו state (disclosed, withheld, not_in_source). המניפסט סופר הודעות, צ'אטים, מדיה ו withheld הודעות. verify.py דוחה סמן הנושא תוכן ותגובה המפנה לרשומה החסרה בחבילה; חבילות בגרסה 1 מאומתות כבעבר.
הפורמט הממוזער משמיט פרופילי חשבונות מובנים, אנשי קשר, אווטרים, הפעלות, סיפורים, אובייקטים גולמיים של Telegram, כותרות העברה, ציטוטי תשובות, כרטיסי אנשי קשר ומטא-נתוני מיקום. הוא אינו כולל את קבצי ה-JSONL המקוריים, הגדרות המסנן הפרטי, מפתח הכינוי ומפת הזהויות. טקסט שנבחר, זהויות שנשמרו במפורש וקבצים כלולים עשויים עדיין להכיל את אותם שמות, מזהים או ביטויים המשמשים במסננים אלה; הם דורשים בדיקה נפרדת. מדיניות הפרטיות ומפתח הכינוי נשמרים מוצפנים בכספת המקומית של המשימה; מחיקת המשימה מוחקת את רשומות הגילוי הפרטיות הקשורות אליה. רשומות מדיניות הפרסום מסננות לפי ספירה ולא לפי ערכי סינון. המטרה המוצהרת היא ציבורית במניפסט וב-HTML: קריטריונים פרטיים מפורשים, ובמצבי כינוי, זהויות נסתרות ידועות מוסוות שם גם כן, כולל כאשר טקסט ההודעה מושמט. יש לשמור על המטרה נקייה מפרטים אישיים מיותרים; הקשר מזהה לא ידוע יכול להישאר.
המניפסט שלו מאגד את הקבצים הנגזרים, את המדיניות הציבורית ואת ה-hash של ה-ZIP המקורי. אימות יכול לקבוע את תקינות הנתונים, ובמידה והמקור מסופק באופן מקומי, גם את התאמת הקישור למקור:
python -m tgwitness.verify minimized-disclosure.zip --fingerprint TRUSTED_SHA256
python -m tgwitness.verify minimized-disclosure.zip --fingerprint TRUSTED_SHA256 --evidence account-export.zip
קישור למקור אינו מהווה הוכחה עצמאית לכך שהשינוי בחר בכל פריט נדרש או הסיר כל פרט מזהה. הטקסט המקורי בגרסתו הבלתי מוצפנת אינו מוטמע כהוכחה. נדרשת בדיקה מחודשת על מנת להגיע למסקנה זו.
שיתוף ותיעוד מאוחסן#
יש לבחור את ההודעות והקבצים הדרושים למקבל, לעיין בעותק השיתוף המלא, ולשמור את המקור בנפרד. יש לתעד את ה-hash של קובץ ה-ZIP שנשלח, כדי שהמקבל יוכל לזהות ולאמת את אותו העותק המדויק. תהליך הפסאודונימיזציה מחליף את המזהים שנבחרו; הטקסט הכלול והקבצים המקוריים נשארים חלק מהסקירה.
GitHub Actions תומך בייצוא של חשבון מלא ושל צ'אטים נבחרים באמצעות Takeout או ה-API הרגיל, בנוסף ליומן אירועים של צ'אט בודד. מדריך הלכידה המארח מסביר את אימות ההגדרות ואת מגבלת ה-120 דקות. כדי לאמת עותק משותף שמקורו בלכידה מאוחסנת, יש להשוות את ה-hash של המקור לארכיון המקורי ולאמת את אישור הארכיון באמצעות הבדיקות הספציפיות למצב .