المدونة

لماذا تسجيل دخولك رقم، لا بريد إلكتروني

الحساب الذي لست بحاجة إليه هو رقم من 128 بت، تصدره آلة لا تستطيع بنيويًا فتح نفقك. إليك سبب وجوب صحة الأمرين معًا.

نُشر في 5 سبتمبر 2026 · آخر تحديث: 16 أكتوبر 2026

معظم التطبيقات تطلب عنوان بريد إلكتروني قبل أن تسأل عمّا أتيت من أجله فعلًا. لا يطلب ForestVPN بريدًا إلكترونيًا ولا كلمة مرور — افتحه، اضغط اتصال. إذا أردت اشتراكًا واحدًا على أكثر من جهاز، تحصل على رقم من 32 حرفًا بدلًا من ذلك، يُعرض مرة واحدة، وهذا هو نظام تسجيل الدخول بأكمله.

ذلك ليس اختيارًا في الأسلوب. إنه ما يتبقى بعد أن يتصادم مطلبان، والجزء المثير للاهتمام هو أيهما يفوز.

أين يعيش تسجيل الدخول عادة

زر "تسجيل الدخول عبر Apple" أو "تسجيل الدخول عبر Google" هو إعادة توجيه إلى نطاق شخص آخر — appleid.apple.com، أو accounts.google.com، أو مستأجر *.auth0.com. على هاتف يملك مسارًا مفتوحًا إلى تلك المضيفات، تكون إعادة التوجيه هذه بنية غير مرئية.

لا يمكننا افتراض أن ذلك المسار مفتوح، لأن جزءًا من مهمة هذا المنتج هو الاستمرار في العمل على شبكات لا تسمح لجهاز بالوصول إلا إلى قائمة قصيرة وثابتة من المضيفات. نموذج الأمان الكامل لوكيل التتابع (relay proxy) الخاص بنا هو تلك القائمة — ثلاثة أسماء، api.، وsess.، و catalog.fvpn.net، مطابقة تمامًا. توسيعها لتشمل مزوّد هوية تقف خلفه CDN يعني قبول مزوّد تقف الشبكة نفسها من التوزيع خلف شريحة كبيرة من الإنترنت، وهو ما يحوّل مُرحِّلًا ضيقًا إلى مُرحِّل عام الغرض. وعلى iOS تحديدًا، يعمل عرض الويب الخاص بتسجيل الدخول لدى مزوّد هوية خارجي خارج العملية (out of process) — لا توجد طريقة لإعداد وكيل على مستوى التطبيق للوصول إليه وتوجيهه عبر أي شيء نُشغّله نحن. تفشل إعادة التوجيه تمامًا في المكان الذي تحتاج فيه أكثر إلى النجاح.

إذن، الرقم ليس الخيار الودود الذي اخترناه بدلًا من الخيار المألوف. إنه الخيار الذي يظل يعمل ضمن القيد الذي كان أهم.

النصف الآخر: لا أحد يملك الرقم يمكنه رؤية حركة مرورك

قل رقم الحساب بطريقة مختلفة: إنه بيانات اعتماد تصدرها خدمة تعمل على Cloudflare Workers — تنفيذ محدود النطاق بالطلب، لا عملية طويلة الأمد، لا مقبس خام، وسقف ذاكرة لكل عزلة (isolate) بعشرات الميغابايت. لا شيء من ذلك قيدًا نلتف حوله. إنه السبب الذي يجعل بإمكان تلك الخدمة أن تُؤتمن على استحقاقك أصلًا:

no raw UDP or TCP sockets
no long-lived process — execution is request-scoped
128 MB per isolate
a few MB, compressed, is the entire deployable

آلة مبنية على هذا النحو لا يمكنها إنهاء نفق UDP ذي حالة — ليس "ليس بعد"، بل بنيويًا. لذا فإن الخوادم التي تنقل حركة مرورك فعليًا هي أسطول منفصل، على بنية تحتية منفصلة، ويلتقي الجانبان عبر شيء واحد بالضبط: تذكرة. يطلب جهازك من جانب Workers واحدة ويحصل على قيمة موقَّعة لكن غير مقروءة — يُنتَج التوقيع فوق رقم لا يراه الموقِّع أبدًا، لذا فإن التذكرة التي تقدّمها لاحقًا لا يمكن ربطها بالطلب الذي أصدرها. تُثبت أي فئة اشتراك اشترتها. لا تقول أي جهاز، ولا تقول من أنت.

هذا ما يجعل رقم الحساب مملًّا بالطريقة التي يحتاج أن يكون فيها. لا يوجد عمود في هذا النظام يضع رقم الحساب بجانب خادم خروج أو عنوان اتصلت منه — ليس "نختار ألا ننظر"، فالعمود ببساطة غير موجود، ويفشل فحص البناء إذا أُضيف واحد. هناك استثناء واحد أضيق ومقصود، ويتعلق بالجهاز، لا بالرقم: طوال وجود تذكرة نشطة، يُسمّي صف واحد بصمة مفتاح جهازك بجانب بصمة الجلسة التي ينتمي إليها، وهذا ما يتيح احتساب تذكرة مستهلكة ضمن حصتك وقطع جهاز مُلغى وسط الجلسة. يُحذف ذلك الصف خلال نحو يوم واحد من انتهاء الجلسة، وأسرع إذا استقرت بسرعة، ولا يحتوي حقلًا لخادم خروج أو عنوان. إذا ربطت جهازًا بحساب، فذلك الربط هو أقصى مدى يصله الأمر؛ رقم الحساب نفسه لا يلمس صف جلسة أبدًا. الخدمة التي ترى حركة مرورك فعلًا لا تتعرّف على الرقم أصلًا.

ما يكلفه ذلك، مذكورًا لا مخفيًا

لا شيء من هذا مجاني. يُعرض الرقم مرة واحدة ولا يُخزَّن في أي مكان لدينا؛ افقده من دون أي جهاز ما زال مرتبطًا به، ولا يوجد شيء لاستعادته به، لأنه لا يوجد شيء آخر يعرّفك لاستعادته مقابله. يمكن التراجع عن الربط: يستطيع الجهاز أن يسجّل خروجه بنفسه، ويستطيع أي جهاز آخر على الحساب إزالته (يتّسع الحساب لعشرة أجهزة؛ والجهاز الذي انضمّ خلال آخر 7 أيام لا يستطيع إزالة الأجهزة الأقدم، والراوتر لا يستطيع إزالة أجهزة أخرى). أما ما لا يمكن التراجع عنه فهو فقدان الرقم: لا توجد إعادة تعيين لكلمة مرور، لأن ذلك يحتاج إلى طريقة لإثبات أن الطلب جاء من المالك الحقيقي للحساب، وكانت النقطة الكاملة للتصميم هي ألا نجمع أبدًا أي شيء يمكن أن يثبت ذلك.

هذا تنازل حقيقي، لا حاشية، ونفضّل أن تعرفه من البداية على أن تكتشفه في اللحظة التي يهم فيها.

كل المقالات

العربية
اسألنا أي شيء