
إطار عمل تشفيري سهل الاستخدام لحماية البيانات: مراسلة آمنة مع سرية أمامية (forward secrecy) وتخزين آمن للبيانات. يتميز بواجهات APIs موحدة عبر 14 منصة.
Themis هي مكتبة خدمات تشفيرية عالية المستوى مفتوحة المصدر لتأمين البيانات أثناء المصادقة والتخزين والمراسلة والتبادل الشبكي وغير ذلك. يحل Themis 90% من حالات استخدام حماية البيانات النموذجية الشائعة لدى معظم التطبيقات.
يساعد Themis في بناء ميزات تشفير بسيطة ومعقدة بسهولة وسرعة وأمان. يتيح Themis للمطورين التركيز على الشيء الرئيسي: تطوير تطبيقاتهم.
تشفير الأسرار المخزّنة في تطبيقاتك والخادم الخلفي: مفاتيح API، ورموز الجلسات، والملفات.
تشفير حقول البيانات الحساسة قبل تخزينها في قاعدة البيانات ("تشفير على مستوى الحقل في جانب التطبيق").
دعم التشفير القابل للبحث، وترميز البيانات، وإخفاء البيانات باستخدام Themis و Acra.
تبادل الأسرار بأمان: مشاركة البيانات الحساسة بين الأطراف، وبناء تطبيق دردشة بسيط بين المرضى والأطباء.
بناء أنظمة تشفير من طرف إلى طرف بمعمارية مركزيّة أو لامركزيّة: تشفير البيانات محليًا في تطبيق واحد، واستخدامها مشفّرة في كل مكان، وفك تشفيرها فقط للمستخدم المُوثَّق.
الحفاظ على جلسات آمنة في الوقت الفعلي: إرسال رسائل مشفّرة للتحكم في الأجهزة المتصلة من تطبيقك، واستقبال بيانات حساسة في الوقت الفعلي من تطبيقاتك إلى خادمك الخلفي.
مقارنة الأسرار بين الأطراف دون الكشف عنها (مصادقة قائمة على إثباتات المعرفة الصفرية).
مكتبة تشفير واحدة تناسب الجميع: Themis هو الخيار الأفضل للتطبيقات متعددة المنصات (مثل تطبيق iOS+Android+Electron مع خادم Node.js خلفي) لأنه يوفر واجهة برمجة تطبيقات متوافقة 100% ويعمل بنفس الطريقة عبر جميع المنصات المدعومة.
يوفر Themis لبنات بناء جاهزة (“أنظمة التشفير”) تعمل على تبسيط استخدام عمليات الأمان التشفيرية الأساسية.
يوفر Themis 4 خدمات تشفير مهمة:
أنشأنا Themis لبناء منتجات أخرى فوقه - أي Acra و Hermes.
راجع صفحة التثبيت لتثبيت Themis لتطبيقك للجوال أو الويب أو سطح المكتب أو الخادم الخلفي. نوصي بشدة باستخدام حزم التثبيت بدلاً من البناء من المصدر.
يتوفر Themis للغات/المنصات التالية، راجع أدلة اللغة لكل منها:
يدعم Themis معماريات المعالجات التالية: x86_64/i386 وARM وApple Silicon (ARM64) والعديد من معماريات Android.
نبني Themis ونتحقق منه على أحدث إصدارات أنظمة التشغيل المستقرة:
نخطط لتوسيع هذه القائمة بمجموعة أوسع من المنصات. إذا كنت ترغب في المساعدة في تحسين Themis أو إضافته إلى منصتك أو لغتك المفضلة — تواصل معنا.
توثيق Themis يحتوي على الوثائق الرسمية المتطورة باستمرار، والتي تغطي كل شيء بدءًا من إرشادات النشر إلى حالات الاستخدام، مع شرح موجز لأنظمة التشفير والمعمارية الكامنة خلف مكتبة Themis الرئيسية.
راجع التوثيق لمعرفة المزيد حول:
يعتمد Themis على خوارزميات تشفير مُثبتة مطبّقة بواسطة مكتبات تشفير معروفة مثل OpenSSL و LibreSSL و BoringSSL. راجع وثائق التشفير في Themis لمعرفة المزيد.
يتضمن هذا التوزيع برمجيات تشفير. قد تفرض الدولة التي تقيم فيها حاليًا قيودًا على استيراد برمجيات التشفير أو حيازتها أو استخدامها و/أو إعادة تصديرها إلى دولة أخرى. قبل استخدام أي برمجيات تشفير، يرجى مراجعة قوانين بلدك ولوائحه وسياساته المتعلقة باستيراد برمجيات التشفير أو حيازتها أو استخدامها وإعادة تصديرها، لمعرفة ما إذا كان ذلك مسموحًا به. راجع http://www.wassenaar.org/ لمزيد من المعلومات.
صنّفت وزارة التجارة الأمريكية، مكتب الصناعة والأمن (BIS)، هذا البرنامج ضمن رقم مراقبة سلع التصدير (ECCN) 5D002.C.1، والذي يشمل برمجيات أمن المعلومات التي تستخدم أو تؤدي وظائف تشفيرية بخوارزميات غير متماثلة. إن شكل وطريقة هذا التوزيع تجعله مؤهلًا للتصدير بموجب استثناء الترخيص ENC Technology Software Unrestricted (TSU) (انظر لوائح إدارة التصدير الصادرة عن BIS، القسم 740.13) لكل من الكود الهدف (object code) ومصدر الكود (source code).
إذا كان تطبيقك يستخدم Themis وتريد إرساله إلى Apple App Store، فهناك متطلبات معينة تتعلق بالإعلان عن استخدام أي تشفير.
اقرأ حول لوائح Apple للتصدير المتعلقة بالتشفير لـ Themis لمعرفة ما يجب فعله.
تتم مراجعة كل تغيير في المكتبة الأساسية لـ Themis والموافقة عليه من قبل فريقنا الداخلي من خبراء التشفير ومهندسي الأمان. لكل إصدار، نُجري تدقيقات داخلية بواسطة خبراء تشفير لا يعملون على Themis.
نستخدم الكثير من الاختبارات الأمنية الآلية، أي محللات الكود الثابت، وأدوات التخريب (fuzzing)، ومحللات الذاكرة، واختبارات الوحدة (لكل منصة)، واختبارات التكامل (لاكتشاف مشاكل التوافق بين اللغات وأنظمة التشغيل ومعماريات x86/x64 المختلفة المدعومة من Themis). اقرأ المزيد حول ممارساتنا في الاختبار الأمني في وثائق أمان Themis.
إذا كنت تعتقد أنك وجدت مشكلة متعلقة بالأمان، فيرجى مراسلتنا عبر البريد الإلكتروني على [email protected]. قد ينطبق برنامج مكافآت اكتشاف الثغرات.
بصفته مكتبة خدمات تشفيرية لمنصات الجوال والخوادم، فإن Themis هو أداة تشفير "حالة فنية متقدمة" توفر تبادلًا وتخزينًا آمنًا للبيانات.
باستخدام Themis، يمكنك تحقيق امتثال أفضل للوائح خصوصية البيانات الحالية، مثل:
اقرأ المزيد حول اللوائح في الوثائق.
Themis موصى به من قبل OWASP كمكتبة لتشفير البيانات لمنصات الجوال.
يُستخدم Themis على نطاق واسع في المشاريع غير التجارية والتجارية على حد سواء، يمكن العثور على بعض التطبيقات والمكتبات العامة هنا.
هل تريد أيضًا أن تظهر في مدونتنا وفي قائمة المساهمين؟ اكتب لنا عن المشروع الذي أنشأته باستخدام Themis!
إذا كنت تبحث عن شيء تساهم فيه وتكسب احترامًا دائمًا، فما عليك سوى اختيار أحد العناصر من قائمة المشكلات. توجه إلى إرشادات المساهمة كنقطة بداية.
دعم Themis على كل هذه المنصات العديدة عمل شاق، لكننا نبذل قصارى جهدنا لجعل استخدام Themis مريحًا للجميع. معظم المشكلات التي يواجهها مستخدمونا مرتبطة بعملية التثبيت وإدارة التبعيات. إذا واجهت أي تحديات، فيرجى إعلامنا.
في Cossack Labs، نقدم خدمات دعم احترافية لـ Themis والتطبيقات التي تستخدم Themis.
يشمل هذا الدعم، على سبيل المثال لا الحصر، تكامل المكتبة، مع التركيز على تطبيقات الويب والجوال؛ تصميم وبناء أنظمة تشفير من طرف إلى طرف للتطبيقات المحمولة؛ التدقيق الأمني، لتكاملات المكتبات الداخلية أو البروتوكولات عالية المستوى؛ تطوير تطبيقات مخصصة تتطلب تشفيرًا؛ الاستشارات وخدمات التدريب.
أرسل لنا بريدًا إلكترونيًا إلى [email protected] أو اطّلع على خدمات Cossack Labs للأمن السيبراني.
إذا كنت تريد طرح سؤال تقني، أو الإبلاغ عن خطأ، أو اقتراح ميزة، فلا تتردد في بدء نقاش على GitHub، أو فتح مشكلة في متتبع المشكلات، أو الكتابة إلى [email protected].
للتحدث مع الجناح التجاري لشركة Cossack Labs Limited، أرسل لنا بريدًا إلكترونيًا إلى [email protected].
| المنصة | التوثيق | الأمثلة | الإصدار |
|---|
| ⚛️ React Native (iOS, Android) | دليل React Native | docs/examples/react-native | |
| 🔶 Swift (iOS, macOS) | دليل Swift | docs/examples/swift | |
| 📱 Objective-C (iOS, macOS) | دليل Objective-C | docs/examples/objc | |
| ☕️ Java (Desktop) | دليل Java (Desktop) | docs/examples/java | |
| ☎️ Java (Android) | دليل Java (Android) | docs/examples/android | |
| 📞 Kotlin (Android) | دليل Kotlin (Android) | docs/examples/android | |
| 🔻 Ruby | دليل Ruby | docs/examples/ruby | |
| 🐍 Python | دليل Python | docs/examples/python | |
| 🐘 PHP | دليل PHP | docs/examples/php | |
| ➕ C++ | دليل C++ | docs/examples/c++ | |
| 🍭 Node.js | دليل JavaScript (Node.js) | docs/examples/js | |
| 🖥 WebAssembly | دليل JavaScript (WebAssembly) | docs/examples/js | |
| 🐹 Go | دليل Go | docs/examples/go | |
| 🦀 Rust | دليل Rust | docs/examples/rust | |
| 🕸 С++ PNaCl لمتصفح Google Chrome | مشروع WebThemis |