Iنموذج الحيازة
لا شيء يغادر.
لا شيء يتصل بالخارج.
يعمل SQAI حيث تعيش بياناتك. لا اتصال شبكي وقت الاستعلام يمكن اعتراضه، لا خدمة تحتفظ بصفوفك، لا قياس عن بُعد. تُحاسب هذه الوثيقة كل بايت يعبر الشبكة — حركتان بالضبط، وليست بياناتك إحداهما.
- صفوفك
تُقرأ داخل عمليتك. لا تُنسخ للخارج، لا تُرفع، لا يحتفظ بها أحد سواك.
أبداً - الخطط والنتائج
تُتحقق منها وتُنفَّذ داخل العملية. تعيش النتائج في مخزن محلي محدود وتنتهي صلاحيتها بعد 15 دقيقة.
أبداً - القياس عن بُعد
لا وجود له. لا استدعاء تحليلات، لا مُبلِّغ عن الأعطال، لا خارج يتصل به.
أبداً - حزمة وقت التشغيل
كود المحرك، يُجلب مرة واحدة من Cloudflare R2 ويُتحقق منه قبل كتابة أي ملف. الكود يدخل؛ الصفوف لا تخرج أبداً.
مرة · وارد · موقَّع - تسجيل دخول الجهاز
اختياري. ينقل رمز ترخيص موقَّعاً بين جهازك وخدمة الحساب — لا بياناتك.
اختياري · رمز فقط
لا شبكة وقت الاستعلام. اقطع الاتصال بعد التثبيت وكل استعلام يُجيب.
القراءة فقط ليست إعداداً.
إنها شكل الأداة.
4,574 قدرة مكشوفة · كل واحدة قراءة · لا مسار كتابة يمكن إساءة ضبطه
IIIالتنزيل الوحيد
ستة فحوصات قبل أن يستقر أي ملف.
حزمة وقت التشغيل هي الشيء الوحيد الذي يجلبه SQAI — كود المحرك من Cloudflare R2، يُعامَل كمصدر معادٍ حتى يثبت العكس. يعمل التحقق قبل الاستخراج، ويستمر ملفاً بملف، والتثبيت ذري.
- 01
مفتاح مقبول واحد
تُوقَّع الإصدارات بـ RS256 باستخدام مفتاح إصدار RSA-4096 واحد. مفتاح واحد للتحقق؛ لا شيء سواه موثوق.
- 02
التحقق قبل الاستخراج
يُتحقَّق من التوقيع على البيان قبل فك ضغط أي ملف. لا تصل حزمة مزوَّرة أو غير موقَّعة إلى هذه المرحلة أبدًا.
- 03
سلامة المخطط والمسارات
يجب أن يُحلَّل البيان وفق المخطط المتوقع، وأن يُحسَم كل مسار مُدرَج داخل جذر التثبيت.
- 04
sha256 لكل ملف
يُحسَب تجزئة كل ملف وتُقارَن بالبيان الموقَّع. بايت واحد مخالف يُفشل التثبيت بأكمله.
- 05
غير مُدرَج أو رابط رمزي — رفض
أي ملف غير مُدرَج في البيان، أو أي رابط رمزي، يُؤدي إلى رفض الحزمة فورًا.
- 06
تثبيت ذري مع حماية التراجع
يُستخرَج المحتوى في مجلد مؤقت ثم يُنقَل إلى موضعه بعملية إعادة تسمية ذرية واحدة. تُرفَض الإصدارات الأدنى من الحد المقبول بوصفها rollback_protected.
runtime_bundle 0.1.0sha256 4d64142e4c1ff63d299cfc8b172fdf97cb59169b545e1e02978e678a632ce6e1MIN_ACCEPTED_RUNTIME_VERSION 0.1.0 · below → rollback_protectedIVالمفاتيح وضبط الأخطاء
أسطح صغيرة، تبقى صغيرة.
مفتاح الجهاز
- الموقع
- ~/.sqai — في مجلدك الرئيسي، لا في أي مكان على مستوى النظام
- الصلاحيات
- وضع الملف 600 — قابل للقراءة من قِبَلك وحدك
- الإصدار
- تسجيل دخول اختياري للجهاز (رمز جهاز RFC 8628)
- ما يُنقَل
- رمز ترخيص موقَّع — لا بياناتك قط
ما يراه النموذج
ENOENT: no such file or directory — /Users/dana/finance/q3-actuals.csvENOENT: no such file or directoryتُجرِّد sanitizeMessage المسارات المطلقة من كل خطأ مرئي للنموذج. لا يدخل تخطيط نظام ملفاتك في سياق النموذج أبدًا.
Vمخزن النتائج
مقبض لا يُثبت شيئًا.
تبقى النتائج الكبيرة خلف مقبض بدلًا من إغراق سياق النموذج. صُمِّم المقبض ليكون عديم القيمة لأي جهة غير المستأجر المُصدِر.
- result_id
- 16 بايت عشوائية بترميز base64url — غير قابل للتخمين، ولا يرتبط بأي استعلام أو مستأجر
- التفويض
- مقيَّد بالمستأجر — لا يستطيع استرداده إلا المستأجر المُصدِر
- مستأجر خاطئ
- result_not_found — لا يمكن تمييزه عن مقبض لم يوجد قط
- مدة الصلاحية
- TTL 15 دقيقة · ≤256 نتيجة · 64 ميغابايت إجمالًا · 16 ميغابايت لكل مستأجر
result_id = base64url(randomBytes(16))
→ ok→ result_not_foundليس محظورًا — غير موجود. لا يُكشَف عن الوجود أبدًا.
VIدليل تشغيل الفجوة الهوائية
يعمل حيث القطع تام.
مستوى الاستعلام غير متصل بالشبكة بحكم التصميم؛ لا يُجلَب عبر الشبكة إلا وقت تشغيل الحوسبة. للتشغيل منفصلًا تمامًا، تسلَّم الحزمة بنفسك — لا يهتم المُتحقِّق بمصدر البايتات.
- 01
تعطيل التثبيت التلقائي
لن يجلب SQAI وقت التشغيل ضمنيًا أبدًا.
$export SQAI_RUNTIME_AUTO_INSTALL=0 - 02
نقل الحزمة عبر الفجوة
اجلب الحزمة الموقَّعة على جهاز متصل ثم انقلها وفق سياسة النقل الخاصة بك.
- 03
التثبيت من الملف
تُجرى الفحوصات الست كاملةً على الملف المحلي — التوقيع ذاته، والبيان ذاته، وتجزئات كل ملف ذاتها.
$sqai runtime install --from-file <bundle> - 04
التحقق في الموضع
أعِد التحقق من وقت التشغيل المثبَّت مقابل مفتاح الإصدار الوحيد المقبول، في أي وقت.
$sqai runtime verify
بعد التثبيت: لا شبكة على الإطلاق. تُحسَب الاستعلامات وفحوصات السياسة وتجزئات المصدر محليًا.
VIIأسئلة المراجعة
تُطرَح في كل مراجعة أمنية.
ما الذي يغادر جهازي بالضبط؟
عند الاستعلام، لا شيء. على مدار عمر التثبيت، يعبر الشبكة شيئان فقط: حزمة وقت تشغيل موقَّعة واردة من Cloudflare R2 (كود المحرك، لا الصفوف)، وإن اخترت تسجيل دخول الجهاز — رمز ترخيص موقَّع فحسب. لا توجد بيانات قياسية.
هل القراءة فقط مجرد علامة يمكن لأحدهم تغييرها؟
لا. علامة القراءة فقط على اتصال قاعدة البيانات وعدٌ؛ أما SQAI فهو سطح مفقود أصلاً. جميع الـ 4,574 قدرة المكشوفة هي عمليات قراءة — لا مسار كتابة، ولا DDL، ولا eval يستدعي الحماية — وبوابة الهروب (getUnsafeRuntime) لا يمكن للنموذج الوصول إليها قط.
هل يستطيع النموذج توسيع صلاحياته بنفسه؟
لا. السياسة ثابتة في الكود عند استدعاء createSQAI() وتُفحص داخل العملية قبل التنفيذ. مدخل الأداة الذي يملؤه النموذج لا يحمل أي حقول allowed*، وتسمية قدرة خارج القائمة المسموح بها يُطلق unsupported_operation.
هل يعمل SQAI في بيئة معزولة عن الشبكة؟
نعم. اضبط SQAI_RUNTIME_AUTO_INSTALL=0، وانقل الحزمة الموقَّعة بنفسك، ثم ثبِّتها بـ sqai runtime install --from-file. تعمل سلسلة التحقق ذاتها على الملف، ومستوى الاستعلام يعمل دون اتصال بالكامل بصرف النظر عن ذلك.
هل يمكن لرسالة خطأ أن تكشف مسارات الملفات للنموذج؟
لا. تُزيل sanitizeMessage المسارات المطلقة من كل خطأ مرئي للنموذج، فلا يعرف النموذج قط بنية نظام الملفات لديك.
الخطوة التالية
أحضر مراجعتك الأمنية.
تابع معنا الاستبيان — الحيازة، والتوقيع، والسياسة، والعزل — كل إجابة قابلة للتتبع في الكود.