الخزنة على حاسوبك: Argon2id وملف تعريف يقاوم التخمين
لا يحمل جانب الحاسوب في AirNox أي مفاتيح توقيع في وضع AirGap، لكنه يحمل مع ذلك أشياء تستحق الحماية: ما المحافظ التي لديك، وأي العناوين لك، ودفتر عناوينك، وإعداداتك. كل ذلك يعيش في ملف تعريف واحد مشفّر.

في هذه الصفحة
ملف تعريف واحد
كل ما يعرفه الحاسوب عنك موجود في ملف واحد مشفّر: المحافظ، وعناوينها وتسمياتها، ودفتر العناوين، وإعدادات الشبكات، والاقتران مع هاتفك، والبذور (seed) التي تستخدمها المحافظ غير المعزولة هوائيًا (air-gapped). يُفتح بكلمة مرورك، على الجهاز الذي أنشأه، ويُكتب بالعناية التي يستحقها ملف محفظة.
خوارزمية Argon2id، ولماذا يهم أن تكون مكلِفة للذاكرة
كلمة المرور وحدها سر ضعيف. يختار الناس كلمات قصيرة، ويستطيع حاسوب سريع أن يجرب مليارات التخمينات في الثانية أمام دالة تجزئة رخيصة. والدفاع هو أن تجعل كل تخمين مكلفًا، وأن تجعله مكلفًا بطريقة لا يستطيع العتاد المتخصص أن يختصرها.
تُخضع AirNox Wallet كلمة مرورك لخوارزمية Argon2id، الفائزة في مسابقة تجزئة كلمات المرور (Password Hashing Competition) والتوصية المعتمدة حاليًا لهذه المهمة بالذات. وهي خوارزمية مكلِفة للذاكرة (memory-hard): حسابها يتطلب كتلة كبيرة من الذاكرة طوال مدته، لا وقت المعالج فحسب. في بطاقة الرسوميات آلاف الأنوية، لكن ليس فيها آلاف الكتل الكبيرة من الذاكرة، فالحيلة المعتادة بتشغيل التخمينات بالتوازي على GPU لا تكسب إلا القليل. والعتاد المصمم خصيصًا لهذا الغرض ليس أفضل حالًا.

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

هذا اللاتماثل هو جوهر الفكرة. تدفع التكلفة مرة واحدة عند كل فتح للقفل، والثانية لا تعني شيئًا. أما من يخمّن فيدفعها مع كل تخمين. مليون تخمين تعني مليون ثانية من الانشغال الكامل لجهاز واحد، مع بصمة ذاكرة كبيرة لكل تخمين، ولا يستطيع المهاجمون توزيع العمل على رف من بطاقات الرسوميات لجعله رخيصًا.
مرتبط بالجهاز
ملف التعريف مرتبط بالحاسوب الذي أنشأه، وعلى الأجهزة المزوّدة بشريحة الأمان TPM 2.0 يكون هذا الارتباط مثبّتًا في الشريحة. إذا نُسخ الملف إلى جهاز آخر، فلن يُفتح بكلمة المرور وحدها. وهذا يحوّل الملف المسروق إلى مشكلة أصعب بكثير مما يكون عليه الملف المسروق عادة.
بقية الخزنة
تأخير متزايد. بعد المحاولات الخاطئة، تطول مدة الانتظار قبل المحاولة التالية. والتخمين المكلف أصلًا يصبح مكلفًا وبطيئًا.
قفل تلقائي عند الخمول. ابتعد فيقفل ملف التعريف نفسه. والعودة تكلّفك كلمة مرور واحدة.
ذاكرة مقفلة. ما دام ملف التعريف مفتوحًا، تعيش أسراره في ذاكرة يُطلب من نظام التشغيل ألا ينقلها إلى القرص. ولا تبقى البذرة فيها إلا ما دامت الحاجة إليها قائمة، ثم تُمسح فورًا، ويُمسح كل شيء حين تُغلق المحفظة أو تُقفل.
لا لقطات للشاشة. تُبقي المحفظة نوافذها خارج لقطات الشاشة وتسجيلاتها، فلا ترى أي أداة التقاط على الحاسوب نفسه ما تراه أنت.
كتابة آمنة. كل حفظ ذرّي: يُكتب الملف الجديد كاملًا ثم يحل محل القديم، فإذا تعطل البرنامج في منتصف الكتابة بقيت لديك النسخة السليمة السابقة، لا نسخة نصف مكتوبة أبدًا. والملف التالف يُنحّى جانبًا مع وسم اسمه، ولا يُستخدم أبدًا بصمت.
أذونات للمالك وحده. لا يستطيع قراءة ملف التعريف إلا حساب المستخدم الخاص بك، ولا أحد غيره على الجهاز.
ما يحميه، وما لا يحميه
في المحفظة المعزولة هوائيًا، يحمل ملف التعريف على الحاسوب العناوين والإعدادات، وتبقى المفاتيح على الهاتف. هنا تحمي الخزنة خصوصيتك وإعداداتك. أما في المحفظة التي تعيش بذرتها على الحاسوب، فالخزنة هي ما يقف بين مهاجم يملك ملفك وبين أموالك، ولهذا بُنيت على هذا النحو. ولهذا أيضًا تُعد AirNox Wallet وحدها، والبذرة في هذه الخزنة، خيارًا سليمًا للعمليات اليومية، بينما يبقى AirGap الطبقة القصوى لما يهمك أكثر. وفي الحالتين، اختيار كلمة مرور قوية يعود إليك. الخزنة تجعل لكل تخمين ثمنًا. لكنها لا تستطيع أن تجعل كلمة المرور القصيرة طويلة.
السلسلة كاملة
- افترض أن الحاسوب مخترَق
- Mass Adoption Security (أمان الانتشار الواسع): جهاز التوقيع هاتف تملكه أصلًا
- ثلاث طرق لعبور الفجوة: رموز QR وBluetooth LE وNFC
- خفيّ في الأثير: جهاز توقيع لا يعثر عليه أحد بالمسح
- لا ثقة بقناة النقل أبدًا
- ما يعرضه عليك الهاتف: تحليل المعاملات على جهاز التوقيع
- الهاتف يحتفظ بسجله الخاص
- الخزنة على حاسوبك: Argon2id وملف تعريف يقاوم التخمين
- تطبيقات dApp دون محفظة في المتصفح
- خادم MCP بقواعد: وكلاء الذكاء الاصطناعي ضمن حدود
- محفظة واحدة محمية لكل ذلك
- صغير وأصلي: C++، بلا بيئة تشغيل JavaScript، من محطة العمل إلى Raspberry Pi