إشعار

You can now request help from the Help page in your Play Console account.  If you don't have access to Play Console, ask your account admin for an invite.

استخدام ميزة "توقيع التطبيق" من Play

من خلال ميزة "توقيع التطبيق" من Play، تدير Google مفتاح توقيع تطبيقك وتحميه ضمن البنية التحتية الآمنة نفسها التي تستخدمها Google لتخزين مفاتيحها. وتتم حماية هذه المفاتيح من خلال "خدمة إدارة المفاتيح" (KMS) من Google. لمزيد من المعلومات حول هذه البنية التحتية الرائدة في المجال، يمكنك الاطّلاع على التقرير الموجز حول الأمان في Google Cloud.
 

ما أهمية ميزة "توقيع التطبيق" من Play؟ بالإضافة إلى حماية مفاتيحك من الفقدان الدائم أو الاختراق، يتيح لك التسجيل في ميزة "توقيع التطبيق" من Play الاستفادة من تحسينات Google Playعلى "مجموعة حزمات تطبيق Android"‏ (.aab). ومن خلال السماح لـ Google بتوقيع حِزم APK المحسَّنة للتوزيع التي تم إنشاؤها من حِزم تطبيقك، يمكنك الاستفادة من خدمات قيّمة، مثل الحماية التلقائية والترجمة التلقائية للسلاسل باستخدام نماذج Gemini. تستفيد الألعاب من خدمات تلقائية إضافية، مثل Sidekick في "ألعاب Play" واللعب أثناء تنزيل اللعبة والتجارب المجانية للألعاب المدفوعة.

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

المفاهيم الأساسية

عند استخدام ميزة "توقيع التطبيق" من Play، ستتعامل مع مفتاحَين مختلفَين. ومن المهم أن تفهم الفرق بينهما، وبين تنسيقاتهما التقنية، لتجنُّب مشاكل المصادقة مع واجهات برمجة التطبيقات التابعة لجهات خارجية.

نوع المفتاح من الجهة المسؤولة عنه؟ التفاصيل التقنية والغرض

مفتاح التحميل

أنت (يجب الاحتفاظ به في مكان آمن)

  • التنسيق: يتم تخزينه في ملف تخزين مفاتيح Java (‎.jks أو ‎.keystore).
  • المتطلبات: يجب أن يكون مفتاح RSA بحجم 2048 بت أو أكثر.
  • الغرض: يمكنك استخدام هذا المفتاح لتوقيع حِزمة تطبيقك قبل تحميلها إلى Play Console. وتستخدمه Google لإثبات هويتك. وإذا تم اختراقه أو فقدانه، يمكن لـ Google إعادة ضبط هذا المفتاح لك.
مفتاح توقيع التطبيق

Google Play

  • التنسيق: مرتبط بشهادة عامة (.der أو .pem).
  • المتطلبات: المفاتيح التي تنشئها Google هي مفاتيح RSA بحجم 4096 بت. يجب أن تكون المفاتيح المخصّصة من النوع RSA 2048 بت أو أعلى.
  • الغرض: تستخدم Google هذا المفتاح لتوقيع حِزم APK النهائية التي يتم تسليمها إلى أجهزة المستخدمين. يمكنك أن تطلب من Google إنشاءه أو يمكنك تقديم مفتاحك الخاص. لا يمكن إعادة ضبط هذا المفتاح في حال فقدانه إذا كنت تديره بنفسك (بدون ميزة "توقيع التطبيق" من Play).

ملاحظة: للحصول على أعلى مستوى من الأمان، يجب أن يختلف مفتاح التحميل عن مفتاح توقيع التطبيق.

طريقة توقيع Google لتطبيقك: عندما تنشئ Google حِزم APK وتوقّعها باستخدام مفتاح توقيع التطبيق، تستخدم أداة apksigner لإضافة طابعَين إلى بيان تطبيقك (com.android.stamp.source وcom.android.stamp.type). تضمن هذه الطوابع إمكانية تتبُّع حِزم APK بشكل آمن وصولًا إلى الموقِّع الأصلي.

إعداد ميزة "توقيع التطبيق" من Play

تعتمد عملية الإعداد على ما إذا كنت ستنشر تطبيقًا جديدًا أو ستنقل تطبيقًا حاليًا.

للتطبيقات الجديدة

  1. إنشاء مفتاح تحميل: أنشئ ملف تخزين مفاتيح لتوقيع حِزمة تطبيق الإصدار. يمكنك إنشاؤه في "استوديو Android" أو استخدام أداة Java keytool من سطر الأوامر.
  2. تحميل حِزمة تطبيقك: انتقِل إلى Play Console وأعِدّ إصدارًا جديدًا. عند تحميل حِزمة تطبيقك، تنشئ ميزة "توقيع التطبيق" من Play تلقائيًا مفتاح RSA قوي التشفير بحجم 4096 بت لإدارة تطبيقك وحمايته. وتستخدم أكثر من %90 من التطبيقات الجديدة هذا الإعداد التلقائي المقترَح، ولا يلزم اتّخاذ أي إجراء إضافي لإعداده.
  3. تغيير مفتاح توقيع التطبيق (اختياري): يمكن للمطوّرين المتقدّمين الذين يريدون إدارة مفاتيحهم الخاصة تغيير هذا الإعداد التلقائي. ويمكنك إجراء ذلك من خلال النقر على تغيير مفتاح التوقيع في قسم سلامة التطبيق من إصدارك، أو من خلال الانتقال إلى محمي من خلال Play > التوزيع على "متجر Play" > الانتقال إلى ميزة "توقيع التطبيق" من Play. يمكنك بعد ذلك اختيار:
    • استخدام المفتاح نفسه كتطبيق آخر في حساب المطوّر هذا
    • تقديم نسخة من مفتاح توقيع التطبيق: نزِّل أولاً مفتاح التشفير العام من Google من Play Console. بعد ذلك، استخدِم أداة Play Encrypt Private Key ‏ (PEPK) (يمكنك تنزيل الأداة المجمَّعة أو رمز المصدر الخاص بها مباشرةً من Play Console للتحقّق منها أو إنشائها بنفسك) لتشفير مفتاح RSA الحالي (2048 بت أو أكثر) وتحميله بشكل آمن من أي مستودع.

بالنسبة إلى التطبيقات الحالية

إذا كنت تدير مفاتيحك الخاصة وتحمّل حِزم APK حاليًا، يمكنك الترقية إلى ميزة "توقيع التطبيق" من Play للاستفادة من حِزم التطبيقات وتحسينات Google Play.

  1. انتقِل إلى محمي من خلال Play > التوزيع على "متجر Play" > الانتقال إلى ميزة "توقيع التطبيق" من Play في Play Console.
  2. اقبَل بنود الخدمة إذا لم يسبق لك إجراء ذلك.
  3. انقل نسخة من مفتاحك الأصلي: نزِّل أداة PEPK واتّبِع التعليمات المفصّلة الموحّدة لتشفير مفتاح توقيع التطبيق الحالي وتحميله من أي مستودع.
إنشاء مفتاح تحميل جديد (إجراء يُنصح به): أنشِئ مفتاحًا جديدًا في "استوديو Android" لاستخدامه كمفتاح تحميل من الآن فصاعدًا، وسجِّل شهادته في Play Console.

التسجيل لدى موفّري واجهة برمجة التطبيقات

إذا كان تطبيقك يستخدم واجهات برمجة تطبيقات (مثل "خرائط Google" أو OAuth أو "تسجيل الدخول باستخدام Facebook")، ستصادق هذه الخدمات على تطبيقك باستخدام بصمة مفتاح توقيع التطبيق.

بما أنّ Google توقّع حزمة APK النهائية، عليك تسجيل بصمة مفتاح توقيع التطبيق الذي تحتفظ به Google لدى موفّري واجهة برمجة التطبيقات، وليس مفتاح التحميل المحلي فقط.

  1. انتقِل إلى محمي من خلال Play > التوزيع على "متجر Play" > الانتقال إلى ميزة "توقيع التطبيق" من Play.
  2. انتقِل إلى قسم مفتاح توقيع التطبيق.
  3. انسخ البصمات المطلوبة (SHA-1 أو SHA-256).
  4. الصِق هذه البصمات في وحدة تحكّم موفّر واجهة برمجة التطبيقات (مثل Google Cloud Console).
    ملاحظة: عدِّل ملف assetlinks.json باستخدام هذه البصمات إذا كنت تستخدم ميزة Android App Links.

إدارة مفاتيحك

ترقية مفتاح توقيع التطبيق

إذا تم اختراق مفتاح توقيع تطبيقك أو كنت بحاجة إلى مفتاح أقوى من ناحية التشفير، يمكنك طلب ترقية سنوية للمفتاح لجميع عمليات التثبيت على الأجهزة التي تعمل بالإصدار Android N (مستوى واجهة برمجة التطبيقات 24) والإصدارات الأحدث.

طريقة فرض القيود على مستوى إصدارات Android:

  • الإصدار Android T (مستوى واجهة برمجة التطبيقات 33) والإصدارات الأحدث: يفرض نظام Android الأساسي بشكل صارم استخدام المفتاح الذي تمت ترقيته.
  • الإصدارات من Android N (مستوى واجهة برمجة التطبيقات 24) إلى Android S (مستوى واجهة برمجة التطبيقات 32): لا يفرض نظام Android الأساسي استخدام المفتاح الذي تمت ترقيته وسيظلّ يتعرّف على مفتاح التوقيع القديم. ومع ذلك، توفّر Google Play للحماية عملية تحقّق إضافية من خلال التأكّد من توقيع تحديثات التطبيق باستخدام المفتاح الذي تمت ترقيته (ما لم يوقِف المستخدم الخدمة).

اعتبارات مهمّة:

  • البيانات التي تتم مشاركتها: نظرًا لأنّ النظام الأساسي لا يفرض استخدام المفتاح الذي تمت ترقيته على الإصدار Android S (مستوى واجهة برمجة التطبيقات 32) والإصدارات الأقدم، إذا كنت تستخدم المفتاح نفسه في عدة تطبيقات لمشاركة البيانات، فلن تتعرّف إصدارات Android القديمة هذه إلا على المفتاح القديم لميزات مثل مشاركة الأذونات المخصّصة.

كيفية الترقية:

  1. انتقِل إلى محمي من خلال Play > التوزيع على "متجر Play" > الانتقال إلى ميزة "توقيع التطبيق" من Play.
  2. ضمن قسم "مفتاح توقيع التطبيق"، انقر على ترقية المفتاح.
  3. اختَر مسار الترقية:
    • السماح لمتجر Google Play بإنشاء مفتاح توقيع تطبيق جديد (مستحسَن)
    • استخدِم مفتاح توقيع التطبيق نفسه المستخدَم مع تطبيق آخر في حساب المطوِّر هذا.
    • قدِّم نسخة من مفتاح توقيع تطبيقك (باتّباع التعليمات).
  4. في حال تقديم مفتاحك الخاص، أنشئ "صلاحية التغيير" وحمِّلها باستخدام أداة apksigner (المضمّنة في أدوات إنشاء حزمة تطوير البرامج (SDK) لنظام التشغيل Android). (للحصول على تفاصيل حول العلامات المستخدَمة هنا، يُرجى الاطّلاع على مستندات سطر الأوامر الخاصة بأداة APKSigner):
    • apksigner rotate --out /path/to/new/file --old-signer --ks old-signer-jks --set-rollback true --new-signer --ks new-signer-jks --set-rollback true
  5. انقر على حفظ وسجِّل بصمات المفاتيح الجديدة لدى موفّري واجهة برمجة التطبيقات.

طلب إعادة ضبط مفتاح التحميل

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

  1. أنشئ مفتاح تحميل جديدًا في "استوديو Android".
  2. صدِّر الشهادة بتنسيق PEM:
    keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
    (للحصول على مزيد من المساعدة بشأن أداة keytool ومسارات ملف تخزين المفاتيح، يُرجى الرجوع إلى دليل توقيع التطبيق في "استوديو Android").
  3. يجب أن يطلب صاحب الحساب إعادة ضبط مفتاح التحميل من خلال نموذج المساعدة في Play Console.
  4. حمِّل ملف upload_certificate.pem عندما يُطلب منك ذلك.
    ملاحظة: لن تؤثر إعادة ضبط مفتاح التحميل في مفتاح توقيع التطبيق أو في المستخدمين.

أفضل الممارسات وطرق التوزيع البديلة

  • الأمان: يمكنك حماية إذن الوصول إلى Play Console من خلال فرض ميزة "التحقّق بخطوتين" على جميع المستخدمين.
  • تحسينات Google Play: يتيح لك التسجيل في ميزة "توقيع التطبيق" من Play الاستفادة من تحسينات Google Play لحِزم تطبيقاتك. لتلقّي التحديثات، عليك أولاً إجراء أي تغييرات ضرورية عند إنشاء إصدار جديد، ثم تحميل حِزمة التطبيق الجديدة.
  • التوزيع خارج Google Play: إذا كنت توزّع تطبيقك من خلال متاجر تطبيقات أخرى وأردت استخدام مفتاح التوقيع نفسه في كل مكان، لديك خياران. يمكنك السماح لـ Google بإنشاء مفتاح توقيع التطبيق وتنزيل حِزمة APK عامة موقَّعة من أحدث الإصدارات والحِزم لتوزيعها في مكان آخر (انتقِل إلى الاختبار والإصدار > أحدث الإصدارات والحِزم، واختَر حِزمة تطبيقك، ثم انقر على علامة التبويب عمليات التنزيل)، أو يمكنك إنشاء مفتاح توقيع التطبيق الذي تريد استخدامه في جميع متاجر التطبيقات ونقل نسخة منه إلى Google عند إعداد ميزة "توقيع التطبيق" من Play.
  • الاختبار: استخدِم ميزة مشاركة التطبيقات مع الفريق الداخلي لاختبار ما سيوفّره Google Play للمستخدمين بالضبط، أو نزِّل حِزم APK مخصّصة للجهاز من "مستكشف حِزم التطبيقات" وثبِّتها محليًا باستخدام الأمر adb install-multiple *.apk.
  • الإصدار 4 من مخطّط توقيع حِزم APK: تستخدم ميزة "توقيع التطبيق" من Play تلقائيًا توقيع الإصدار 4 للتطبيقات المؤهَّلة من أجل إتاحة التوزيع المحسَّن على أجهزة Android 11 والإصدارات الأحدث. ما مِن إجراء مطلوب اتّخاذه من جانبك. يمكنك الاطّلاع على مزيد من المعلومات حول المزايا التقنية في مستندات الإصدار 4 من مخطّط توقيع حزمة APK.
  • مشاريع Google Cloud المستضافة ذاتيًا: إذا كانت لديك متطلبات أمان محدّدة للغاية (على سبيل المثال، استخدام مفاتيح المصنّع الأصلي للجهاز)، يمكنك استخدام Play Developer API للتسجيل في ميزة "توقيع التطبيق" من Play باستخدام مشروع Google Cloud مستضاف ذاتيًا. ملاحظة: هذا إعداد غير عادي ولا ننصح به. يعني استخدام مشروع مستضاف ذاتيًا أنّك تتحمّل المسؤولية الكاملة عن عمليات توقيع التطبيق، ويمنع Google Play من تنفيذ ميزات أساسية مثل "التعافي من الكوارث".

هل كان ذلك مفيدًا؟

كيف يمكننا تحسينها؟

هل تحتاج إلى مزيد من المساعدة؟

جرِّب الخطوات التالية:

بحث
محو البحث
إغلاق البحث
القائمة الرئيسية
6428631536121516507
true
مركز مساعدة البحث
false
true
true
true
true
true
92637
false
false
false
false
false