TgWitness / التوثيق

ما تم اختباره ←

مرجع / الأدلة

Telegram · تصدير الحساب

تصدير ما يمكن للحساب قراءته الآن: النطاق، والمهام القابلة للاستئناف، وأرشيف موقّع، ونسخ مشاركة مصغّرة.

TgWitness / التوثيق · الأدلة والتحقق

الأدلة والتحقق

يحجز تصدير الحساب ذلك الحساب حصريًا. أوقف المراقبة أو عملية جمع أخرى مؤقتًا وبشكل صريح قبل البدء أو الاستئناف؛ فالتطبيق لا يوقفها تلقائيًا أبدًا.

بصفتك مسؤول التثبيت، اختر «ابدأ من هنا» → «تصدير حسابي»، أو «عمليات التصدير» → «حساب Telegram» → «تكوين تصدير الحساب». قم بتسجيل الدخول إذا لزم الأمر، وراجع النطاق، وابدأ عملية التصدير بشكل صريح. لا يلزم المراقبة المستمرة. «الملاحظات المحفوظة» هي تصدير منفصل للمجلة الحالية؛ حيث تتضمن ZIP جميع المصادر بغض النظر عن مرشحات المجلة. لكل مساحة عمل مهامها الخاصة، وهوية التوقيع، ومساحة التخزين الخاصة بها. لا يمكن للوصول الممنوح إلى اللوحة، بما في ذلك منحة التصدير العادية غير المقيدة، فتح هذه المسارات على مستوى الحساب.

تظهر عوامل تصفية المرسل والنص تحت «التصفية حسب المرسل» أو «نص الرسالة». يحتوي قسم «بيانات الحساب وطريقة الاتصال» على فئات حسابات اختيارية وخيار «Takeout» أو «الجلسة العادية»؛ ويُظهر ملخصه الخيارات النشطة حتى عند إغلاقه. يؤدي إغلاق هذه الأقسام إلى الاحتفاظ بإعداداتها. تظل مسودات التصدير والتقارير موجودة في جلسة اللوحة الحالية أثناء تغيير طرق العرض؛ ولا يتم حفظها عند إعادة تحميل المتصفح. تظل المهام الحالية قابلة للوصول من أي من خياري التصدير.

يقوم سير العمل هذا بتصدير البيانات التي يمكن الوصول إليها حاليًا من الحساب المتصل. الإعداد الافتراضي يستخدم Telegram Takeout؛ وهو ليس نسخة احتياطية لبيانات Telegram غير المتاحة أو المحذوفة. لا يتم استرداد المحادثات السرية، وسجل المحادثات غير القابل للوصول، والتعديلات السابقة. قد يفرض Telegram فترة انتظار قبل بدء Takeout. تعرض اللوحة فترة الانتظار هذه؛ ولا تقوم بتغيير طريقة النقل بصمت. خيار واجهة برمجة التطبيقات العادية الصريحة (regular-API) له نطاق تغطية مختلف ويسجل الفئات غير المدعومة.

Takeout هي واجهة برمجة التطبيقات (API) الرسمية للتصدير التي يستخدمها أيضًا Telegram Desktop. يمكن لـ TgWitness كتابة ملفات JSON متوافقة مع Desktop مباشرةً من البيانات التي جمعتها بنفسها؛ ولا يلزم استيراد أرشيف شخص آخر. تتوفر معرّفات الدردشات والرسائل عبر كلا وسيلتي النقل. لا تضمن الدردشة العامة أو إذن إعادة التوجيه تصديرًا أسرع أو إزالة تأخير الموافقة من جانب Takeout. قم بقياس نفس نطاق وإعدادات الوسائط قبل مقارنة السرعة.

بالنسبة لما يصل إلى 20 معرّف دردشة تم اختيارها صراحةً، يقوم التصدير عبر واجهة برمجة التطبيقات العادية بحلّ مشكلة هؤلاء الأقران مباشرةً قبل النظر في قائمة المحادثات الكاملة للحساب. وبالتالي، يمكن تصدير قناة عامة قابلة للقراءة دون الانضمام إليها، حتى لو كانت غائبة عن قائمة المحادثات. يتم الرجوع إلى قائمة المحادثات العادية في حالة الأقران غير المخزنة مؤقتًا. ويظل مرشح الأرشيف ساريًا: إذا لم يُرجع Telegram محادثة وتم استبعاد المحادثات المؤرشفة، يتم تسجيل حالة الأرشيف غير المعروفة على أنها إغفال. يحتفظ 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» بالتحقق من المحتوى الذي تم التقاطه بالفعل قبل المتابعة. قد تتجاوز الأرشيفات الكبيرة الموجودة على وحدات التخزين البطيئة المدة الزمنية المحددة في «Parameters → Panel action timeout» (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 جيجابايت، قم بتعيين --max-gib. تقوم اللوحة بالتحقق من صحة الأرشيفات المحلية المكتملة والموثقة باستخدام الحجم الموسع المعلن عنها وملخص ZIP المنشور؛ بينما تحتفظ واجهة سطر الأوامر الخارجية (CLI) بحد الحجم المستقل الخاص بها. تحقق قبل فتح ملف HTML القابل للقراءة. يعد أداة التحقق المدمجة في الأرشيف مريحة، لكن أداة التحقق التي يتم الحصول عليها بشكل مستقل تتجنب الثقة في التعليمات البرمجية القابلة للتنفيذ المرفقة مع الدليل.

يكتشف توقيع Ed25519 وعمليات التجزئة SHA-256 التغييرات بعد أن يقوم المجمع بتثبيت البايتات ذات الصلة. وهي لا تثبت أن Telegram قد وقّعت على تلك الرسائل، أو أن مشغل المجمع كان أمينًا، أو أن سجل الحساب كامل، أو أن المحكمة ستقبل هذه المواد. تستخدم أوقات التسجيل ساعة المجمع. ويجب تقييم الطوابع الزمنية المستقلة ومصدر الحصول المستقل بشكل منفصل.

إعداد إفصاح لمحامٍ أو مستلم آخر#

بعد تنزيل ملف تصدير جاهز، احتفظ بالصورة الأصلية ZIP وافتح index.html من نسخة مستخرجة. يشرح التقرير نطاقه والتغطية المتاحة و حدوده. تجمع مراجع السجل بين مرجع الأرشيف ومسار المستند و رقم السجل، بحيث يمكن للمستلم تحديد موقع نفس الإدخال في ملف HTML أو النسخة المطبوعة. للاطلاع على مثال عملي، انظر افتح التقرير الخيالي.

من عملية تصدير الحساب المكتملة، اختر «إعداد نسخة للمشاركة». يؤدي هذا إلى إنشاء نسخة مشتقة موقعة منفصلة. تظل الصورة المصدر ZIP دون تغيير وسرية؛ لا ترسلها مع النسخة المشتقة المصغرة ما لم يكن المستلم مخولًا لتلقي محتواها الكامل. اختر لغة التقرير بشكل منفصل. يتطلب تغيير اللغة أو أي إعداد من إعدادات التحديد معاينة أخرى قبل الإنشاء.

  1. أدخل الغرض من الكشف وحدد التواريخ ومعرفات المرسلين ومعايير النص الحرفي.
  2. اختر ما إذا كنت تريد الاحتفاظ بالهويات، أو الكشف عن المشاركين المدرجين فقط، أو استخدام أسماء مستعارة للجميع. في أي من وضعي استخدام الأسماء المستعارة، يتم أيضًا استبدال معرّفات/عناوين الدردشة ومعرّفات الرسائل. تظل الأسماء المستعارة ثابتة داخل عملية الكشف الواحدة، وتتغير بين عمليات الكشف المعدة بشكل مستقل.
  3. احتفظ بنص الرسالة، أو احذفه بالكامل، أو أضف أسماء/عبارات حرفية لإخفائها. في الأوضاع الخاصة، تقوم الأداة أيضًا بإخفاء أسماء المرسلين المخفية المعروفة وأسماء المستخدمين البديلة، ومعرفات المرسلين المكونة من رموز كاملة، وأسماء الدردشة المباشرة، والروابط، وعناوين البريد الإلكتروني، والسلاسل الشبيهة بأرقام الهواتف. تتعامل مطابقة الأسماء المعروفة مع تحويل حالة الأحرف في Unicode، بما في ذلك Straße/STRASSE. لا تتم إزالة عناوين المجموعات/القنوات العامة تلقائيًا من نص الرسالة. إذا تم تجاوز حد إخفاء الهوية المعروفة، فقم بتضييق نطاق التصدير المصدر أو حذف النص؛ حيث ترفض الأداة تخطي الأسماء اللاحقة بصمت. هذه قواعد تُطبق بأقصى جهد ممكن، وليست إخفاءً عامًا للهوية.
  4. اترك الملفات مستبعدة ما لم يكن المستلم بحاجة إليها. تحتفظ الملفات الأصلية المضمنة بدقة البكسل والصوت والنص والبيانات الوصفية. ولا تقوم الأداة بإخفاء هويتها.
  5. قم بمعاينة الأعداد والتحذيرات وعينات الرسائل المحولة، ثم قم بتأكيد الإنشاء صراحةً. تقتصر العينات على 12 رسالة و2,000 حرف نصي لكل منها. هذه عينة وليست مراجعة كاملة للنتيجة. يتطلب تغيير الإعدادات معاينة أخرى. تنتهي صلاحية المعاينة بعد 15 دقيقة وترتبط بجلسة عمل ذلك المسؤول وZIP الأصلي بالضبط؛ ولا يمكن إعادة استخدامها بعد إنشائها. تؤدي المعاينة الجديدة إلى إبطال صلاحية المعاينة السابقة لنفس المهمة والجلسة.
  6. افحص النتيجة الكاملة 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: حيث يتم إخفاء المعايير الخاصة الصريحة، وفي أوضاع استخدام الأسماء المستعارة، يتم إخفاء الهويات المخفية المعروفة هناك أيضًا، بما في ذلك عند حذف نص الرسالة. احرص على أن يكون الغرض خاليًا من التفاصيل الشخصية غير الضرورية؛ ويمكن أن يبقى سياق التعريف غير المعروف.

يربط ملف البيان الخاص بها الملفات المشتقة، والسياسة العامة، وهاش الصورة الأصلية 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

لا يُثبت ربط المصدر بحد ذاته أن عملية التحويل قد اختارت كل عنصر مطلوب أو أزالت كل تفصيل مميز. لم يتم تضمين النص الأصلي العادي كدليل. ويلزم إجراء مراجعة جديدة لإصدار هذا الحكم.

المشاركة والتسجيل المستضاف#

اختر الرسائل والملفات التي يحتاجها المستلم، وراجع النسخة الكاملة المراد مشاركتها، واحتفظ بالمصدر بشكل منفصل. سجل هاش ملف ZIP الذي تم تسليمه حتى يتمكن المستلم من التعرف على تلك النسخة بالضبط والتحقق منها. يتم استبدال المعرفات المحددة بأسماء مستعارة؛ ويظل النص المضمن والملفات الأصلية جزءًا من المراجعة.

تدعم GitHub Actions تصدير الحساب بالكامل والمحادثات المحددة عبر Takeout أو واجهة برمجة التطبيقات (API) العادية، بالإضافة إلى سجل أحداث لمحادثة واحدة. يشرح دليل الالتقاط المستضاف التحقق من الإعدادات والحد الزمني البالغ 120 دقيقة. للتحقق من نسخة مشاركة مشتقة من الالتقاط المستضاف، قارن هاش المصدر الخاص بها مع الأرشيف الأصلي وتحقق من شهادة ذلك الأرشيف باستخدام الفحوصات الخاصة بالوضع.

تنسيق الأدلة · تقارير الحالات