DEENESPTFRRUARHIKOZHNL

فئة ara::crypto::cryp::PublicKey

[SWS_CRYPT_22700] Upstream: RS_CRYPTO_02202

class PublicKey :           public CryptoObject {...};

General Asymmetric Public Key interface.

Header-Datei#include "ara/crypto/cryp/cryobj/public_key.h"
Forwarding-Header#include "ara/crypto/crypto_fwd.h"
Scopenamespace ara::crypto::cryp
Basisklasse(n)CryptoObject

دليل المستخدممولَّد بالذكاء الاصطناعي

يوفر الواجهة العامة والمؤشر المشترك للمفاتيح العامة غير المتماثلة.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 49ae23e669f8 المصدر أسئلة مفتوحة (3)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يوفر الواجهة العامة والمؤشر المشترك للمفاتيح العامة غير المتماثلة.

تمثل الواجهة ara::crypto::cryp::PublicKey كائن مفتاح عام غير متماثل عامًا في الوحدة crypto وتشتق من CryptoObject. وللإسناد والتمرير، توفر الفئة الاسم المستعار للنوع Sptr كـ std::shared_ptr<PublicKey>، والذي يتم تضمينه عبر الترويسة "ara/crypto/cryp/cryobj/public_key.h" [SWS_CRYPT_22701]. تفسير: يُرجَّح أن تمرر التطبيقات مثيلات من PublicKey::Sptr [SWS_CRYPT_22701] للتحقق غير المتماثل أو التشفير إلى فئات سياق التشفير. سؤال (مفتوح) ويتم التحكم في عمر المفتاح العام وتحريره بالكامل عبر عداد المراجع للمؤشر الذكي المشترك.

السياق

تحدد الفئة ara::crypto::cryp::PublicKey الواجهة العامة للمفاتيح العامة غير المتماثلة (General Asymmetric Public Key interface) داخل الوحدة crypto لـ AUTOSAR Adaptive Platform. وفقًا لإعلانها النحوي، ترث الفئة علنًا من CryptoObject. في هذا الدور، تعمل كنوع أساسي وعقد واجهة موحد لجميع هياكل المفاتيح العامة غير المتماثلة المستخدمة في العمليات التشفيرية. وبصفته مفتاحًا عامًا، يمثل كائن من هذه الفئة الجزء المفتوح رياضيًا من زوج مفاتيح غير متماثل، والمخصص لأغراض التحقق أو التشفير ولا يحتوي على معلمات مفاتيح خاصة حساسة. يتم الوصول إلى تعريف الواجهة عبر ملف الترويسة #include "ara/crypto/cryp/cryobj/public_key.h" وفقًا لـ [SWS_CRYPT_22701]. تفسير: نظرًا لأن PublicKey مشتق مباشرة من CryptoObject، يُرجَّح أن تشارك الواجهة الخصائص والاصطلاحات المشتركة لكائنات التشفير في المنصة، بينما توفر في الوقت نفسه التجريد المحدد لمفتاح غير متماثل. سؤال Q-83979c7ba039e328 (مفتوح)

دورة الحياة

لإدارة المثيلات وتمريرها، توفر الفئة الاسم المستعار للنوع Sptr، المحدد كـ std::shared_ptr<PublicKey> [SWS_CRYPT_22701]. بالتالي تستند علاقات ملكية المفتاح العام إلى الملكية المشتركة (Shared Ownership). يتيح ذلك لمكونات النظام والمستدعين المختلفين إسناد نفس مثيل المفتاح بالتوازي دون الحاجة بالضرورة إلى تحديد مالك حصري. يتم التحكم في دورة حياة مثيل مفتاح محدد عبر عداد المراجع للمؤشر الذكي القياسي. وبمجرد تحرير المرجع الأخير ووصول العداد إلى الصفر، يتم تدمير الكائن بشكل محكم. تفسير: يُرجَّح أن يشير التوفير الصريح للاسم المستعار Sptr [SWS_CRYPT_22701] إلى أن مثيلات PublicKey يتم إنشاؤها عادةً عبر مصانع أو إجراءات تحميل لوحدة التشفير وتمريرها مباشرة كمؤشرات مشتركة (Shared Pointers) للمستخدمين، بدلاً من إدارتها كمؤشرات خام أو كائنات قيمية. سؤال Q-0cdb961ab357bc3b (مفتوح) فيما يتعلق بالتزامن، يسمح الإسناد عبر std::shared_ptr بتمرير المؤشر عبر الخيوط، حيث لا تحدث تعديلات متوازية عادةً في حالة مفتاح عام صرف، لأنه يُستخدم أساسًا كمعلمة إسناد غير قابلة للتغيير.

مسار الاستخدام

يبدأ مسار الاستخدام النموذجي لـ ara::crypto::cryp::PublicKey بتضمين ملف الترويسة المطابق "ara/crypto/cryp/cryobj/public_key.h" [SWS_CRYPT_22701]. بعد ذلك، يحصل التطبيق على مرجع لكائن المفتاح في شكل المؤشر الذكي المُمطَّط ara::crypto::cryp::PublicKey::Sptr [SWS_CRYPT_22701]. يمثل هذا المؤشر كائن المفتاح غير المتماثل الجاهز للاستخدام. تفسير: يُرجَّح أن يتم تمرير مثيل Sptr [SWS_CRYPT_22701] الذي تم الحصول عليه في خطوات لاحقة إلى فئات سياق التشفير، على سبيل المثال للتحقق من التوقيعات الرقمية أو لتشفير البيانات بشكل غير متماثل. سؤال Q-b4800044ca9f058a (مفتوح) بعد الانتهاء من عمليات التحقق أو الحساب التشفيرية، يظل كائن المفتاح إما في ملكية مشتركة لعمليات الفحص المستقبلية أو يتم تحريره تلقائيًا بمجرد مغادرة نطاق Sptr المحلي. بفضل التغليف كواجهة مجردة، لا يتعين على المستدعين معرفة تفاصيل الخوارزمية الداخلية للمفتاح، بل يتفاعلون عبر الواجهة الموحدة لـ PublicKey.

يعتمد هذا الدليل على مواصفة AUTOSAR Adaptive الإصدار R25-11 وتم إنشاؤه تلقائيًا.

مخطط الفئات UML

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__crypto__cryp__PublicKey940 PublicKey nara__crypto__cryp__CryptoObject679 CryptoObject nara__crypto__cryp__PublicKey940->nara__crypto__cryp__CryptoObject679 nara__crypto__Serializable855 Serializable nara__crypto__cryp__CryptoObject679->nara__crypto__Serializable855

أسماء الأنواع البديلة

Sptr اسم نوع بديل

Shared smart pointer of the interface.

using Sptr = std::shared_ptr<PublicKey>;

توثيق أسماء الأنواع البديلة

اسم نوع بديل Sptr [SWS_CRYPT_22701] Upstream: RS_CRYPTO_02202

using Sptr = std::shared_ptr<PublicKey>;

Shared smart pointer of the interface.

Header-Datei#include "ara/crypto/cryp/cryobj/public_key.h"
Scopeclass ara::crypto::cryp::PublicKey
SymbolSptr

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CRYPT_22701
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22701@rel:R25-11#cfdcda15
Content hash
cfdcda15
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22701
Status: valid/unmigrated Version: rel:R25-11#0850f625 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CRYPT_22701@rel:R25-11#0850f625
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#5b6df2722026-09-30
  • R19-11rel:R19-11#a5415fce2026-10-14
  • R20-11rel:R20-11#2eac49f72026-10-14
  • R21-11rel:R21-11#2eac49f72026-10-14
  • R22-11rel:R22-11#d5b69f5e2026-10-14
  • R23-11rel:R23-11#a4933a2b2026-10-14
  • R24-11rel:R24-11#ad436f552026-10-14
  • R25-11rel:R25-11#0850f6252026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill