كونكربت

تعمل وحدة Conscrypt على تسريع التحسينات الأمنية وتحسين أمان الجهاز دون الاعتماد على تحديثات OTA. يستخدم كود Java ومكتبة أصلية لتوفير تطبيق Android TLS بالإضافة إلى جزء كبير من وظائف تشفير Android مثل مولدات المفاتيح والأصفار وملخصات الرسائل. Conscrypt متاح بوصفه مكتبة مفتوحة المصدر ، رغم أن لديها بعض التخصصات عندما تدرج في منصة أندرويد.

تستخدم وحدة Conscrypt BoringSSL ، مكتبة الأم التي هي شوكة جوجل بينسل والذي يستخدم في العديد من منتجات Google لتشفير وTLS (وأبرزها جوجل كروم). ليس لدى BoringSSL إصدارات رسمية (جميع المستخدمين يبنون من الرأس) ولا تقدم أي ضمانات حول استقرار API أو ABI.

التغييرات في Android 10

لا يشتمل Android 9 على واجهة برمجة تطبيقات عامة خاصة بـ Android لـ Conscrypt ، ولكنه يستخدم بدلاً من ذلك موفر أمان ينفذ فئات قياسية لهندسة تشفير Java (JCA) بما في ذلك Cipher و MessageDigest و Java Secure Socket Extension (JSSE) ، بما في ذلك SSLSocket و SSLEngine. تستخدم للمستخدمين التفاعل مع تلك الفئات وبعض واجهات برمجة التطبيقات Conscrypt غير العامة من قبل libcore أو أطر التعليمات البرمجية.

الروبوت 10 يضيف عدد قليل من الطرق API العامة في android.net.ssl للوصول إلى وظائف Conscrypt التي لم يتم كشفها من قبل الطبقات تحت javax.net.ssl . الروبوت 10 يشمل أيضا نسخة اصغر من قلعة نطاط لتوفير-شعبية أقل أدوات التشفير كجزء من الروبوت وقت التشغيل (غير المدرجة في وحدة Conscrypt).

التنسيق والتبعيات

يتم توزيع وحدة Conscrypt باعتبارها APEX ملف يتضمن رمز Conscrypt جافا ومكتبة الأم Conscrypt أن الروابط حيوي للمكتبات الروبوت NDK (مثل liblog ). يتضمن مكتبة الأم أيضا نسخة من BoringSSL التي تم التحقق من صحة ( شهادة # 3753 ) من خلال NIST ل برنامج التشفير وحدة إثبات صلاحية و .

تكشف الوحدة النمطية Conscrypt عن واجهات برمجة التطبيقات التالية:

  • واجهات برمجة التطبيقات العامة هي امتدادات الطبقات واجهات في عبوات تحت java.* و javax.* ، بالإضافة إلى فصول تحت android.net.ssl.* . رمز التطبيق الخارجي لا يتصل بـ Conscrypt مباشرة. تضمن معايير واجهة برمجة تطبيقات النظام الأساسي أن تظل واجهات برمجة التطبيقات هذه متوافقة مع الإصدارات السابقة والأمامية.
  • منصة واجهات برمجة التطبيقات الأساسية واجهات برمجة التطبيقات التي تستخدمها الإطار للوصول إلى وظائف غير عامة مخفية. هذه محدودة نسبيًا ؛ أكبر المستخدم NetworkSecurityConfig ، الذي يمتد مدير الثقة Conscrypt (المكون الذي شهادات يتحقق) لتنفيذ ميزة التكوين أمن الشبكات .
  • تقتصر اجهات برمجة التطبيقات داخل النواة لمنشئات صفر حجة دعا عاكس من قبل الأجهزة JCA وJSEE.