مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 156a618ba987المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تحدد الواجهة ara::crypto::cryp::CryptoObject التجريد المشترك لجميع الكائنات المشفرة في مكدس Adaptive-Crypto وتنظم دورة حياتها عبر Sptr[SWS_CRYPT_20501]. وتتيح القراءة الآمنة خيطياً لمعرفات الخوارزميات بالإضافة إلى رايات الاستخدام، وتدعم الكتابة الفوقية الدائمة لمواد المفاتيح في WriteableKeySlot[SWS_CRYPT_20505]، [SWS_CRYPT_20517]. أثناء عملية الحفظ، تضمن رموز الخطأ المحددة مع دلالات التراجع سلامة بيانات فتحة التخزين الأساسية [SWS_CRYPT_20517].
السياق
تشكل الواجهة ara::crypto::cryp::CryptoObject التجريد المشترك لجميع الكائنات المشفرة التي يمكن لمزود التشفير التعرف عليها وإدارتها. تقوم الفئة بتوسيع ara::crypto::Serializable وتحدد الخصائص الأساسية مثل تعريف الخوارزمية، وقيود الاستخدام، بالإضافة إلى آليات التخزين الدائم. تشمل أطراف التفاعل النموذجية التطبيقات المستدعية، ومزود التشفير الموفر، بالإضافة إلى الذاكرة الهدف في شكل مثيلات WriteableKeySlot.
دورة الحياة
تتم إدارة الكائنات المشفرة داخل المنصة بشكل أساسي عبر الملكية المشتركة. ولهذا الغرض، تحدد الفئة الاسم المستعار القياسي للمؤشر الذكي ara::crypto::cryp::CryptoObject::Sptr كـ std::shared_ptr<CryptoObject>[SWS_CRYPT_20501]. يُفترض إنشاء مثيلات ملموسة بواسطة روتينات المصنع والتحميل المتخصصة لمزود التشفير وتوفيرها للمستدعي عبر هذا النوع من المؤشرات. سؤال Q-36e2bd12d7dc8b98 (مفتوح) تم تحديد جميع الدوال المعلنة للواجهة على أنها آمنة خيطياً وآمنة من الاستثناءات (exception safe، noexcept)، مما يضمن وصولاً متزامناً آمناً للقراءة والتخزين عبر عدة خيوط [SWS_CRYPT_20505]، [SWS_CRYPT_50092]، [SWS_CRYPT_20517]. يتم تحرير الكائن ومواد المفاتيح المرتبطة به تلقائياً بمجرد انقضاء آخر مرجع Sptr.
مسار الاستخدام
يتضمن مسار الاستخدام النموذجي التعرف على الخصائص المشفرة لكائن ما وتخزينه الدائم اللاحق. أولاً، يستعلم التطبيق عبر GetAlgId() عن معرف الخوارزمية للكائن كـ ara::crypto::AlgIdString[SWS_CRYPT_20505]. بعد ذلك، يتم تحديد رايات الاستخدام المسموح بها (AllowedUsageFlags) عبر GetAllowedUsage()[SWS_CRYPT_50092] للتأكد من أن الكائن مصرح به للعملية المقصودة. وللحفظ الدائم، يمرر التطبيق فتحة مفتاح قابلة للكتابة إلى الدالة Save()[SWS_CRYPT_20517]. يتم بعد ذلك حفظ مادة المفتاح والبيانات الوصفية المرتبطة بها في الفتحة الهدف، مع استبدال البيانات السابقة الموجودة في الفتحة [SWS_CRYPT_20517].
بينما لا تعرض GetAlgId()[SWS_CRYPT_20505] وGetAllowedUsage()[SWS_CRYPT_50092] أي رموز خطأ قياسية وتُرجع النتيجة المعنية في ara::core::Result في حالة النجاح، تحدد عملية الحفظ الدائم Save() شروط خطأ محددة مع دلالات تراجع ملزمة [SWS_CRYPT_20517]:
ara::crypto::CryptoErrc::kIncompatibleObject: تحدث عندما يكون الكائن غير متوافق مع WriteableKeySlot الممرر، على سبيل المثال لأن معرفات الخوارزمية (AlgId) تختلف عن بعضها البعض أو تنتمي فتحة المفتاح إلى مزود تشفير مختلف [SWS_CRYPT_20517].
ara::crypto::CryptoErrc::kUsageViolation: تشير إلى استخدام غير مسموح به إذا كانت رايات استخدام المفتاح المعلنة عبر GetAllowedUsage() لا تتضمن حق الحفظ الدائم (kAllowPersist) [SWS_CRYPT_50092]، [SWS_CRYPT_20517].
ara::crypto::CryptoErrc::kBusyResource: تُرجع عندما يكون مورد التخزين الأساسي مشغولاً مؤقتاً ولا يمكن تنفيذ العملية على الفور [SWS_CRYPT_20517].
بفضل دلالات التراجع، تظل حالة WriteableKeySlot سليمة عند حدوث أي من هذه الأخطاء، بحيث لا تتبقى أي بيانات مفاتيح مكتوبة جزئياً أو تالفة في الذاكرة [SWS_CRYPT_20517].
يستند هذا الدليل إلى مواصفة AUTOSAR Adaptive R25-11 ويلخص المتطلبات المفروضة على الواجهة ara::crypto::cryp::CryptoObject.
The interface shall persistently store the key-material and its meta-data in the provided WriteableKeySlot. Data previously stored in keyslot shall be overwritten.
The interface shall persistently store the key-material and its meta-data in the provided WriteableKeySlot. Data previously stored in keyslot shall be overwritten.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 0aae854cf6a9المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم الدالة Save للواجهة ara::crypto::cryp::CryptoObject للتخزين الدائم لمادة المفتاح مع البيانات الوصفية المرتبطة بها في WriteableKeySlot مُقدّم ([SWS_CRYPT_20517]). يتم استبدال البيانات المخزنة مسبقًا في KeySlot الهدف أثناء التنفيذ ([SWS_CRYPT_20517]).
يتم تمرير keyslot من النوع WriteableKeySlot::Sptr كمعلمة، والتي تمثل مساحة التخزين الأساسية ([SWS_CRYPT_20517]). تم تحديد الدالة كـ noexcept وكذلك exception safe وترجع ara::core::Result<void> كقيمة مرجعة، والتي تكون فارغة في حالة النجاح ([SWS_CRYPT_20517]).
في حالة حدوث خطأ، تسري دلالات التراجع ([SWS_CRYPT_20517]). على وجه التحديد، يتم إرجاع رموز الخطأ التالية:
ara::crypto::CryptoErrc::kIncompatibleObject: المفتاح غير متوافق مع KeySlot، على سبيل المثال بسبب اختلاف AlgId أو التعيين لـ CryptoProvider آخر ([SWS_CRYPT_20517]).
ara::crypto::CryptoErrc::kUsageViolation: الاستخدام المسموح به للمفتاح لا يتضمن الحق kAllowPersist ([SWS_CRYPT_20517]).
ara::crypto::CryptoErrc::kBusyResource: لا يمكن تنفيذ العملية مؤقتًا ([SWS_CRYPT_20517]).
فيما يتعلق بالتزامن، تم التصريح عن الدالة كـ thread-safe ([SWS_CRYPT_20517]).
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي استنادًا إلى مواصفة AUTOSAR R25-11.
rollback_semantics if the key is incompatible to the KeySlot, e.g., because the AlgId of the KeySlot is incompatible to the AlgId of the key or because the KeySlot belongs to a different CryptoProvider
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني