DEENESPTFRRUARHIKOZHNL

क्लास ara::diag::Authentication

[SWS_DM_01123] Upstream: RS_Diag_04251

class Authentication {...};

Class to implement the Service Authentication interfaces to application.

Header-Datei#include "ara/diag/authentication.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

उपयोगकर्ता गाइडएआई जनित

बाहरी डायग्नोस्टिक टेस्टर्स के लिए UDS सर्विस 0x29 प्रमाणीकरण हेतु अनुप्रयोग को इंटरफ़ेस प्रदान करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: a55f7043e3c0 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

बाहरी डायग्नोस्टिक टेस्टर्स के लिए UDS सर्विस 0x29 प्रमाणीकरण हेतु अनुप्रयोग को इंटरफ़ेस प्रदान करता है।

क्लास ara::diag::Authentication बाहरी टेस्टर्स (AUTOSAR AP SWS Diagnostics पृ. 63) के समक्ष UDS सेवा 0x29 प्रमाणीकरण के निष्पादन के लिए अनुप्रयोग-पक्षीय इंटरफ़ेस के रूप में कार्य करती है। Offer() के माध्यम से आरंभीकरण और सक्रियण के बाद, अनुप्रयोग एसिंक्रोनस कॉलबैक्स ([SWS_DM_01126], [SWS_DM_01130]) के माध्यम से प्रमाणपत्र सत्यापन और स्वामित्व का प्रमाण (Proof of Ownership) संभालता है। इंस्टेंस न तो कॉपी करने योग्य हैं और न ही स्थानांतरित करने योग्य, और पोर्ट-विशिष्ट InstanceSpecifier के माध्यम से Diagnostic Management से बंधे होते हैं ([SWS_DM_01124], [SWS_DM_01609])।

संदर्भ

क्लास ara::diag::Authentication AUTOSAR Adaptive Platform (AUTOSAR AP SWS Diagnostics पृ. 63) के भीतर UDS सेवा 0x29 (Authentication) के प्रसंस्करण के लिए अनुप्रयोग-पक्षीय इंटरफ़ेस प्रदान करती है। यह अनुप्रयोग-विशिष्ट हैंडलर्स के लिए एक प्रकार-सुरक्षित आधार के रूप में कार्य करती है, जो आने वाले डायग्नोस्टिक कनेक्शनों के क्रिप्टोग्राफ़िक प्रमाणीकरण को नियंत्रित और निष्पादित करते हैं।

सिस्टम आर्किटेक्चर में, क्लास दो प्रमुख भागीदारों के साथ इंटरैक्ट करती है: बाहरी डायग्नोस्टिक टेस्टर, जो वाहन को प्रमाणीकरण अनुरोध भेजता है, और वाहन का आंतरिक Diagnostic Management (DM), जो डायग्नोस्टिक संदेश प्राप्त करता है, फ़िल्टर करता है और पंजीकृत हैंडलर्स को अग्रेषित करता है ([SWS_DM_01130])। प्रमाणपत्रों की पुष्टि करने, चुनौतियों की गणना करने और सत्र कुंजियाँ उत्पन्न करने के लिए अनुप्रयोग ara::diag::Authentication द्वारा निर्दिष्ट इंटरफ़ेस फ़ंक्शंस को कार्यान्वित करता है ([SWS_DM_01126], [SWS_DM_01128])।

AuthenticationKontext Tester Tester DiagnosticManagement DiagnosticManagement Tester->DiagnosticManagement UDS 0x29 DiagnosticManagement->Tester UDS Response AuthenticationHandler AuthenticationHandler DiagnosticManagement->AuthenticationHandler Verify-Callbacks AuthenticationHandler->DiagnosticManagement Offer / StopOffer

संदर्भ आरेख: Diagnostic Management और बाहरी डायग्नोस्टिक टेस्टर के बीच Authentication हैंडलर का अंतःस्थापन। स्रोत: [SWS_DM_01124], [SWS_DM_01130], AUTOSAR AP SWS Diagnostics पृ. 63

जीवनचक्र

ara::diag::Authentication के इंस्टेंस एक विशिष्ट पोर्ट मॉडल से बंधे होते हैं। कंस्ट्रक्टर को एक ara::core::InstanceSpecifier की आवश्यकता होती है, जो किसी DiagnosticAuthenticationInterface के PortPrototype को संदर्भित करता है, और साथ ही पैरामीटर ConcurrencyType की आवश्यकता होती है ([SWS_DM_01124])। उत्तरार्द्ध यह निर्धारित करता है कि कार्यान्वयन थ्रेड-सुरक्षित (kConcurrent) या गैर-थ्रेड-सुरक्षित (kNotConcurrent) डिज़ाइन किया गया है ([SWS_DM_01124])। चूँकि सत्यापन कॉलबैक्स को विभिन्न क्लाइंट्स के लिए पुनःप्रवेशी (reentrant) रूप से कॉल किया जा सकता है ([SWS_DM_01126], [SWS_DM_01127]), Diagnostic Management संभवतः kNotConcurrent के तहत इंस्टेंस पर कॉल्स को क्रमबद्ध (serialize) करता है। प्रश्न Q-5d890d01c54e70ca (खुला)

स्वामित्व के संबंध में, ara::diag::Authentication को कड़ाई से एक गैर-प्रतिलिपि-योग्य और गैर-स्थानांतरण-योग्य एकल इंस्टेंस के रूप में परिभाषित किया गया है: कॉपी और मूव दोनों कंस्ट्रक्टरों के साथ-साथ संबंधित असाइनमेंट ऑपरेटरों को स्पष्ट रूप से हटा दिया गया है ([SWS_DM_01609], [SWS_DM_01610], [SWS_DM_01607], [SWS_DM_01608])। इंस्टैंशिएशन के बाद, क्लास स्वचालित रूप से अनुरोध स्वीकार नहीं करती है। केवल Offer() को कॉल करके Diagnostic Management को इंस्टेंस पर आने वाले प्रमाणीकरण अनुरोधों को अग्रेषित करने के लिए अधिकृत किया जाता है ([SWS_DM_01130])। इस अग्रेषण को StopOffer() के माध्यम से किसी भी समय फिर से निष्क्रिय किया जा सकता है ([SWS_DM_01131])। संसाधनों की रिलीज वर्चुअल डिस्ट्रक्टर ~Authentication() ([SWS_DM_01125]) के माध्यम से नियतात्मक रूप से होती है।

उपयोग पथ

एक विशिष्ट उपयोग के मामले में सेवा का प्रावधान, प्रमाणपत्र सत्यापन और कुंजी के स्वामित्व का प्रमाण (Proof of Ownership) शामिल है:

  1. सेवा पेश करना: इंस्टैंशिएशन के बाद, अनुप्रयोग Offer() के माध्यम से Diagnostic Management ([SWS_DM_01130]) के साथ पंजीकृत होता है।
  2. प्रमाणपत्र सत्यापन: यदि टेस्टर से कोई प्रमाणीकरण अनुरोध प्राप्त होता है, तो DM इसे सक्षम विधि पर अग्रेषित करता है:
    • यूनिडायरेक्शनल प्रमाणीकरण में DM VerifyCertificateUnidirectional(...) को कॉल करता है ([SWS_DM_01126])। एप्लिकेशन पास किए गए क्लाइंट प्रमाणपत्र को सत्यापित करता है और ara::core::Future के माध्यम से अतुल्यकालिक रूप से एक सर्वर चैलेंज और सर्वर की एफेमरल पब्लिक कुंजी से युक्त एक टपल लौटाता है।
    • द्विदिशी प्रमाणीकरण में DM VerifyCertificateBidirectional(...) को कॉल करता है ([SWS_DM_01127])। इसमें एप्लिकेशन टेस्टर के लिए अतिरिक्त रूप से सर्वर प्रमाणपत्र और स्वयं का Proof of Ownership उत्पन्न करता है।
  3. स्वामित्व का प्रमाण (Proof of Ownership): यदि टेस्टर सर्वर चैलेंज का उत्तर देता है, तो DM मेथड VerifyOwnership(...) को कॉल करता है ([SWS_DM_01128])। एप्लिकेशन पास किए गए clientPOWN को क्लाइंट की एफेमरल कुंजी के साथ पूर्व में उत्पन्न चैलेंज के विरुद्ध जाँचना निष्पादित करता है। सफलता पर Future सेशन की कुंजी की जानकारी लौटाता है।
  4. सर्विस समाप्त करना: यदि इंटरफ़ेस को बंद किया जाना है, तो एप्लिकेशन StopOffer() को कॉल करता है ([SWS_DM_01131])।
एकदिशीय प्रमाणीकरण का अनुक्रमडायग्नोस्टिक टेस्टरनिदान प्रबंधनAuthentication-HandlerOffer()Result<void>UDS 0x29 (VerifyCertificateUnidirectional)VerifyCertificateUnidirectional(...)Zertifikat verifizieren, Challenge & Key erzeugenFuture-Ergebnis: Challenge, Ephemeral Keyसर्वर-चैलेंज और कुंजी के साथ सकारात्मक प्रतिक्रिया (Positive Response)UDS 0x29 (POWN और कुंजी के साथ VerifyOwnership)VerifyOwnership(clientPOWN, clientEphemeralKey, ...)POWN verifizieren & Session Key berechnenFuture-Ergebnis: Session Key InfoPositive Response

अनुक्रम आरेख: स्वामित्व के प्रमाण के बाद के सत्यापन के साथ एकदिशीय प्रमाणीकरण का प्रवाह। स्रोत: [SWS_DM_01126], [SWS_DM_01128], [SWS_DM_01130]

त्रुटि परिदृश्य

ara::diag::Authentication का उपयोग करते समय स्थैतिक मॉडल त्रुटियों और गतिशील रनटाइम त्रुटियों के बीच अंतर किया जाना चाहिए:

  • कंस्ट्रक्शन उल्लंघन: यदि मॉडल कॉन्फ़िगरेशन प्रोसेस से मेल नहीं खाता है या InstanceSpecifier त्रुटिपूर्ण है, तो कंस्ट्रक्शन परिभाषित उल्लंघनों (अन्य बातों के अलावा InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation या InstanceSpecifierAlreadyInUseViolation) के साथ विफल हो जाता है ([SWS_DM_01124])।
  • Offer में स्थिति त्रुटि: पहले से ही ऑफ़र की गई सर्विस पर Offer() का पुनः कॉल त्रुटि कोड DiagOfferErrc::kAlreadyOffered के साथ विफल हो जाता है ([SWS_DM_01130])।
  • क्रिप्टोग्राफ़िक और प्रोटोकॉल त्रुटियाँ: यदि क्लाइंट प्रमाणपत्र या Proof of Ownership की जाँच विफल हो जाती है, तो एप्लिकेशन को Future को ISO 14229-1 के अनुसार उपयुक्त UDS Negative Response Code (NRC) के साथ DiagUdsNrcErrc के माध्यम से रिज़ॉल्व करना होगा ([SWS_DM_01126], [SWS_DM_01127], [SWS_DM_01128])।
  • कनेक्शन टूटना: यदि कोई चल रही डायग्नोस्टिक बातचीत बाधित होती है, तो DM ऑब्जेक्ट CancellationHandler के माध्यम से इसे संकेतित करता है ([SWS_DM_01126])। एप्लिकेशन cancellationHandler.IsCanceled() के ज़रिए स्थिति की क्वेरी कर सकता है या SetNotifier के माध्यम से कॉलबैक फ़ंक्शन पंजीकृत कर सकता है। पास किए गए डेटा-स्पैन केवल तब तक मान्य रहते हैं जब तक कि Promise पूरा न हो जाए या प्रोसेसिंग रद्द न हो जाए ([SWS_DM_01126], [SWS_DM_01128])।

यह क्लास गाइड स्वचालित रूप से तैयार किया गया था और AUTOSAR Adaptive Platform रिलीज़ R25-11 के विनिर्देश पर आधारित है।

सदस्य मानचित्र

कंस्ट्रक्टर और डिस्ट्रक्टर

2

ऑपरेटर

1

क्लास आरेख

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

G nara__diag__Authentication309 Authentication + Authentication() + operator=() + ~Authentication() + Offer() + StopOffer() + VerifyCertificateBidirectional() + VerifyCertificateUnidirectional() + VerifyOwnership()

विवरण दृश्य

रूपरेखा में कोई प्रविष्टि चुनें।

कंस्ट्रक्टर और डिस्ट्रक्टर

Authentication फ़ंक्शन 3

Constructor of Authentication.

ओवरलोड Authentication 3
explicit Authentication (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept; SWS_DM_01124
Authentication (Authentication &)=delete; SWS_DM_01609
Authentication (Authentication &&) noexcept=delete; SWS_DM_01610
~Authentication फ़ंक्शन

Destructor of Authentication.

virtual ~Authentication () noexcept;

मेथड

Offer फ़ंक्शन

This Offer will enable the DM to forward request messages to this handler.

ara::core::Result< void > Offer () noexcept;
StopOffer फ़ंक्शन

This StopOffer will disable the forwarding of request messages from DM.

void StopOffer () noexcept;
VerifyCertificateBidirectional फ़ंक्शन

This function accepts the certificate and challenge received from the tester, verifies the certificate, and creates a challenge, Ephemeral Public Key and Proof Of Ownership that must be returned to the tester. The function also returns the server certificate that will be used by the tester to verify the Proof Of Ownership. This callback may be called re-entrant to requests from different clients.

virtual ara::core::Future< std::tuple< ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte > > > VerifyCertificateBidirectional (ara::core::Byte communicationConfiguration, ara::core::Span< const ara::core::Byte > clientCertificate, ara::core::Span< const ara::core::Byte > client Challenge, const MetaInfo &metaInfo, CancellationHandler cancellation Handler) noexcept=0;
VerifyCertificateUnidirectional फ़ंक्शन

This function accepts the certificate received from the tester, verifies it, and creates a challenge and ephemeral public key that must be returned to the tester. This callback may be called re-entrant to requests from different clients

virtual ara::core::Future< std::tuple< ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte > > > Verify CertificateUnidirectional (ara::core::Byte communicationConfiguration, ara::core::Span< const ara::core::Byte > clientCertificate, ara::core::Span< const ara::core::Byte > clientChallenge, const Meta Info &metaInfo, CancellationHandler cancellationHandler) noexcept=0;
VerifyOwnership फ़ंक्शन

This function accepts the Proof Of Ownership received from the tester and verifies it with the Public Key of the certificate received in the verifyCertificateUnidirectional / verifyCertificate Bidirectional against the server challenge created in the last call to verifyCertificateUnidirectional / verifyCertificateBidirectional.

virtual ara::core::Future< ara::core::Vector< ara::core::Byte > > VerifyOwnership (ara::core::Span< const ara::core::Byte > clientPOWN, ara::core::Span< const ara::core::Byte > clientEphemeralPublicKey, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

ऑपरेटर

operator= फ़ंक्शन 2

Authentication shall be a single not assignable instance.

ओवरलोड = 2

मेथड का प्रलेखन

फ़ंक्शन Authentication [SWS_DM_01124] Upstream: RS_Diag_04251, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit Authentication (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept;

Constructor of Authentication.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 906bc324edb3 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

कंस्ट्रक्टर सॉफ़्टवेयर पोर्ट [SWS_DM_01124] पर डायग्नोस्टिक प्रमाणीकरण अनुरोधों को संभालने के लिए हैंडलर वर्ग ara::diag::Authentication के एक ऑब्जेक्ट को समकालिक रूप से आरंभ करता है। पैरामीटर specifier मॉडल किए गए PortPrototype को संदर्भित करता है, जिसे DiagnosticAuthenticationPortMapping के माध्यम से अनिवार्य रूप से एक DiagnosticAuthenticationInterface द्वारा टाइप किया जाना चाहिए [SWS_DM_01124]। पैरामीटर concurrencyType के माध्यम से, यह निर्धारित किया जाता है कि फ्रेमवर्क विधि कॉल को समवर्ती रूप से (kConcurrent) या गैर-थ्रेड-सुरक्षित (kNotConcurrent) रूप से वितरित करता है या नहीं [SWS_DM_01124]।

चूँकि फ़ंक्शन को noexcept के रूप में घोषित किया गया है, गलत कॉल की सूचना अपवादों के माध्यम से नहीं दी जाती है, बल्कि वे फ़्रेमवर्क उल्लंघनों (Violations) को ट्रिगर करते हैं [SWS_DM_01124]:

  • InstanceSpecifierMappingIntegrityViolation: पहचानकर्ता (identifier) को Executable के संदर्भ में रिज़ॉल्व नहीं किया जा सकता है या यह किसी PortPrototype को संदर्भित नहीं करता है [SWS_DM_01124]।
  • PortInterfaceMappingViolation: संदर्भित PortPrototype को DiagnosticAuthenticationInterface के रूप में मॉडल नहीं किया गया है [SWS_DM_01124]।
  • ProcessMappingViolation: रनटाइम पर कोई उपयुक्त मॉडल किया गया प्रोसेस नहीं मिलता है [SWS_DM_01124]।
  • InstanceSpecifierAlreadyInUseViolation: InstanceSpecifier का वर्तमान प्रोसेस में पहले से ही एक इंस्टेंस के लिए उपयोग किया जा चुका है [SWS_DM_01124]।

कंस्ट्रक्टर स्वयं थ्रेड-सुरक्षित (thread-safe) और अपवाद-सुरक्षित (exception-safe) है [SWS_DM_01124], जबकि संबंधित डिस्ट्रक्टर ~Authentication() गैर-थ्रेड-सुरक्षित (not thread-safe) के रूप में निर्दिष्ट है [SWS_DM_01125]। इंस्टेंसिएशन के तुरंत बाद कोई डायग्नोस्टिक अनुरोध अग्रेषित नहीं किए जाते हैं: Diagnostic Manager द्वारा UDS सर्विस 0x29 (PKI Certificate Exchange, APCE के साथ Authentication AUTOSAR_AP_SWS_Diagnostics Tab. 4.1 “Limitations of sub-functions of 0x19 ReadDTCInformation”) के लिए अग्रेषण को सक्षम करने हेतु एप्लिकेशन को पहले Offer() को कॉल करना होगा [SWS_DM_01130]। सर्टिफिकेट सत्यापन को बाद में VerifyCertificateUnidirectional [SWS_DM_01126], VerifyCertificateBidirectional [SWS_DM_01127] और VerifyOwnership [SWS_DM_01128] के माध्यम से संसाधित किया जाता है। ऑब्जेक्ट विनाश (destruction) से पहले अग्रेषण को StopOffer() के साथ समाप्त किया जाना चाहिए [SWS_DM_01131]।

यह उपयोग निर्देश AUTOSAR Adaptive विनिर्देश R25-11 पर आधारित एक AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticAuthenticationPortMapping needs to be typed by a DiagnosticAuthenticationInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticAuthenticationInterface.
concurrencyTypeSpecifies if the interface is implemented as thread safe ( kConcurrent) or non-thread safe (kNotConcurrent).

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

Record
AUTOSAR/AP/record/SWS_DM_01124
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01124@rel:R25-11#3a007b75
Content hash
3a007b75
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01124
Status: valid/unmigrated Version: rel:R25-11#a528cb61 Versionshistorie & Revisions (1 transition, 6 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_DM_01124@rel:R25-11#a528cb61
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#869efd0b2026-09-30
  • R21-11rel:R21-11#a05195552026-10-14
  • R22-11rel:R22-11#0575421d2026-10-14
  • R23-11rel:R23-11#fe6f8f0a2026-10-14
  • R24-11rel:R24-11#85e435582026-10-14
  • R25-11rel:R25-11#a528cb612026-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

फ़ंक्शन Authentication [SWS_DM_01609] Upstream: RS_AP_00147

Authentication (Authentication &)=delete;

Authentication shall be a single not copy-able instance.

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication

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

Record
AUTOSAR/AP/record/SWS_DM_01609
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01609@rel:R25-11#a6fbc01a
Content hash
a6fbc01a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01609
Status: valid/unmigrated Version: rel:R25-11#3da2cab5 Versionshistorie & Revisions (1 transition, 4 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_DM_01609@rel:R25-11#3da2cab5
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#7e225c2d2026-09-30
  • R23-11rel:R23-11#4d1637062026-10-14
  • R24-11rel:R24-11#3da2cab52026-10-14
  • R25-11rel:R25-11#3da2cab52026-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

फ़ंक्शन Authentication [SWS_DM_01610] Upstream: RS_AP_00147

Authentication (Authentication &&) noexcept=delete;

Move constructor of Authentication.

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication

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

Record
AUTOSAR/AP/record/SWS_DM_01610
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01610@rel:R25-11#479b182f
Content hash
479b182f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01610
Status: valid/unmigrated Version: rel:R25-11#15116263 Versionshistorie & Revisions (1 transition, 4 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_DM_01610@rel:R25-11#15116263
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#528b40c12026-09-30
  • R23-11rel:R23-11#a56d73ab2026-10-14
  • R24-11rel:R24-11#151162632026-10-14
  • R25-11rel:R25-11#151162632026-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

फ़ंक्शन Offer [SWS_DM_01130] Upstream: RS_Diag_04251

ara::core::Result< void > Offer () noexcept;

This Offer will enable the DM to forward request messages to this handler.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 082dbe15e2bd उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

क्लास ara::diag::Authentication ([SWS_DM_01130]) की समकालिक विधि Offer() के साथ, एक Adaptive Application Diagnostic Management (DM) के साथ अपने प्रमाणीकरण हैंडलर को पंजीकृत करता है। यह DM को अधिकृत करता है और इस हैंडलर को आने वाले अनुरोधों को अग्रेषित करने में सक्षम बनाता है (AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.1 “Offer”)। फ़ंक्शन कोई पासिंग पैरामीटर स्वीकार नहीं करता है और रिटर्न प्रकार ara::core::Result<void> के माध्यम से ऑपरेशन के परिणाम का संकेत देता है।

कॉल को noexcept घोषित किया गया है और इस प्रकार यह अपवाद-सुरक्षित है ([SWS_DM_01130])। यदि पंजीकरण विफल हो जाता है क्योंकि इस इंस्टेंस के लिए सेवा पहले ही प्रदान की जा चुकी है, तो विशिष्ट त्रुटि कोड DiagOfferErrc::kAlreadyOffered परिणाम ऑब्जेक्ट में लौटाया जाता है ([SWS_DM_01130])। इसके अतिरिक्त, इंटरफ़ेस को not thread-safe के रूप में निर्दिष्ट किया गया है; उसी इंस्टेंस पर समानांतर एक्सेस संभवतः असुरक्षित नहीं होनी चाहिए और एप्लिकेशन पक्ष पर सिंक्रनाइज़ की जानी चाहिए। प्रश्न Q-51ab72e4e72a7351 (खुला)

नैदानिक प्रसंस्करण के जीवन चक्र में, Offer() सीधे समकक्ष फ़ंक्शन StopOffer() ([SWS_DM_01131], AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.2 “StopOffer”) से मेल खाता है, जो अनुरोधों के अग्रेषण को फिर से समाप्त करता है। यह पैटर्न नैदानिक हैंडलर्स के एकसमान प्रावधान दृष्टिकोण का अनुसरण करता है, जैसा कि उदाहरण के लिए ara::diag::CommunicationControl::Offer ([SWS_DM_00809]) या ara::diag::DoIPPowerMode::Offer ([SWS_DM_00735]) में भी लागू होता है, जहां अनुरोधों को एप्लिकेशन द्वारा स्पष्ट रूप से पेश किए जाने के बाद ही संसाधित किया जा सकता है ([SWS_DM_01525])।

यह उपयोग नोट AI क्यूरेशन सहायक द्वारा AUTOSAR R25-11 विनिर्देश स्थिति के आधार पर स्वचालित रूप से तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

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

Record
AUTOSAR/AP/record/SWS_DM_01130
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01130@rel:R25-11#18cc07b5
Content hash
18cc07b5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01130
Status: valid/unmigrated Version: rel:R25-11#ceefb477 Versionshistorie & Revisions (1 transition, 6 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_DM_01130@rel:R25-11#ceefb477
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#78b7f7aa2026-09-30
  • R21-11rel:R21-11#2d6054a22026-10-14
  • R22-11rel:R22-11#61d3a12b2026-10-14
  • R23-11rel:R23-11#d2d63def2026-10-14
  • R24-11rel:R24-11#66beb2132026-10-14
  • R25-11rel:R25-11#ceefb4772026-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

फ़ंक्शन StopOffer [SWS_DM_01131] Upstream: RS_Diag_04251

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 4aa6d764eb2f उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग

वर्ग ara::diag::Authentication की विधि StopOffer (ara/diag/authentication.h में परिभाषित) Diagnostic Manager (DM) द्वारा इंस्टेंस [SWS_DM_01131] को अनुरोध संदेशों के अग्रेषण को निष्क्रिय करती है। कॉल समकालिक (synchronously) रूप से निष्पादित होता है, इसके लिए किसी स्थानांतरण पैरामीटर (transfer parameters) की आवश्यकता नहीं होती है और इसका कोई रिटर्न मान नहीं होता है AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.2 “StopOffer”।

त्रुटि प्रबंधन और निष्पादन सुरक्षा

फ़ंक्शन अपवाद-सुरक्षित (noexcept) के रूप में विनिर्दिष्ट है; विशिष्ट त्रुटि कोड या अपवाद परिभाषित नहीं हैं [SWS_DM_01131]।

समवर्तीता और प्रतिबंध

ऑपरेशन स्पष्ट रूप से थ्रेड-सुरक्षित नहीं (“not thread-safe”) के रूप में इंगित किया गया है [SWS_DM_01131]। एक ही इंस्टेंस पर समवर्ती कॉलों को कॉलिंग एप्लिकेशन द्वारा सिंक्रनाइज़ किया जाना चाहिए।

इंटरेक्शन और आर्किटेक्चरल संदर्भ

StopOffer का डिज़ाइन पैटर्न Adaptive Diagnostic Manager में विभिन्न सेवाओं और हैंडलरों में सुसंगत रूप से उपयोग किया जाता है, जिनमें SecurityAccess [SWS_DM_00767], CommunicationControl [SWS_DM_00810], DownloadService [SWS_DM_00793] साथ ही EcuResetRequest [SWS_DM_01017] शामिल हैं। यद्यपि नामकरण ara::com में सेवा प्रावधान (service provision) पर आधारित है, यह एक निदान-विशिष्ट कार्यान्वयन है AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”। Interpretation: StopOffer के माध्यम से निष्क्रिय करने से पहले, इंस्टेंस को आमतौर पर पहले एक प्रावधान फ़ंक्शन (provisioning function) के माध्यम से सक्रिय रूप से अनुरोध प्राप्त करने चाहिए थे। प्रश्न Q-da990416e53707ed (खुला)

यह उपयोग नोट AUTOSAR AP R25-11 विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_01131
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01131@rel:R25-11#fa8e479b
Content hash
fa8e479b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01131
Status: valid/unmigrated Version: rel:R25-11#7692df5e Versionshistorie & Revisions (1 transition, 6 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_DM_01131@rel:R25-11#7692df5e
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#23d4ebca2026-09-30
  • R21-11rel:R21-11#334e81982026-10-14
  • R22-11rel:R22-11#e0037c802026-10-14
  • R23-11rel:R23-11#df69c0c42026-10-14
  • R24-11rel:R24-11#0a4f51072026-10-14
  • R25-11rel:R25-11#7692df5e2026-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

फ़ंक्शन VerifyCertificateBidirectional [SWS_DM_01127] Upstream: RS_Diag_04251, RS_AP_00128

virtual ara::core::Future< std::tuple< ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte > > > VerifyCertificateBidirectional (ara::core::Byte communicationConfiguration, ara::core::Span< const ara::core::Byte > clientCertificate, ara::core::Span< const ara::core::Byte > client Challenge, const MetaInfo &metaInfo, CancellationHandler cancellation Handler) noexcept=0;

This function accepts the certificate and challenge received from the tester, verifies the certificate, and creates a challenge, Ephemeral Public Key and Proof Of Ownership that must be returned to the tester. The function also returns the server certificate that will be used by the tester to verify the Proof Of Ownership. This callback may be called re-entrant to requests from different clients.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 96bce3dceaab उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

इंटरफ़ेस ara::diag::Authentication ([SWS_DM_01127]) का विशुद्ध वर्चुअल कॉलबैक मेथड VerifyCertificateBidirectional डायग्नोस्टिक सर्वर द्वारा तब कॉल किया जाता है, जैसे ही सबफ़ंक्शन 0x02 (verifyCertificateBidirectional) के साथ UDS सेवा 0x29 (Authentication) के लिए एक डायग्नोस्टिक अनुरोध आता है और प्रारंभिक परीक्षण सफलतापूर्वक उत्तीर्ण हो जाते हैं ([SWS_DM_01235], AUTOSAR_AP_SWS_Diagnostics §7.3.2.8.11.3 “Service 0x29 – verifyCertificateBidirectional (0x02)”)।

उपयोग और सिमेंटिक्स:\nसर्वर संचार कॉन्फ़िगरेशन के साथ-साथ टेस्टर से प्राप्त प्रमाणपत्र और चैलेंज डेटा को communicationConfiguration, clientCertificate और clientChallenge के माध्यम से metaInfo और cancellationHandler के साथ पास करता है ([SWS_DM_01127], [SWS_DM_01235])। इनपुट spans के बफ़र्स तब तक मान्य रहते हैं, जब तक कि लौटाया गया ara::core::Future संबंधित Promise के माध्यम से पूरा नहीं हो जाता या प्रक्रिया रद्द नहीं हो जाती ([SWS_DM_01127])। एसिंक्रोनस रूप से, मेथड सर्वर चैलेंज, सर्वर प्रमाणपत्र, परिकलित Proof-of-Ownership और सर्वर की Ephemeral Public Key से युक्त 4-टुपल को डायग्नोस्टिक सर्वर पर लौटाता है ([SWS_DM_01127])।

रद्दीकरण और कन्करेंसी:\ncancellationHandler के माध्यम से, एप्लिकेशन IsCanceled का उपयोग करके वर्तमान स्थिति को पोल कर सकता है या SetNotifier के ज़रिए कनेक्शन रद्दीकरण के लिए एक अधिसूचना फ़ंक्शन रजिस्टर कर सकता है ([SWS_DM_01127])। इंटरफ़ेस को noexcept के रूप में परिभाषित किया गया है और विभिन्न क्लाइंट्स के अनुरोधों के संबंध में इसे रीएन्ट्रेंट रूप से कॉल किया जा सकता है ([SWS_DM_01127])। क्या कार्यान्वयन थ्रेड-सुरक्षित होना चाहिए, यह कन्स्ट्रक्टर में पास किए गए ConcurrencyType के माध्यम से निर्धारित किया जाता है ([SWS_DM_01127])।

एरर हैंडलिंग और इंटरैक्शन:\nत्रुटि की स्थिति में, एप्लिकेशन ISO 14229-1 के अनुसार DiagUdsNrcErrc के माध्यम से एक उपयुक्त NRC लौटाता है; नकारात्मक रिटर्न वैल्यूज़ को डायग्नोस्टिक सर्वर द्वारा अलग से संसाधित किया जाता है ([SWS_DM_01127], [SWS_DM_01236])। UDS प्रमाणीकरण ([SWS_DM_01226]) के अंतर्गत, इस सबफ़ंक्शन का कॉन्फ़िगरेशन एक आवश्यक पूर्वशर्त है, यदि DiagnosticProofOfOwnership कॉन्फ़िगर किया गया है ([SWS_DM_01227], [SWS_DM_01228])।

नोट: ये निर्देश स्वचालित रूप से AUTOSAR AP विनिर्देश R25-11 के आधार पर उत्पन्न किए गए थे।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
communicationConfigurationAs defined in ISO 14229-1:2020, this parameter provides information about how to proceed with security in further diagnostic communication after the Authentication.
clientCertificateThe certificate that is received from the tester during Bidirectional Authentication. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
clientChallengeAs defined in ISO14229-1:2020, this parameter provides the challenge received from the tester during Bidirectional Authentication, Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<std::tuple<ara::core::Vector<ara::core::Vector<ara::core::Vector<ara::core::Vector<ara::core::Byte >, ara::core::Byte >, ara::core::Byte >, ara::core::Byte > > >Returns the challenge created by the application, Certificate of the server, ProofOfOwnership calculated by the server, Ephemeral Public Key of server.

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_01127
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01127@rel:R25-11#933cd6d0
Content hash
933cd6d0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01127
Status: valid/unmigrated Version: rel:R25-11#221a1952 Versionshistorie & Revisions (1 transition, 6 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_DM_01127@rel:R25-11#221a1952
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#1a83c6762026-09-30
  • R21-11rel:R21-11#709ba10b2026-10-14
  • R22-11rel:R22-11#f6afc01a2026-10-14
  • R23-11rel:R23-11#9b3be6d92026-10-14
  • R24-11rel:R24-11#53b61fdb2026-10-14
  • R25-11rel:R25-11#221a19522026-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

फ़ंक्शन VerifyCertificateUnidirectional [SWS_DM_01126] Upstream: RS_Diag_04251, RS_AP_00128

virtual ara::core::Future< std::tuple< ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte > > > Verify CertificateUnidirectional (ara::core::Byte communicationConfiguration, ara::core::Span< const ara::core::Byte > clientCertificate, ara::core::Span< const ara::core::Byte > clientChallenge, const Meta Info &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

This function accepts the certificate received from the tester, verifies it, and creates a challenge and ephemeral public key that must be returned to the tester. This callback may be called re-entrant to requests from different clients

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 880414da5993 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

क्लास ara::diag::Authentication का कॉलबैक मेथड VerifyCertificateUnidirectional डायग्नोस्टिक सर्वर इंस्टेंस द्वारा तब कॉल किया जाता है, जैसे ही सबफ़ंक्शन verifyCertificateUnidirectional (0x01) के साथ UDS सेवा 0x29 के लिए अनुरोध प्राप्त होता है और सफलतापूर्वक पूर्व-परीक्षण किया जाता है (SWS Diagnostics §7.3.2.8.11.2 “Service 0x29 – verifyCertificateUnidirectional (0x01)”, [SWS_DM_01230])। यह ISO 14229-1 के अनुसार PKI प्रमाणपत्र विनिमय के माध्यम से एकदिशात्मक प्रमाणीकरण को लागू करता है ([SWS_DM_01226])।

पैरामीटर के रूप में संचार कॉन्फ़िगरेशन (communicationConfiguration), क्लाइंट प्रमाणपत्र (clientCertificate) और क्लाइंट चैलेंज (clientChallenge) के साथ-साथ मेटा-जानकारी और एक CancellationHandler पास किए जाते हैं ([SWS_DM_01126])। पास किए गए spans तब तक मान्य रहते हैं जब तक कि लौटाया गया ara::core::Future पूरा नहीं हो जाता या हैंडलर के माध्यम से प्रसंस्करण रद्द नहीं हो जाता। मेथड एसिंक्रोनस रूप से उत्पन्न सर्वर चैलेंज और सर्वर की अल्पकालिक सार्वजनिक कुंजी से युक्त एक टुपल लौटाता है ([SWS_DM_01126])।

यदि सत्यापन के दौरान कोई त्रुटि होती है, तो Future को DiagUdsNrcErrc के माध्यम से एक उपयुक्त नकारात्मक प्रतिक्रिया कोड (NRC) के साथ समाप्त किया जाना चाहिए ([SWS_DM_01126])।

फ़ंक्शन को exception safe के रूप में निर्दिष्ट किया गया है और इसे विभिन्न डायग्नोस्टिक क्लाइंट्स के अनुरोधों के लिए रीएन्ट्रेंट रूप से कॉल किया जा सकता है ([SWS_DM_01126])। थ्रेड सुरक्षा सशर्त है; कार्यान्वयन को थ्रेड-सुरक्षित होना चाहिए या नहीं, यह कन्स्ट्रक्टर में निर्दिष्ट ConcurrencyType द्वारा निर्धारित होता है ([SWS_DM_01126])। समग्र प्रक्रिया में, यदि सबफ़ंक्शन DiagnosticProofOfOwnership कॉन्फ़िगर किया गया है ([SWS_DM_01227]), तो इस जांच का कॉन्फ़िगरेशन एक अनिवार्य शर्त है।

यह उपयोग नोट विनिर्देश AUTOSAR AP R25-11 के आधार पर स्वचालित रूप से तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
communicationConfigurationAs defined in ISO14229-1:2020 [1], this parameter provides information about how to proceed with security in further diagnostic communication after the Authentication.
clientCertificateThe certificate that is received from the tester during Unidirectional Authentication. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
clientChallengeAs defined in ISO14229-1:2020 [1], this parameter provides the challenge received fom the tester during Unidirectional Authentication. This parameter has a dependency on the CommunicationConfiguration used. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<std::tuple<ara::core::Vector<ara::core::Vector<ara::core::Byte >, ara::core::Byte > > >Returns challenge created by the application, Ephemeral PublicKey of Server

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_01126
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01126@rel:R25-11#062dae18
Content hash
062dae18
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01126
Status: valid/unmigrated Version: rel:R25-11#5b0bedab Versionshistorie & Revisions (1 transition, 6 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_DM_01126@rel:R25-11#5b0bedab
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#891430be2026-09-30
  • R21-11rel:R21-11#6b67e2b92026-10-14
  • R22-11rel:R22-11#96d86c762026-10-14
  • R23-11rel:R23-11#6ec11ca22026-10-14
  • R24-11rel:R24-11#334a55a52026-10-14
  • R25-11rel:R25-11#5b0bedab2026-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

फ़ंक्शन VerifyOwnership [SWS_DM_01128] Upstream: RS_Diag_04251, RS_AP_00128

virtual ara::core::Future< ara::core::Vector< ara::core::Byte > > VerifyOwnership (ara::core::Span< const ara::core::Byte > clientPOWN, ara::core::Span< const ara::core::Byte > clientEphemeralPublicKey, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

This function accepts the Proof Of Ownership received from the tester and verifies it with the Public Key of the certificate received in the verifyCertificateUnidirectional / verifyCertificate Bidirectional against the server challenge created in the last call to verifyCertificateUnidirectional / verifyCertificateBidirectional.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 395c9e79b3c8 उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

उपयोग और कॉल संदर्भ

क्लास ara::diag::Authentication की प्योर वर्चुअल मेथड VerifyOwnership डायग्नोस्टिक सर्वर द्वारा तब कॉल की जाती है, जैसे ही सबफ़ंक्शन proofOfOwnership (0x03) के साथ UDS सर्विस 0x29 का ऑथेंटिकेशन अनुरोध प्राप्त होता है और प्रारंभिक जाँचें सफल हो जाती हैं [SWS_DM_01240]। कार्यान्वयन का कार्य टेस्टर द्वारा प्रेषित स्वामित्व के प्रमाण (Proof of Ownership) को पहले आदान-प्रदान किए गए क्लाइंट प्रमाणपत्र की पब्लिक कुंजी के आधार पर जनरेट की गई सर्वर-चैलेंज के विरुद्ध सत्यापित करना है [SWS_DM_01128]।

कॉल के समय, डायग्नोस्टिक सर्वर प्रासंगिक क्रिप्टोग्राफ़िक इनपुट डेटा के साथ-साथ संदर्भ ऑब्जेक्ट AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.5 “VerifyOwnership” पास करता है:

  • clientPOWN: पिछली सर्वर-चैलेंज के लिए डायग्नोस्टिक टेस्टर द्वारा प्रदान किया गया Proof of Ownership शामिल है।
  • clientEphemeralPublicKey: ISO 14229-1:2020 के अनुसार डिफ़ी-हेलमैन कुंजी समझौते के लिए क्लाइंट की एफेमरल पब्लिक कुंजी।
  • metaInfo: वर्तमान डायग्नोस्टिक अनुरोध की मेटा-जानकारी।
  • cancellationHandler: किसी संभावित रद्दीकरण (cancellationHandler.IsCanceled) की क्वेरी करने के साथ-साथ एक अधिसूचना फ़ंक्शन (cancellationHandler.SetNotifier) को पंजीकृत करने की अनुमति देता है।

फ़ंक्शन एसिंक्रोनस रूप से काम करता है और एक ara::core::Future लौटाता है, जो सफलता की स्थिति में सेशन कुंजी की जानकारी बाइट वेक्टर के रूप में प्रदान करता है [SWS_DM_01128]।

त्रुटि प्रबंधन

यदि स्वामित्व की जाँच सफलतापूर्वक निष्पादित नहीं की जा सकती है, तो एप्लिकेशन लौटाए गए फ़्यूचर में DiagUdsNrcErrc के माध्यम से ISO 14229-1 के अनुसार एक उपयुक्त नकारात्मक UDS रिटर्न मान (NRC) सेट करता है [SWS_DM_01128]। यदि मेथड ऐसा परिभाषित त्रुटि कोड लौटाती है, तो डायग्नोस्टिक सर्वर संबंधित NRC के साथ क्लाइंट को एक Negative Response भेजता है [SWS_DM_01241]।

समवर्तीता और सीमांत शर्तें

इंटरफ़ेस को noexcept के रूप में परिभाषित किया गया है। थ्रेड-सुरक्षा के संबंध में, व्यवहार सशर्त (conditional) माना जाता है: मेथड को थ्रेड-सुरक्षित रूप से कार्यान्वित किया जाना चाहिए या नहीं, यह इंस्टेंस के निर्माण के समय निर्दिष्ट ConcurrencyType द्वारा निर्धारित किया जाता है [SWS_DM_01128]। बफ़र्स clientPOWN और clientEphemeralPublicKey के लिए यह सुनिश्चित किया जाता है कि उनका मेमोरी क्षेत्र तब तक मान्य रहे, जब तक कि प्रॉमिस पूरा न हो जाए या cancellationHandler के माध्यम से प्रसंस्करण रद्द न कर दिया जाए [SWS_DM_01128]।

यह उपयोग संबंधी निर्देश AUTOSAR AP R25-11 विनिर्देश के आधार पर स्वचालित रूप से उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
clientPOWNThe Proof Of Ownership provided by the Tester to the previously exchanged Server Challenge, Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
clientEphemeralPublicKeyAs defined in ISO14229-1:2020, this is the Ephemeral public key generated by the client for Diffie-Hellman key agreement, Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<ara::core::Vector<ara::core::Byte > >Session Key Info or error

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_01128
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01128@rel:R25-11#b49e76c8
Content hash
b49e76c8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01128
Status: valid/unmigrated Version: rel:R25-11#d5b901ef Versionshistorie & Revisions (1 transition, 6 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_DM_01128@rel:R25-11#d5b901ef
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#6c1fffad2026-09-30
  • R21-11rel:R21-11#c3b0498c2026-10-14
  • R22-11rel:R22-11#aabbb0bc2026-10-14
  • R23-11rel:R23-11#57ff671b2026-10-14
  • R24-11rel:R24-11#4d4d184a2026-10-14
  • R25-11rel:R25-11#d5b901ef2026-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

फ़ंक्शन operator= [SWS_DM_01607] Upstream: RS_AP_00147

Authentication & operator= (Authentication &)=delete;

Authentication shall be a single not assignable instance.

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication

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

Record
AUTOSAR/AP/record/SWS_DM_01607
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01607@rel:R25-11#b547c35c
Content hash
b547c35c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01607
Status: valid/unmigrated Version: rel:R25-11#e43ad077 Versionshistorie & Revisions (1 transition, 4 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_DM_01607@rel:R25-11#e43ad077
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#bbae82102026-09-30
  • R23-11rel:R23-11#a480b8c62026-10-14
  • R24-11rel:R24-11#e43ad0772026-10-14
  • R25-11rel:R25-11#e43ad0772026-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

फ़ंक्शन operator= [SWS_DM_01608] Upstream: RS_AP_00147

Authentication & operator= (Authentication &&)=delete;

Move assignment operator of Authentication.

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication

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

Record
AUTOSAR/AP/record/SWS_DM_01608
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01608@rel:R25-11#9cdf3901
Content hash
9cdf3901
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01608
Status: valid/unmigrated Version: rel:R25-11#7761b325 Versionshistorie & Revisions (1 transition, 4 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_DM_01608@rel:R25-11#7761b325
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#58f113cc2026-09-30
  • R23-11rel:R23-11#5ce3d7fa2026-10-14
  • R24-11rel:R24-11#7761b3252026-10-14
  • R25-11rel:R25-11#7761b3252026-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

फ़ंक्शन ~Authentication [SWS_DM_01125] Upstream: RS_Diag_04251

virtual ~Authentication () noexcept;

Destructor of Authentication.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: d82e30be663a उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

वर्चुअल डिस्ट्रक्टर ~Authentication() क्लास ara::diag::Authentication के एक इंस्टेंस के जीवनचक्र को समाप्त करता है और उसके संसाधनों को मुक्त करता है [SWS_DM_01125]। मेथड मॉड्यूल Diagnostics की हेडर फ़ाइल #include "ara/diag/authentication.h" में घोषित है AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.1.3 “Destructor”।

फ़ंक्शन कोई पैरामीटर स्वीकार नहीं करता है, कोई रिटर्न वैल्यू नहीं देता है और ऑब्जेक्ट के विनाश के दौरान सिंक्रोनस रूप से कॉल किया जाता है [SWS_DM_01125]। virtual के रूप में योग्यता यह सुनिश्चित करती है कि बेस क्लास के पॉइंटर्स या संदर्भों के माध्यम से बहुरूपी विलोपन पर व्युत्पन्न वर्गों के संसाधनों को भी ठीक से साफ़ किया जाए।

एरर हैंडलिंग के संबंध में, मेथड को exception safe के रूप में निर्दिष्ट किया गया है और इसमें noexcept विनिर्देशक है [SWS_DM_01125]। एरर या स्थिति कोड वापस नहीं किए जाते हैं, और यह गारंटी है कि कोई भी C++ एक्सेप्शन बाहर नहीं आएगा।

कन्करेंसी के संबंध में, ~Authentication() को not thread-safe के रूप में वर्गीकृत किया गया है [SWS_DM_01125]। इसलिए विनाश को किसी भी स्थिति में उसी इंस्टेंस के अन्य मेथड कॉल्स के साथ एक ही समय में नहीं किया जाना चाहिए। व्याख्या: एप्लिकेशन शायद विनाश से पहले सभी चल रही प्रमाणीकरण या डायग्नोस्टिक प्रक्रियाओं को पूरा करने और समानांतर एक्सेस के विरुद्ध कॉल को बाहरी रूप से सुरक्षित करने के लिए बाध्य होगी। प्रश्न Q-41b1c115c1056759 (खुला) डिस्ट्रक्टर उच्च स्तरीय आवश्यकता RS_Diag_04251 को लागू करता है AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.1.3 “Destructor”।

यह पाठ एक AI प्रणाली द्वारा उत्पन्न किया गया था और संपादकीय रूप से समीक्षित किया गया है।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_DM_01125
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01125@rel:R25-11#e200fd4f
Content hash
e200fd4f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01125
Status: valid/unmigrated Version: rel:R25-11#4da26eb6 Versionshistorie & Revisions (1 transition, 6 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_DM_01125@rel:R25-11#4da26eb6
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#f87a1af62026-09-30
  • R21-11rel:R21-11#340e99022026-10-14
  • R22-11rel:R22-11#f53657532026-10-14
  • R23-11rel:R23-11#b44955282026-10-14
  • R24-11rel:R24-11#fbd031862026-10-14
  • R25-11rel:R25-11#4da26eb62026-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