توفر واجهة للتشفير وفك التشفير المتماثل الموثق مع حماية السلامة.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a1dee2a3fcf5المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
توفر واجهة للتشفير وفك التشفير المتماثل الموثق مع حماية السلامة.
تُستخدم الواجهة ara::crypto::cryp::AuthCipherCtx للتشفير وفك التشفير الموثق للبيانات مع الحفاظ على السرية والسلامة [SWS_CRYPT_23911]. وبعد تهيئة المفتاح، تتم المعالجة إما كاستدعاء فردي ذري أو كتسلسل متدفق يتكون من التهيئة، وبيانات التوثيق الاختيارية، وتحديثات بيانات الحمولة، والإنهاء. كشرط أمني حرج، يفشل فك التشفير في حالة وجود وسم توثيق غير صالح، بحيث لا يجوز معالجة بيانات الحمولة المفكوكة تشفيرها إلا بعد التحقق الناجح [SWS_CRYPT_50075].
السياق
تُعرّف الواجهة ara::crypto::cryp::AuthCipherCtx واجهة برمجة التطبيقات المعيارية لعمليات التشفير الموثّق (Authenticated Encryption with Associated Data, AEAD) ضمن AUTOSAR Adaptive Platform. وهي تجمع بين السرية وحماية السلامة، حيث يتم دائماً توليد وسَم توثيق تشفيري أو التحقق منه إلى جانب التشفير أو فك التشفير الفعلي للبيانات المفيدة. وتعمل التطبيقات المستدعية بالإضافة إلى كائنات المفاتيح كشركاء تفاعل مركزيين: يتم إما ربط السياق بمثيل ملموس من SymmetricKey[SWS_CRYPT_23911] قبل الاستخدام، أو تهيئته بواسطة KeySlot مُستدام أو مُقدَّم [SWS_CRYPT_50072]. وإلى جانب المعالجة الدفقية خطوة بخطوة، تدعم الفئة أيضاً استدعاءات فردية قائمة بذاتها لمعالجة رسائل كاملة في خطوة واحدة [SWS_CRYPT_50078].
دورة الحياة
تُدار السياقات في نطاق التطبيق عبر نوع المؤشر المشترك ara::crypto::cryp::AuthCipherCtx::Sptr[SWS_CRYPT_20101]. (تفسير: يتم إنشاء الكائن نموذجياً عبر مصنع مزوّد ذي مستوى أعلى، نظراً لأن AuthCipherCtx مُحددة كواجهة مجردة). سؤال Q-23125789874cf2f3 (مفتوح) وقد أُعلن أن جميع الدوال الأعضاء آمنة استثنائياً (exception safe) وآمنة خيطياً (thread-safe) [SWS_CRYPT_23911]، [SWS_CRYPT_24715]. وتمر دورة الحياة الوظيفية بحالات محددة بوضوح:
غير مهيأ: مباشرة بعد إنشاء المثيل. يتم رفض استدعاءات معالجة البيانات، نظراً لعدم تعيين أي مفتاح بعد [SWS_CRYPT_50081].
المفتاح مهيأ: من خلال الاستدعاء الناجح لـ SetKey باستخدام SymmetricKey[SWS_CRYPT_23911] أو KeySlot[SWS_CRYPT_50072]، ينتقل السياق إلى الحالة الجاهزة للتشغيل. ومن هذه الحالة، يمكن تنفيذ عمليات الطلقة الواحدة مباشرةً.
الدفق نشط: يتم الدخول فيها من خلال استدعاء Start مع تحديد اتجاه التحويل باستخدام متجه تهيئة (IV) [SWS_CRYPT_24715] أو بدون IV صريح [SWS_CRYPT_50073].
الإنهاء / إعادة التعيين: تكتمل عملية الدفق الجارية بشكل نظامي عبر Finish[SWS_CRYPT_50075] أو FinishEncrypt[SWS_CRYPT_50076]، أو يتم إحباطها مبكراً عبر Cancel[SWS_CRYPT_50077]. وبعد ذلك، يصبح السياق جاهزاً من جديد لتسلسلات معالجة جديدة.
بدء العملية: استدعاء Start مع تحديد الاتجاه (تشفير أو فك تشفير) بالإضافة إلى توفير IV [SWS_CRYPT_24715] أو طلب IV خاص بالسياق [SWS_CRYPT_50073].
البيانات المقترنة (AAD): إذا كان يتعين تضمين بيانات نص صريح إضافية في حساب السلامة، فسيتم تمريرها عبر UpdateAuthenticatedData[SWS_CRYPT_20313]. ويمكن الاستعلام عن الحد الأقصى المسموح به لحجم AAD عبر GetMaxAssociatedDataSize[SWS_CRYPT_20103]. مهم: يجب بالضرورة إرسال كتل AAD قبل البيانات المفيدة الفعلية.
معالجة البيانات المفيدة: التمرير التدريجي لكتل البيانات عبر UpdateConfidentialData[SWS_CRYPT_50074]. وعند فك التشفير، يتم إرجاع النص الصريح قبل ثبوت موثوقيته؛ ولا يجوز للتطبيق استخدام هذه البيانات إلا بعد اكتمال الإنهاء النهائي بنجاح.
الإنهاء النهائي: إنهاء العملية بواسطة Finish[SWS_CRYPT_50075] أو FinishEncrypt[SWS_CRYPT_50076]، وبذلك تتم معالجة الكتلة الأخيرة وحساب وسَم التوثيق أو التحقق منه.
بالنسبة لحمولات البيانات المدمجة، توجد بدائل أحادية الاستدعاء: يعالج ProcessSingleCall البيانات دون تمرير IV [SWS_CRYPT_50078]، ويقبل ProcessSingleCallWithInputIv قيمة IV خارجية [SWS_CRYPT_50079]، ويُرجع EncryptSingleCallWithOutputIv قيمة IV تم إنشاؤها بواسطة السياق إلى المستدعي [SWS_CRYPT_50080].
kInvalidUsageOrder: يشير إلى ترتيب استدعاء غير صحيح عند استدعاء UpdateAuthenticatedData بعد معالجة بيانات مفيدة بالفعل عبر UpdateConfidentialData[SWS_CRYPT_20313].
kAuthTagNotValid: يشير عند فك التشفير في Finish[SWS_CRYPT_50075] أو دوال الطلقة الواحدة [SWS_CRYPT_50078] إلى أن الوسَم المحسوب لا يتطابق مع الوسَم المُمرَّر وأن فحص الموثوقية قد فشل.
kUsageViolation: يحدث عندما لا تتطابق سمات استخدام المفتاح مع العملية المطلوبة (مثل غياب kAllowDataEncrypt أو kAllowDataDecrypt) [SWS_CRYPT_23911]، [SWS_CRYPT_50078].
Get the maximum input buffer size supported for processing in single calls to Update(), Finish(), FinishEncrypt() or ProcessSingleCall() by this context.
Get the maximum IV size required to be passed to the context in the functions Start() and ProcessSingleCallWithInputIv() for the given transformDirection.
Get the minimum input buffer size supported for processing in single calls to Update(), Finish(), FinishEncrypt() or ProcessSingleCall() by this context.
Get the minimum IV size required to be passed to the context in the functions Start() and ProcessSingleCallWithInputIv() for the given transformDirection.
Get the output IV size that will be returned by the functions FinishEncrypt() (in case no IV has been provided by the application during the call to Start()), and EncryptSingleCallWithOutputIv().
Encrypt or decrypt confidential data. When used for decryption, the plaintext is returned without verifying its authenticity. An application must not use the data before verifying its authenticity using Finish().
Cancel the ongoing streaming operation that has been initiated by Start() and has not yet been finished.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 739ac0d710b6المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تلغي الطريقة Cancel() للواجهة ara::crypto::cryp::AuthCipherCtx عملية تدفق نشطة تم بدؤها مسبقًا عبر Start() ولم تكتمل بعد [SWS_CRYPT_50077]. يتم توفير الدالة عبر الترويسة ara/crypto/cryp/auth_cipher_ctx.h وتعمل بشكل متزامن بدون معاملات مُمررة [SWS_CRYPT_50077]. وتُعيد ara::core::Result<void> يكون فارغًا في حالة النجاح.
معالجة الأخطاء والشروط الحدية
يتطلب الإلغاء أن تكون معالجة البيانات قد بدأت بالفعل مسبقًا بواسطة Start(). إذا لم تكن عملية التدفق قد بدأت، يفشل الاستدعاء ويُعيد رمز الخطأ ara::crypto::CryptoErrc::kProcessingNotStarted مع دلالات التراجع [SWS_CRYPT_50077].
التزامن
تم التصريح عن العملية كـ noexcept وصُنفت وفقًا للمواصفات بأنها thread-safe وكذلك exception safe[SWS_CRYPT_50077].
تفاعل
نمط الإلغاء المحقق بواسطة Cancel() موحد في الوحدة crypt. تم تحديد دلالات واجهة متطابقة ورمز الخطأ نفسه ara::crypto::CryptoErrc::kProcessingNotStarted لسياقات التدفق المقابلة:
virtual ara::core::Result< std::size_t > EncryptSingleCallWithOutputIv (ReadOnlyMemRegion dataIn, ReadWriteMemRegion dataOut, ReadWriteMem Region tag, ReadWriteMemRegion ivOut, ara::core::Optional< ReadOnlyMem Region > authenticatedData) noexcept=0;
Perform encryption and calculate/verify of the authentication tag in a single-call and return an IV generated by the context.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 6385ebfbc16dالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تنفذ الطريقة المتزامنة EncryptSingleCallWithOutputIv للواجهة ara::crypto::cryp::AuthCipherCtx تشفيرًا موثقًا في خطوة واحدة وتنشئ في الوقت ذاته متجه تهيئة بشكل مستقل [SWS_CRYPT_50080]. وهي تعالج بيانات الإدخال من dataIn بالإضافة إلى بيانات إضافية اختيارية authenticatedData وتكتب النص المشفر في المخزن المؤقت dataOut. يتم وضع متجه التهيئة المُولَّد في المخزن المؤقت ivOut، بينما يتم إخراج علامة المصادقة عبر tag[SWS_CRYPT_50080]. يمكن تحديد حجم المخزن المؤقت لـ ivOut مسبقًا عبر الطريقة GetOutputIvSize[SWS_CRYPT_50165]. على الرغم من جزء الاسم Encrypt، يُفترض أنه يمكن أيضًا استخدام الطريقة لفك التشفير، حيث تسرد مواصفات الأخطاء السلوك لـ transformDirection == kDecrypt صراحةً [SWS_CRYPT_50080]. سؤال Q-66618567b20f99b9 (مفتوح)
تنطبق شروط مسبقة وقيود أساسية على الاستدعاء:
يجب أن يكون السياق قد تم تهيئته مسبقًا بنجاح باستخدام SetKey؛ وإلا فسيتم الإبلاغ عن kUninitializedContext[SWS_CRYPT_50080].
يجب أن يكون المفتاح الموجود في فتحة المفتاح (Key-Slot) المكونة متوافقًا وأن يمتلك الإذن المناسب (مثل kAllowDataEncrypt)، وإلا فسيتم إرجاع kUsageViolation أو kIncompatibleObject[SWS_CRYPT_50080].
إذا لم تكن المخازن المؤقتة للإخراج dataOut أو ivOut كافية، يفشل الاستدعاء مع kInsufficientCapacity[SWS_CRYPT_50080].
إذا كان السياق لا يدعم المعالجة أحادية الخطوة أو كان يتطلب تحديد IV خارجي، فسيتم إرجاع kUnsupported[SWS_CRYPT_50080].
تم تحديد العملية على أنها thread-safe بالإضافة إلى كونها آمنة ضد الاستثناءات وتضمن دلالات التراجع (Rollback) في حالة الخطأ [SWS_CRYPT_50080]. بالنسبة لعمليات التشفير المتماثل البحتة دون معالجة العلامات، يوجد نظير منفصل في SymmetricCipherCtx[SWS_CRYPT_50049].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على المواصفات.
an input data buffer containing the plaintext/ciphertext
authenticatedData
optional additional authenticated data
Parameter (out)
Parameter
Beschreibung
dataOut
an output data buffer that contains en-/decrypted data
ivOut
an output data buffer that the initialization vector (IV) generated by the context will be written to
Parameter (in/out)
Parameter
Beschreibung
tag
for decryption: an input data buffer that contains the authentication tag. for encryption: an output data buffer that the authentication tag is written to.
rollback_semantics if the allowed usage of the SymmetricKey deployed or contained in the provided KeySlot at the time of invocation of this interface does not include kAllowDataEncrypt for encryption, or kAllowData Decrypt for decryption, respectively
Finalize the en-/decryption and calculate/verify the authentication tag without returning an IV.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 8b946dd1de69المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام والدلالات
تكمل الطريقة Finish عملية التشفير أو فك التشفير داخل ara::crypto::cryp::AuthCipherCtx بشكل متزامن وتحسب أو تفحص علامة المصادقة، دون إرجاع متجه تهيئة (IV) [SWS_CRYPT_50075]. يُمرِّر المتصل البيانات المتبقية عبر المخزن المؤقت in بالإضافة إلى المخزن المؤقت للوجهة out. عبر المخزن المؤقت tag، يتم إخراج العلامة المحسوبة في حالة التشفير، بينما في حالة فك التشفير يتم تمرير العلامة المراد التحقق منها [SWS_CRYPT_50075]. تحدد قيمة الإرجاع ara::core::Result<std::size_t> البايتات المكتوبة فعليًا في out، والتي قد تكون أقل من سعة المخزن المؤقت للإخراج [SWS_CRYPT_50075].
التسلسل والتفاعل
قبل الاستدعاء، يجب بالضرورة بدء معالجة البيانات بواسطة Start()[SWS_CRYPT_50075]. إذا تمت معالجة كتل البيانات مسبقًا باستخدام UpdateConfidentialData، فلا يجوز للتطبيق استخدام النص الصريح الناتج عند فك التشفير إلا بعد المصادقة الناجحة بواسطة Finish[SWS_CRYPT_50074]. يمكن تحديد الحد الأقصى المطلوب لحجم المخزن المؤقت لـ out مسبقًا عبر GetRequiredOutputBufferSize مع تحديد isFinal = true[SWS_CRYPT_50081].
معالجة الأخطاء والتزامن
تم تحديد الطريقة على أنها آمنة لترابط العمليات وآمنة ضد الاستثناءات [SWS_CRYPT_50075]. ويتم الإبلاغ عن الأخطاء عبر ara::core::Result بدلالات التراجع (Rollback) [SWS_CRYPT_50075]:
ProcessingNotStarted: لم تبدأ معالجة البيانات مسبقًا باستخدام Start()[SWS_CRYPT_50075].
ara::crypto::CryptoErrc::kInsufficientCapacity: المخزن المؤقت للإخراج out صغير جدًا [SWS_CRYPT_50075].
ara::crypto::CryptoErrc::kInvalidInputSize: حجم المخزن المؤقت لـ in أو tag غير صالح [SWS_CRYPT_50075].
ara::crypto::CryptoErrc::kAuthTagNotValid: لا يمكن تأكيد أصالة البيانات عند فك التشفير [SWS_CRYPT_50075].
ara::crypto::CryptoErrc::kUnsupported: المعالجة المتدفقة (Streaming) غير مدعومة من قِبل السياق [SWS_CRYPT_50075].
ملاحظة: تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى بيانات المواصفات.
an input data buffer that contains a part of the plaintext/ciphertext
Parameter (out)
Parameter
Beschreibung
out
an output data buffer that the en-/decrypted data is written to
Parameter (in/out)
Parameter
Beschreibung
tag
for decryption: an input data buffer that contains the authentication tag for encryption: an output data buffer that the authentication tag is written to
Finalize the encryption and calculate the authentication tag and return the IV generated by the context.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: fd75aa19665eالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تنهي الطريقة FinishEncrypt عملية تشفير موثقة في ara::crypto::cryp::AuthCipherCtx بشكل متزامن، وتحسب علامة التوثيق، وتُرجع متجه التهيئة المُولّد بواسطة السياق عبر ivOut[SWS_CRYPT_50076]. تم تحديد الاستدعاء بأنه آمن بالنسبة للخيوط وآمن من الاستثناءات (exception safe) [SWS_CRYPT_50076]. وكنتيجة، تُرجع الدالة ara::core::Result<std::size_t> بعدد البايتات المكتوبة فعليًا في مخزن الإخراج المؤقت out، حيث يجوز أن يكون حجم الإخراج أصغر من سعة المخزن المؤقت [SWS_CRYPT_50076]. تفسير: على الرغم من أن الاسم يشير إلى التشفير، إلا أن مواصفة المعلمة tag وكذلك كود الخطأ ara::crypto::CryptoErrc::kAuthTagNotValid يدلان على أنه من المرجح أن يُستخدم التوقيع في السياق بشكل متماثل لعمليات فك التشفير أيضًا. سؤال Q-6b924f12c32e0f33 (مفتوح)
التفاعل وتحديد أبعاد المخزن المؤقت
يجب أن تكون معالجة البيانات قد بدأت حتمًا مسبقًا بـ Start()، وإلا تبلغ الدالة عن الخطأ ProcessingNotStarted[SWS_CRYPT_50076]. لتحديد أبعاد المخزن المؤقت، يجب مراعاة التفاعل مع دوال السياق التالية:
يمكن حساب السعة القصوى المطلوبة لـ out مسبقًا عبر [SWS_CRYPT_50081] باستخدام المعلمة isFinal = true، لتجنب الخطأ ara::crypto::CryptoErrc::kInsufficientCapacity[SWS_CRYPT_50076].
يمكن الاستعلام عن حجم المخزن المؤقت المطلوب لاستيعاب متجه التهيئة المُولّد في ivOut عبر [SWS_CRYPT_50165].
معالجة الأخطاء والشروط الحدية
في حالة الخطأ، تمتلك جميع الاستجابات دلالات تراجع (Rollback) محددة [SWS_CRYPT_50076]. وفي حالة أحجام المخازن المؤقتة غير الصالحة لبيانات الإدخال أو لعلامة المصادقة (Authentication Tag)، يتم إرجاع ara::crypto::CryptoErrc::kInvalidInputSize[SWS_CRYPT_50076]. بالإضافة إلى ذلك، تُرجع الدالة ara::crypto::CryptoErrc::kUnsupported إذا كانت معالجة التدفق (Stream Processing) غير مدعومة، أو لم يُستخدم IV، أو تم تحديد IV مسبقًا عند البدء بواسطة التطبيق [SWS_CRYPT_50076].
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي وتستند حصريًا إلى بيانات المواصفات.
an input data buffer that contains a part of the plaintext/ciphertext
Parameter (out)
Parameter
Beschreibung
out
an output data buffer that the en-/decrypted data is written to
ivOut
an output data buffer that contains the IV
Parameter (in/out)
Parameter
Beschreibung
tag
for decryption: an input data buffer that contains the authentication tag for encryption: an output data buffer that the authentication tag is written to
rollback_semantics if stream processing is not supported by the context or if this context does not use an IV or if the IV has been provided by the application in the Start() function
Request a governed re-review of this record. The record is not changed immediately.
Get the maximum input buffer size supported for processing in single calls to Update(), Finish(), FinishEncrypt() or ProcessSingleCall() by this context.
Get the maximum IV size required to be passed to the context in the functions Start() and ProcessSingleCallWithInputIv() for the given transformDirection.
Get the minimum input buffer size supported for processing in single calls to Update(), Finish(), FinishEncrypt() or ProcessSingleCall() by this context.
Get the minimum IV size required to be passed to the context in the functions Start() and ProcessSingleCallWithInputIv() for the given transformDirection.
Get the output IV size that will be returned by the functions FinishEncrypt() (in case no IV has been provided by the application during the call to Start()), and EncryptSingleCallWithOutputIv().
Perform en-/decryption and calculate/verify of the authentication tag in a single-call without setting or returning an IV.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a5183289221aالمصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُنفذ الطريقة المتزامنة والمحددة بأنها آمنة لمؤشرات الترابط ProcessSingleCall الخاصة بـ ara::crypto::cryp::AuthCipherCtx تشفير بيانات الحمولة أو فك تشفيرها والحساب المتزامن أو التحقق من وسم التوثيق في عملية واحدة دون متجه تهيئة (IV) [SWS_CRYPT_50078]. عبر المخزن المؤقت الاختياري authenticatedData، يمكن توفير بيانات موثقة إضافية [SWS_CRYPT_50078]. يعمل المخزن المؤقت tag كمدخل للتحقق أثناء فك التشفير، وكمخرج لتخزين وسم التوثيق المُنشأ أثناء التشفير [SWS_CRYPT_50078]. عند المعالجة الناجحة، تُرجع ara::core::Result<std::size_t> العدد الفعلي للبايتات المكتوبة في dataOut، والتي يمكن أن تكون أقل من سعة المخزن المؤقت الهدف [SWS_CRYPT_50078].
قبل الاستدعاء، يجب أن يكون السياق التشفيري قد تمت تهيئته عبر استدعاء ناجح لـ SetKey؛ وإلا ستفشل الدالة مع ara::crypto::CryptoErrc::kUninitializedContext[SWS_CRYPT_50078]. بالإضافة إلى ذلك، يجب أن يكون المفتاح المستخدم مصرحًا به لاتجاه التحويل المطلوب (kAllowDataEncrypt أو kAllowDataDecrypt)، وإلا فسيتم الإبلاغ عن ara::crypto::CryptoErrc::kUsageViolation[SWS_CRYPT_50078]. وإذا كانت المعالجة بخطوة واحدة غير مدعومة أو كان السياق يتطلب متجه تهيئة IV، تُرجع الدالة ara::crypto::CryptoErrc::kUnsupported[SWS_CRYPT_50078]. وإذا فشل التوثيق أثناء فك التشفير، فسيتم إطلاق ara::crypto::CryptoErrc::kAuthTagNotValid[SWS_CRYPT_50078]. تتم الإشارة إلى الأخطاء في فتحة المفتاح المخصصة عبر EmptyKeySlot أو ara::crypto::CryptoErrc::kBusyResource أو ara::crypto::CryptoErrc::kIncompatibleObject[SWS_CRYPT_50078].
لإدارة المخزن المؤقت، يمكن مسبقًا حساب أقصى حجم إخراج مطلوب لـ dataOut عبر GetRequiredOutputBufferSize مع تعيين العلامة isFinal = true[SWS_CRYPT_50081]؛ يؤدي مخزن الإخراج المؤقت الصغير جدًا إلى ara::crypto::CryptoErrc::kInsufficientCapacity[SWS_CRYPT_50078]. بالإضافة إلى ذلك، يجب أن يتوافق حجم dataIn مع حدود GetMinimumChunkSize[SWS_CRYPT_50162] وGetMaximumChunkSize[SWS_CRYPT_50082] لتجنب ara::crypto::CryptoErrc::kInvalidInputSize[SWS_CRYPT_50078].
تم توليد إشعار الاستخدام هذا آليًا استنادًا إلى مواصفة AUTOSAR Adaptive R25-11.
an input data buffer containing the plaintext/ciphertext
transformDirection
the transformation direction, i.e., encryption or decryption
authenticatedData
optional additional authenticated data
Parameter (out)
Parameter
Beschreibung
dataOut
an output data buffer that contains en-/decrypted data
Parameter (in/out)
Parameter
Beschreibung
tag
for decryption: an input data buffer that contains the authentication tag. for encryption: an output data buffer that the authentication tag is written to.
rollback_semantics if the allowed usage of the SymmetricKey deployed or contained in the provided KeySlot at the time of invocation of this interface does not include kAllowDataEncrypt for encryption, or kAllowData Decrypt for decryption, respectively
Perform en-/decryption and calculate/verify of the authentication tag in a single-call, providing an IV to be used during en-/decryption.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 36312c01407dالمصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تنفذ الطريقة [SWS_CRYPT_50079] للفئة ara::crypto::cryp::AuthCipherCtx معالجة متزامنة أحادية الخطوة (Single-Call) لتشفير البيانات أو فك تشفيرها مع الحساب المتزامن لعلامة المصادقة أو التحقق منها.
عند الاستدعاء، يتم تحديد بيانات الإدخال عبر dataIn والاتجاه عبر transformDirection. يتم تمرير متجه التهيئة عبر iv، ويمكن توفير بيانات مصادقة اختيارية عبر authenticatedData[SWS_CRYPT_50079]. يعمل المخزن المؤقت tag في حالة التشفير كمخرج للعلامة المحسوبة، وفي حالة فك التشفير كمدخل للتحقق [SWS_CRYPT_50079]. تُرجع قيمة الإرجاع ara::core::Result<std::size_t> عند النجاح عدد البايتات المكتوبة في dataOut، والتي يمكن أن تكون أصغر من سعة المخزن المؤقت [SWS_CRYPT_50079].
في حال حدوث خطأ، تمتلك جميع رموز الخطأ دلالات التراجع (Rollback) [SWS_CRYPT_50079]:
ara::crypto::CryptoErrc::kUninitializedContext: لم يتم تكوين أي مفتاح مسبقًا عبر SetKey[SWS_CRYPT_50079].
ara::crypto::CryptoErrc::kUsageViolation: لا يمتلك المفتاح الصلاحية المطلوبة kAllowDataEncrypt أو kAllowDataDecrypt[SWS_CRYPT_50079].
ara::crypto::CryptoErrc::kEmptyKeySlot أو ara::crypto::CryptoErrc::kBusyResource أو ara::crypto::CryptoErrc::kIncompatibleObject: إن KeySlot المكون فارغ أو مشغول أو لا يحتوي على SymmetricKey متوافق [SWS_CRYPT_50079].
ara::crypto::CryptoErrc::kInvalidInputSize أو ara::crypto::CryptoErrc::kInsufficientCapacity: أبعاد المخازن المؤقتة للإدخال أو العلامة أو IV غير صالحة، أو أن dataOut يوفر سعة غير كافية [SWS_CRYPT_50079].
ara::crypto::CryptoErrc::kAuthTagNotValid: تفشل المصادقة عند فك التشفير [SWS_CRYPT_50079].
ara::crypto::CryptoErrc::kUnsupported: المعالجة أحادية الطلقة (Single-Shot) غير مدعومة من قِبل السياق، أو أن السياق يتطلب تعيين IV أو إخراجه [SWS_CRYPT_50079].
تم تعريف العملية على أنها thread-safe وexception safe[SWS_CRYPT_50079]. يمكن الاستعلام ديناميكيًا عن الأطوال المسموح بها لـ iv عبر GetMinimumInputIvSize[SWS_CRYPT_50163] وGetMaximumInputIvSize[SWS_CRYPT_50164]. بالمقارنة مع تشفير الكتل البحت في SymmetricCipherCtx[SWS_CRYPT_50048]، تجمع هذه الواجهة بين التحويل التشفيري والتحقق من السلامة في استدعاء واحد.
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R25-11.
an input data buffer containing the plaintext/ciphertext
transformDirection
the transformation direction, i.e., encryption or decryption
iv
an Initialization Vector (IV) or "nonce" value
authenticatedData
optional additional authenticated data
Parameter (out)
Parameter
Beschreibung
dataOut
an output data buffer that contains en-/decrypted data
Parameter (in/out)
Parameter
Beschreibung
tag
for decryption: an input data buffer that contains the authentication tag. for encryption: an output data buffer that the authentication tag is written to.
rollback_semantics if the allowed usage of the SymmetricKey deployed or contained in the provided KeySlot at the time of invocation of this interface does not include kAllowDataEncrypt for encryption, or kAllowData Decrypt for decryption, respectively
The interface shall configure the context to use the provided SymmetricKey.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: c987f167a8b5المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُهيئ الدالة SetKey مثيل ara::crypto::cryp::AuthCipherCtx لاستخدام مفتاح متماثل مُمرَّر [SWS_CRYPT_23911]. وتُمرَّر كمَعلمة مؤشر مشترك key (من النوع SymmetricKey::Sptr)، والذي يُستخدم للتشفير أو فك التشفير المُوثَّق [SWS_CRYPT_23911]. يتم الاستدعاء تزامنيًا، وهو مُعلن كـ noexcept ويُرجع ara::core::Result<void>[SWS_CRYPT_23911].
في حالة حدوث خطأ، يُعاد تعيين النتيجة بدلالات التراجع (Rollback) وتُوفر رموز خطأ محددة [SWS_CRYPT_23911]:
ara::crypto::CryptoErrc::kUnsupported: إذا كان السياق يدعم التكوين حصريًا عبر KeySlot[SWS_CRYPT_23911].
ara::crypto::CryptoErrc::kIncompatibleObject: إذا كان نوع المفتاح المُمرَّر غير متوافق مع السياق الحالي [SWS_CRYPT_23911].
ara::crypto::CryptoErrc::kUsageViolation: إذا كانت أعلام الاستخدام المسموح بها للمفتاح لا تتضمن kAllowDataEncrypt للتشفير أو kAllowDataDecrypt لفك التشفير [SWS_CRYPT_23911].
وفقًا للمواصفة، صُنفت الواجهة على أنها آمنة بالنسبة للخيوط (thread-safe) وآمنة من الاستثناءات (exception safe) [SWS_CRYPT_23911]. وبالتفاعل مع سياق الوحدة، يُرجح أن يُعيَّن المفتاح قبل تهيئة تحويل جديد عبر Start[SWS_CRYPT_24715]. سؤال Q-11f7daa370f5d438 (مفتوح)
تم إنشاء ملاحظة الاستخدام هذه آليًا بناءً على حمولة AUTOSAR.
rollback_semantics if the allowed usage of the provided SymmetricKey does not include kAllowDataEncrypt for encryption, or kAllowDataDecrypt for decryption, respectively
Request a governed re-review of this record. The record is not changed immediately.
The interface shall configure the context to use the key stored in the provided KeySlot when the authenticated encrypt or decrypt operation is executed.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 44d0d6c36fa2المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تكوّن الدالة SetKey في الواجهة ara::crypto::cryp::AuthCipherCtx السياقَ للعمليات التشفيرية بحيث يُستخدم المفتاح المتماثل المحفوظ في فتحة مفتاح مقدمة بمجرد تنفيذ التشفير أو فك التشفير الموثق [SWS_CRYPT_50072].
الاستخدام: يتم الاستدعاء المتزامن عبر الواجهة من ara/crypto/cryp/auth_cipher_ctx.h. كمعلمة keySlot، يتم تمرير مثيل من KeySlot::Sptr يقوم بتغليف مفتاح متماثل [SWS_CRYPT_50072]. تُرجع الدالة ara::core::Result<void> يؤكد النجاح أو يحتوي على كود خطأ [SWS_CRYPT_50072].
معالجة الأخطاء: إذا كان التنفيذ المحدد للسياق يدعم فقط التكوين المباشر عبر كائن SymmetricKey ولا يوفر التعيين عبر KeySlot، فإن الاستدعاء يفشل. في هذه الحالة، يتم إرجاع الخطأ ara::crypto::CryptoErrc::kUnsupported مع دلالات التراجع [SWS_CRYPT_50072].
التزامن والقيود: تم تحديد الدالة على أنها thread-safe وexception safe[SWS_CRYPT_50072]. ويمكن استدعاؤها بالتزامن كما تضمن عدم بقاء حالة غير متسقة في الحالات الاستثنائية.
التفاعل: كبديل وظيفي، يتوفر التحميل الزائد SetKey مع SymmetricKey::Sptr مباشر [SWS_CRYPT_23911]. بعد إتمام ربط المفتاح، تتم تهيئة السياق عبر Start باتجاه العملية بالإضافة إلى متجه التهيئة [SWS_CRYPT_24715]. توجد تواقيع مماثلة مع KeySlot::Sptr أيضًا في MessageAuthnCodeCtx[SWS_CRYPT_50026] وSymmetricKeyWrapperCtx[SWS_CRYPT_50034].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويستند إلى مواصفة AUTOSAR R25-11.
Initialize the context for a new encryption or decryption and set the IV used by the context.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: da3f0fb3ff33المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُهيئ الدالة Start السياق ara::crypto::cryp::AuthCipherCtx لعملية تشفير أو فك تشفير جديدة وتُعين متجه التهيئة (IV) أو قيمة nonce المراد استخدامها [SWS_CRYPT_24715]. يُحدد اتجاه التحويل عبر المَعلمة transformDirection، بينما تُمرر iv المتجه كـ ReadOnlyMemRegion[SWS_CRYPT_24715]. يمكن تحديد حجم IV المسموح به عبر GetMinimumInputIvSize() بالإضافة إلى GetMaximumInputIvSize()؛ وإذا كان الطول مختلفًا، تُبلغ الدالة عن الخطأ ara::crypto::CryptoErrc::kInvalidInputSize[SWS_CRYPT_24715].
قبل الاستدعاء، يجب أن يكون SetKey قد تم تنفيذه بنجاح، وإلا فسيتم إرجاع ara::crypto::CryptoErrc::kUninitializedContext[SWS_CRYPT_24715]. ويجب ألا يكون KeySlot المُكوَّن فارغًا (EmptyKeySlot) ولا مشغولاً (ara::crypto::CryptoErrc::kBusyResource) [SWS_CRYPT_24715]. بالإضافة إلى ذلك، يجب أن يكون المفتاح المحفوظ عبارة عن SymmetricKey مناسب (وإلا ara::crypto::CryptoErrc::kIncompatibleObject) ومُصرحًا به للاتجاه المطلوب (kAllowDataEncrypt أو kAllowDataDecrypt، وإلا ara::crypto::CryptoErrc::kUsageViolation) [SWS_CRYPT_24715]. وإذا كان دعم المعالجة المتدفقة أو تعيين IV في الاتجاه المختار مفقودًا، يفشل الاستدعاء مع ara::crypto::CryptoErrc::kUnsupported[SWS_CRYPT_24715]. تتسم جميع الأخطاء بدلالات التراجع [SWS_CRYPT_24715].
تم الإعلان عن العملية بأنها thread-safe وكذلك exception-safe (noexcept) [SWS_CRYPT_24715]. وفي إطار التفاعل بين العمليات التشفيرية، يُرجح بعد التهيئة الناجحة أن يتبع ذلك نموذجيًا تمرير بيانات مُوثَّقة إضافية عبر UpdateAuthenticatedData[SWS_CRYPT_20313]. سؤال Q-e023e27f1cd24507 (مفتوح)
تم إنشاء ملاحظة الاستخدام هذه آليًا استنادًا إلى إصدار AUTOSAR R25-11.
the transformation direction, i.e., encryption or decryption
iv
an Initialization Vector (IV) or "nonce" value. The allowed size of the IV can be queried using the functions GetMinimumInputIvSize() and GetMaximumInputIvSize().
rollback_semantics if the allowed usage of the SymmetricKey deployed or contained in the provided KeySlot at the time of invocation of this interface does not include kAllowDataEncrypt for encryption, or kAllowData Decrypt for decryption, respectively
Initialize the context for a new encryption or decryption. An IV is either not required for this context in this transformation direction, or set by the context itself.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f698e30e2198المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تهيئ الطريقة الافتراضية الصرفة Start للفئة ara::crypto::cryp::AuthCipherCtx السياقَ بشكل متزامن لعملية تشفير أو فك تشفير وشيكة [SWS_CRYPT_50073]. عبر المعلمة transformDirection، يتم تحديد ما إذا كان السياق يجري إعداده للتشفير أم لفك التشفير. ولا يجوز استخدام هذا التحميل الزائد بدون متجه تهيئة (IV) إلا إذا كان السياق التشفيري لا يتطلب IV في اتجاه التحويل المختار أو يحدده بنفسه [SWS_CRYPT_50073]. القيمة المرجعة هي ara::core::Result<void> فارغ في حالة النجاح أو كود خطأ مطابق.
معالجة الأخطاء والشروط المسبقة
قبل الاستدعاء، يجب أن يكون السياق قد تم تكوينه بنجاح باستخدام مفتاح عبر SetKey؛ وإلا تفشل الدالة مع ara::crypto::CryptoErrc::kUninitializedContext[SWS_CRYPT_50073]. بالإضافة إلى ذلك، تحدث القيم المرجعة التالية في حالة الخطأ:
ara::crypto::CryptoErrc::kUnsupported، إذا كانت معالجة التدفق غير مدعومة من السياق أو إذا كان السياق يتطلب حتمًا التحديد الصريح لـ IV في اتجاه التحويل المختار [SWS_CRYPT_50073].
ara::crypto::CryptoErrc::kUsageViolation، إذا كان استخدام المفتاح المسموح به في KeySlot المكوّن لا يتضمن في وقت الاستدعاء الإذن المطلوب kAllowDataEncrypt للتشفير أو kAllowDataDecrypt لفك التشفير [SWS_CRYPT_50073].
EmptyKeySlot أو ara::crypto::CryptoErrc::kBusyResource، إذا كان KeySlot مكوّن فارغًا أو محظورًا حاليًا [SWS_CRYPT_50073].
ara::crypto::CryptoErrc::kIncompatibleObject، إذا كان KeySlot المكوّن لا يحتوي على SymmetricKey أو إذا كان نوع المفتاح هذا غير مدعوم من السياق [SWS_CRYPT_50073].
في حالة حدوث خطأ، تنطبق دلالات التراجع المحددة (rollback_semantics) [SWS_CRYPT_50073].
التزامن والتفاعل
الدالة مصرّح بها بـ noexcept=0، وتضمن السلامة من الاستثناءات، ومصممة لتكون آمنة بالنسبة للخيوط [SWS_CRYPT_50073]. إذا تطلبت الخوارزمية توفير متجه تهيئة خارجي، فيتعين بدلاً من ذلك استخدام التحميل الزائد Start(CryptoTransform, ReadOnlyMemRegion)[SWS_CRYPT_24715]. بعد نجاح التهيئة، يمكن إدراج بيانات موثقة إضافية عبر UpdateAuthenticatedData في حساب علامة التوثيق [SWS_CRYPT_20313].
تم إنشاء ملاحظة الاستخدام هذه آليًا استنادًا إلى مواصفة AUTOSAR Adaptive R25-11.
rollback_semantics if the allowed usage of the SymmetricKey deployed or contained in the provided KeySlot at the time of invocation of this interface does not include kAllowDataEncrypt for encryption, or kAllowData Decrypt for decryption, respectively
virtual ara::core::Result< void > UpdateAuthenticatedData (ReadOnlyMem Region authenticatedData) noexcept=0;
Update the tag calculation by a new chunk of additional authenticated data.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f3852a997444المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم الدالة UpdateAuthenticatedData للواجهة ara::crypto::cryp::AuthCipherCtx لتحديث حساب وسم المصادقة تدريجيًا بمقطع إضافي من البيانات الإضافية المصادق عليها (Additional Authenticated Data) [SWS_CRYPT_20313]. ويتم تمرير المخزن المؤقت المقابل كـ ReadOnlyMemRegion عبر المعلمة authenticatedData[SWS_CRYPT_20313].
فيما يتعلق بسياق الاستدعاء والتزامن، تم تعريف العملية على أنها thread-safe وكذلك exception safe[SWS_CRYPT_20313]. وتطبق شروط ترتيب صارمة على الاستدعاء:
يجب أن يكون التحويل قد بدأ مسبقًا عبر الدالة Start()، وإلا فسيتم الإبلاغ عن ara::crypto::CryptoErrc::kProcessingNotStarted[SWS_CRYPT_20313].
لا يجوز استدعاء الدالة بعد ذلك إذا كان قد تم تنفيذ UpdateConfidentialData بالفعل؛ وفي حالة عدم الامتثال، يتم إرجاع الخطأ ara::crypto::CryptoErrc::kInvalidUsageOrder[SWS_CRYPT_20313].
كقيمة مرجعة، تُرجع الدالة ara::core::Result<void>، وتكون فارغة في حالة النجاح أو تُغلف كود خطأ حدث [SWS_CRYPT_20313]. وتتميز جميع الأخطاء بدلالات تراجع (Rollback) [SWS_CRYPT_20313]:
ara::crypto::CryptoErrc::kInvalidInputSize: حجم المخزن المؤقت للإدخال الممرر غير صالح [SWS_CRYPT_20313].
ara::crypto::CryptoErrc::kUnsupported: معالجة التدفق غير مدعومة بواسطة السياق الحالي [SWS_CRYPT_20313].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي وهو بمثابة دليل توجيهي. وتظل مواصفات AUTOSAR هي المرجع الملزم.
Encrypt or decrypt confidential data. When used for decryption, the plaintext is returned without verifying its authenticity. An application must not use the data before verifying its authenticity using Finish().
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 0a7976c267f4المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم الطريقة UpdateConfidentialData للفئة ara::crypto::cryp::AuthCipherCtx للتشفير أو فك التشفير التدريجي لبيانات الحمولة السرية ضمن سياق تشفير موثق [SWS_CRYPT_50074]. ويتم تمرير مخزن الإدخال المؤقت in (النوع ReadOnlyMemRegion) الحاوي على جزء من النص الصريح أو المشفر، بالإضافة إلى مخزن الإخراج المؤقت out (النوع ReadWriteMemRegion) إليها [SWS_CRYPT_50074]. وكقيمة إرجاع متزامنة، تُرجع الدالة ara::core::Result<std::size_t>، والذي يحتوي عند النجاح على عدد البايتات المكتوبة فعليًا؛ وقد يكون هذا العدد أقل من سعة out[SWS_CRYPT_50074].
فيما يتعلق بسير العمل والتزامن، تنطبق الشروط التالية:
ترتيب التسلسل والنزاهة: قبل المعالجة، يجب أن تكون العملية قد بدأت عبر Start()[SWS_CRYPT_50074]. وإذا تم استخدام الطريقة لفك التشفير، فسيتم إخراج النص الصريح دون تحقق مسبق من الموثوقية؛ ولا يجوز للتطبيق بأي حال من الأحوال استخدام هذه البيانات قبل التحقق النهائي بواسطة Finish()[SWS_CRYPT_50074]. يمكن أن تتدفق بيانات موثقة إضافية بالتوازي عبر UpdateAuthenticatedData في حساب الوسم [SWS_CRYPT_20313].
أمان مؤشرات الترابط والاستثناءات: تم التصريح عن العملية بأنها آمنة لمؤشرات الترابط (thread-safe) وكذلك آمنة من الاستثناءات (exception-safe) ولا تطرح أي استثناءات (noexcept) [SWS_CRYPT_50074].
إذا فشلت المعالجة، تنطبق دلالات التراجع مع إرجاع رمز خطأ مطابق في ara::core::Result[SWS_CRYPT_50074]:
ara::crypto::CryptoErrc::kProcessingNotStarted: لم تبدأ المعالجة بعد عبر Start()[SWS_CRYPT_50074].
ara::crypto::CryptoErrc::kInsufficientCapacity: مخزن الإخراج المؤقت out ذو أبعاد صغيرة جدًا [SWS_CRYPT_50074].
ara::crypto::CryptoErrc::kInvalidInputSize: حجم المخزن المؤقت in غير صالح [SWS_CRYPT_50074].
ara::crypto::CryptoErrc::kUnsupported: معالجة التدفق غير مدعومة من قِبل السياق [SWS_CRYPT_50074].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R25-11.
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني