DEENESPTFRRUARHIKOZHNL

class ara::crypto::cryp::MessageAuthnCodeCtx

[SWS_CRYPT_22100] Upstream: RS_CRYPTO_02203

class MessageAuthnCodeCtx :           public CryptoContext {...};

Keyed Message Authentication Code Context interface definition.

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

User GuideAI-GENERATED

Used for the key-based computation and verification of cryptographic Message Authentication Codes.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: b9d1594d1774 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Used for the key-based computation and verification of cryptographic Message Authentication Codes.

The interface enables the key-based computation and verification of Message Authentication Codes for messages of arbitrary length. Following initialization with a symmetric key via [SWS_CRYPT_22118], MAC digests can be processed either in a single step or via streaming using start, update, and finish calls. The resulting verification result can then be retrieved or directly compared against an expected value. All methods are specified as thread-safe and signal erroneous sequences or insufficient buffer capacities via standardized return values according to [SWS_CRYPT_22116].

Context

Interface MessageAuthnCodeCtx defines cryptographic operations for generating and verifying key-based Message Authentication Codes (MAC). It enables authenticity and integrity verification of arbitrary amounts of data via incremental data streams as well as individual contiguous memory blocks. Instances are managed via the provided smart pointer type Sptr [SWS_CRYPT_22101].

Calling application components and key objects act as central interaction partners. A context can be configured either directly with a symmetric key object SymmetricKey [SWS_CRYPT_22118] or via a logical slot KeySlot [SWS_CRYPT_50026]. Data transfer takes place via buffer structures such as ReadOnlyMemRegion for input data and ReadWriteMemRegion for calculated MAC digests.

Lifecycle

A context instance traverses a defined sequence of states from initialization to the provision of the MAC result:

  • Uninitialized: After creation, the context does not yet possess a key and rejects calculation calls.
  • Configured: The context is initialized by calling SetKey() with a key [SWS_CRYPT_22118] or a key store [SWS_CRYPT_50026]. In this state, single-call methods can be executed or a streaming session can be started.
  • Processing: Calling Start() without an initialization vector [SWS_CRYPT_22111] or with an IV [SWS_CRYPT_22110] opens streaming processing. Data blocks are fed in by repeated Update() [SWS_CRYPT_22113]. Abort is possible via Cancel() [SWS_CRYPT_50027].
  • Finished: Method Finish() [SWS_CRYPT_22115] completes the computation. Subsequently, the result can be queried or compared.

Interpretation: After completion or abort, the context presumably remains in the configured state and can be reused for renewed operations. Question Q-b61229b77ae88ab0 (open) All methods of the interface are specified as thread-safe and exception-safe.

mac_states Uninitialized Uninitialized Configured Configured Uninitialized->Configured SetKey() Configured->Configured Generate() / Verify() Processing Processing Configured->Processing Start() Processing->Configured Cancel() Processing->Processing Update() Finished Finished Processing->Finished Finish() Finished->Processing Start() Finished->Finished GetDigest() / Compare()

State diagram: Lifecycle and state transitions of the MAC context. Sources: [SWS_CRYPT_22118], [SWS_CRYPT_50026], [SWS_CRYPT_22110], [SWS_CRYPT_22111], [SWS_CRYPT_22113], [SWS_CRYPT_22115], [SWS_CRYPT_50027], [SWS_CRYPT_22116], [SWS_CRYPT_50029], [SWS_CRYPT_50031]

Usage Path

The interface supports two typical usage paths: incremental streaming and single-call processing.

In the streaming path, the caller initially binds the key via SetKey() [SWS_CRYPT_22118]. Prior to starting, algorithm parameters such as the recommended IV size can be queried via GetRecommendedIvSize() [SWS_CRYPT_50135] as well as the maximum chunk size via GetMaximumChunkSize() [SWS_CRYPT_50033]. After calling Start() [SWS_CRYPT_22110], message fragments are processed successively via Update() [SWS_CRYPT_22113]. Once all data has been provided, Finish() finishes the computation [SWS_CRYPT_22115]. The generated digest is subsequently copied into a buffer with GetDigest() [SWS_CRYPT_22116], the minimum size of which can be determined beforehand via GetDigestSize() [SWS_CRYPT_50134]. Alternatively, Compare() [SWS_CRYPT_50133] or CompareSubspan() [SWS_CRYPT_50028] allows direct comparison against an expected reference value.

Streaming calculation of a message authentication codeApplicationMessageAuthnCodeCtxSetKey(key)Result<void>Start(iv)Result<void>loopFor each data blockUpdate(chunk)Result<void>Finish()Result<void>GetDigest(digest)Result<size_t>

Sequence diagram: Sequence of incremental MAC calculation in streaming mode. Sources: [SWS_CRYPT_22118], [SWS_CRYPT_22110], [SWS_CRYPT_22113], [SWS_CRYPT_22115], [SWS_CRYPT_22116]

If the entire message is already fully available, computation can take place in a single step without streaming via Generate() [SWS_CRYPT_50029] or truncated via GenerateSubspan() [SWS_CRYPT_50030]. Methods Verify() [SWS_CRYPT_50031] and VerifySubspan() [SWS_CRYPT_50032] are available analogously for verification.

Error Scenarios

Errors are signaled via return type ara::core::Result and cover the following causes:

This class guide is based on the AUTOSAR Adaptive R25-11 specification for the crypto module.

Member map

Class diagram

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

G nara__crypto__cryp__MessageAuthnCodeCtx845 MessageAuthnCodeCtx + Cancel() + Compare() + CompareSubspan() + Finish() + Generate() + GenerateSubspan() + GetDigest() + GetDigestSize() + GetMaximumChunkSize() + GetRecommendedIvSize() + SetKey() + Start() + Update() + Verify() + VerifySubspan() nara__crypto__cryp__CryptoContext85 CryptoContext nara__crypto__cryp__MessageAuthnCodeCtx845->nara__crypto__cryp__CryptoContext85

Detail view

Select an entry in the outline.

Methods

Cancel function

Cancel the ongoing streaming operation that has been initiated by Start() and has not yet been finished.

virtual ara::core::Result< void > Cancel () noexcept=0;
Compare function

Compare the size and content of the calculated MAC digest against an expected value.

virtual ara::core::Result< bool > Compare (ReadOnlyMemRegion expected) const noexcept=0;

Compare the most significant bits of the calculated MAC digest against an expected value.

virtual ara::core::Result< bool > CompareSubspan (ReadOnlyMemRegion expected) const noexcept=0;
Finish function

Finish the MAC calculation.

virtual ara::core::Result< void > Finish () noexcept=0;
Generate function

Calculate a MAC digest and write it to the provided output buffer.

virtual ara::core::Result< std::size_t > Generate (ReadOnlyMemRegion data, ReadWriteMemRegion digest, ara::core::Optional< ReadOnlyMem Region > iv) const noexcept=0;

Calculate a MAC digest and fill the provided output buffer with the beginning (MSB) of the calculated digest.

virtual ara::core::Result< std::size_t > GenerateSubspan (ReadOnlyMem Region data, ReadWriteMemRegion truncatedDigest, ara::core::Optional< ReadOnlyMemRegion > iv) const noexcept=0;
GetDigest function

Write the calculated MAC digest into the provided output buffer.

virtual ara::core::Result< std::size_t > GetDigest (ReadWriteMemRegion digest) const noexcept=0;
GetDigestSize function

Get the output digest size.

virtual ara::core::Result< std::size_t > GetDigestSize () const noexcept=0;

Get the maximum input buffer size supported for processing in single calls to Update() or Finish() by this context.

virtual ara::core::Result< std::size_t > GetMaximumChunkSize () const noexcept=0;

Get default expected size of the Initialization Vector (IV) or nonce, e.g., 12 bytes for GMAC, 0 bytes for CMAC.

virtual ara::core::Result< std::size_t > GetRecommendedIvSize () const noexcept=0;
SetKey function 2

Configure the context to use the provided key.

Overloads SetKey 2
virtual ara::core::Result< void > SetKey (SymmetricKey::Sptr key) noexcept=0; SWS_CRYPT_22118
virtual ara::core::Result< void > SetKey (KeySlot::Sptr keySlot) noexcept=0; SWS_CRYPT_50026
Start function 2

Initialize the context for a new MAC calculation and set an IV (e.g., used for GMAC)

Overloads Start 2
virtual ara::core::Result< void > Start (ReadOnlyMemRegion iv) noexcept=0; SWS_CRYPT_22110
virtual ara::core::Result< void > Start () noexcept=0; SWS_CRYPT_22111
Update function

Update the MAC calculation context by a new part of the message.

virtual ara::core::Result< void > Update (ReadOnlyMemRegion data) noexcept=0;
Verify function

Calculate a MAC digest and compare the calculated MAC digest against an expected value.

virtual ara::core::Result< bool > Verify (ReadOnlyMemRegion data, Read OnlyMemRegion expected, ara::core::Optional< ReadOnlyMemRegion > iv) const noexcept=0;
VerifySubspan function

Calculate a MAC digest and compare the most-significant bits of the calculated MAC digest against an expected value.

virtual ara::core::Result< bool > VerifySubspan (ReadOnlyMemRegion data, ReadOnlyMemRegion expected, ara::core::Optional< ReadOnlyMem Region > iv) const noexcept=0;

Type aliases

Sptr type alias

Smart pointer of the interface.

Method documentation

function Cancel [SWS_CRYPT_50027] Upstream: RS_CRYPTO_02302

virtual ara::core::Result< void > Cancel () noexcept=0;

Cancel the ongoing streaming operation that has been initiated by Start() and has not yet been finished.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 53954aee5980 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The pure virtual method Cancel in interface ara::crypto::cryp::MessageAuthnCodeCtx serves to abort an ongoing streaming operation that was previously initiated via Start() and has not yet completed [SWS_CRYPT_50027]. The call is synchronous, takes no arguments, and returns an empty ara::core::Result<void> on success, confirming the successful abort of the operation [SWS_CRYPT_50027].

If data processing was not properly initiated by the Start() method prior to the call, execution fails. In this case, the function returns a result with the specific error code ara::crypto::CryptoErrc::kProcessingNotStarted while ensuring rollback semantics [SWS_CRYPT_50027]. In terms of execution safety, the interface is specified as thread-safe and guarantees exception safety, as it is declared as noexcept and does not throw exceptions [SWS_CRYPT_50027].

All related context interfaces of the cryptography module share the identical abort behavior for streaming operations that have not yet been finalized:

Interpretation: Aborting the incomplete operation likely returns the context to a clean state that allows subsequent reinitialization via Start(). Question Q-a8fa5cb85c3dab50 (open)

This usage note was generated automatically based on the AUTOSAR Adaptive R25-11 specification.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >an empty result if the ongoing streaming operation was cancelled successfully, or a result containing an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kProcessingNotStartedrollback_semantics if data processing was not started by a call of the Start() method

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50027
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50027@rel:R25-11#c993fffd
Content hash
c993fffd
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50027
Status: valid/unmigrated Version: rel:R25-11#c993fffd Versionshistorie & Revisions (1 transition)
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_50027@rel:R25-11#c993fffd
Point-in-Time History:
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

function Compare [SWS_CRYPT_50133] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< bool > Compare (ReadOnlyMemRegion expected) const noexcept=0;

Compare the size and content of the calculated MAC digest against an expected value.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 9af675c314c3 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The pure virtual method Compare of class ara::crypto::cryp::MessageAuthnCodeCtx serves to compare the size and content of a calculated Message Authentication Code (MAC) with an expected digest [SWS_CRYPT_50133]. As parameter, the expected MAC digest is passed via ReadOnlyMemRegion expected. The function returns a ara::core::Result<bool>, which contains true if the calculated MAC value exactly matches the expected value, and false otherwise [SWS_CRYPT_50133].

Error handling

In case of error, an error code is returned in the result object, with rollback semantics applying [SWS_CRYPT_50133]:

  • ara::crypto::CryptoErrc::kProcessingNotFinished: Reported if the calculation of the digest was not previously completed by calling the method Finish() [SWS_CRYPT_50133].
  • ara::crypto::CryptoErrc::kInvalidInputSize: Occurs if the passed buffer size of the expected MAC digest is not supported by the context [SWS_CRYPT_50133].

Concurrency and Limitations

The method is declared as const as well as noexcept and is, according to the specification, thread-safe (thread-safe) as well as exception-safe (exception safe) [SWS_CRYPT_50133]. An essential precondition is the digest calculation previously completed successfully via Finish() [SWS_CRYPT_50133].

Interaction

In contrast to Compare, which validates the complete match of the entire MAC digest [SWS_CRYPT_50133], CompareSubspan in the same context only compares the most significant bits with the expected value [SWS_CRYPT_50028]. For unkeyed hash functions, an eponymous Compare function exists in ara::crypto::cryp::HashFunctionCtx [SWS_CRYPT_50154].

This usage note was generated automatically based on specification R25-11.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
expectedthe expected MAC digest

Rückgabewert

TypBeschreibung
ara::core::Result< bool >true if the expected MAC value equals the calculated MAC value, false otherwise.

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kProcessingNotFinishedrollback_semantics if the digest calculation was not finished by a call of the Finish() method
ara::crypto::CryptoErrc::kInvalidInputSizerollback_semantics if the size of the expected MAC digest is not supported

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50133
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50133@rel:R25-11#0e62292d
Content hash
0e62292d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50133
Status: valid/unmigrated Version: rel:R25-11#0e62292d Versionshistorie & Revisions (1 transition)
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_50133@rel:R25-11#0e62292d
Point-in-Time History:
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

function CompareSubspan [SWS_CRYPT_50028] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< bool > CompareSubspan (ReadOnlyMemRegion expected) const noexcept=0;

Compare the most significant bits of the calculated MAC digest against an expected value.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 4c36a4e7dbbc Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The synchronous method CompareSubspan of class ara::crypto::cryp::MessageAuthnCodeCtx matches the most significant bits of a calculated MAC value against a specified reference [SWS_CRYPT_50028]. The expected comparison value is passed via parameter expected as ReadOnlyMemRegion [SWS_CRYPT_50028]. The result is returned as ara::core::Result<bool> and contains true in case of identity of the most significant bits and false in case of discrepancies [SWS_CRYPT_50028].

Error Handling and Operating Conditions

For a valid comparison, calculation of the verification value must be completed. If there is no previous call to method Finish(), the call fails with error code ara::crypto::CryptoErrc::kProcessingNotFinished [SWS_CRYPT_50028]. If the buffer size of the passed parameter expected is invalid for the procedure used, the method reports ara::crypto::CryptoErrc::kInvalidInputSize [SWS_CRYPT_50028]. Both error types guarantee rollback semantics [SWS_CRYPT_50028].

Concurrency and Execution Context

The operation is specified as noexcept (exception-safe) and classified as thread-safe [SWS_CRYPT_50028]. Interpretation: The declared thread safety likely refers to the state after Finish() has taken place, allowing multiple threads to verify the same calculated digest in parallel. Question Q-ac8b7ead6a5b508e (open)

This usage note was generated automatically based on the AUTOSAR R25-11 specification.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
expectedthe expected MAC digest

Rückgabewert

TypBeschreibung
ara::core::Result< bool >true if the most-significant bits of the calculated MAC equal the expected byte sequence, false otherwise.

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kProcessingNotFinishedrollback_semantics if the digest calculation was not finished by a call of the Finish() method
ara::crypto::CryptoErrc::kInvalidInputSizerollback_semantics if the size of the expected MAC digest is not supported

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50028
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50028@rel:R25-11#e7ce513a
Content hash
e7ce513a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50028
Status: valid/unmigrated Version: rel:R25-11#e7ce513a Versionshistorie & Revisions (1 transition)
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_50028@rel:R25-11#e7ce513a
Point-in-Time History:
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

function Finish [SWS_CRYPT_22115] Upstream: RS_CRYPTO_02302, RS_CRYPTO_02203

virtual ara::core::Result< void > Finish () noexcept=0;

Finish the MAC calculation.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 9113df4242ca Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The Finish() method conclusively completes the ongoing calculation of a Message Authentication Code (MAC) within the MessageAuthnCodeCtx interface [SWS_CRYPT_22115]. The call is synchronous, takes no parameters, and returns ara::core::Result<void>, which represents an empty result in the regular success case [SWS_CRYPT_22115].

In case of an error, the function returns the error code ara::crypto::CryptoErrc::kProcessingNotStarted if the MAC calculation was not started successfully prior to the call; rollback semantics apply [SWS_CRYPT_22115]. The operation is declared as noexcept and, according to the specification, specified as both exception-safe (exception safe) and thread-safe (thread-safe) [SWS_CRYPT_22115].

In the processing flow, Finish() forms the link between data processing and evaluation: after the call, the generated MAC digest can be transferred to a provided buffer via GetDigest() [SWS_CRYPT_22116] or directly verified against a reference value with CompareSubspan() [SWS_CRYPT_50028]. While GetMaximumChunkSize() [SWS_CRYPT_50033] generically describes buffer sizes for Update() or Finish(), Finish() does not process data directly here; its mention in the requirement is presumably likely to reflect a uniform pattern across all crypto contexts. Question Q-79b4f4ecf3998e48 (open)

This usage note was generated automatically based on the specification of AUTOSAR R25-11.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kProcessingNotStartedrollback_semantics if the MAC calculation has not been started successfully.

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

Record
AUTOSAR/AP/record/SWS_CRYPT_22115
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22115@rel:R25-11#7d2b83f6
Content hash
7d2b83f6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22115
Status: valid/unmigrated Version: rel:R25-11#e646e46d Versionshistorie & Revisions (1 transition, 7 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_22115@rel:R25-11#e646e46d
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#7d2b83f62026-09-30
  • R20-11rel:R20-11#a059cf072026-10-14
  • R21-11rel:R21-11#760e02282026-10-14
  • R22-11rel:R22-11#194848542026-10-14
  • R23-11rel:R23-11#499debd32026-10-14
  • R24-11rel:R24-11#d34af0022026-10-14
  • R25-11rel:R25-11#e646e46d2026-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

function Generate [SWS_CRYPT_50029] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< std::size_t > Generate (ReadOnlyMemRegion data, ReadWriteMemRegion digest, ara::core::Optional< ReadOnlyMem Region > iv) const noexcept=0;

Calculate a MAC digest and write it to the provided output buffer.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 1f27dd6e39dc Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

According to [SWS_CRYPT_50029], the synchronous member function Generate of class ara::crypto::cryp::MessageAuthnCodeCtx is used to calculate a message authentication code (MAC) in a single step and writes the calculated digest into the provided output buffer.

The following parameters are passed for the call:

  • data: Input data for the MAC calculation as ReadOnlyMemRegion.
  • digest: Destination memory area of type ReadWriteMemRegion into which the digest is written.
  • iv: An optional initialization vector as ara::core::Optional<ReadOnlyMemRegion>.

In case of success, the function returns a ara::core::Result<std::size_t> containing the size of the written MAC digest in bytes [SWS_CRYPT_50029].

If an error occurs, an error code with rollback semantics is returned [SWS_CRYPT_50029]:

  • UninitializedContext: The context has not yet been initialized by assigning a key.
  • ara::crypto::CryptoErrc::kUsageViolation: The key used does not have the required usage flag kAllowMac. Interpretation: A matching symmetric key is presumably generated and configured in advance via GenerateSymmetricKey [SWS_CRYPT_20721]. Question Q-d22f397bbc02487b (open)
  • ara::crypto::CryptoErrc::kEmptyKeySlot: A configured KeySlot is currently empty.
  • ara::crypto::CryptoErrc::kUnsupported: Single-call processing is not supported, or the specification of the initialization vector does not meet the algorithm requirements (missing or impermissibly specified IV).
  • ara::crypto::CryptoErrc::kInvalidInputSize: The buffer size of the input data or IV is not supported.
  • ara::crypto::CryptoErrc::kInsufficientCapacity: The destination buffer digest is too small for the MAC digest.
  • ara::crypto::CryptoErrc::kBusyResource: A required system resource is busy.

Regarding concurrency, the method is specified as thread-safe and exception safe [SWS_CRYPT_50029]. It is declared as const noexcept and does not modify the state of the context during execution.

This usage note was created automatically and is based on the AUTOSAR Adaptive specification of release R25-11.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Parameter (in)

ParameterBeschreibung
datathe input data for the MAC
ivan optional initialization vector

Parameter (out)

ParameterBeschreibung
digestan output data buffer that the MAC digest will be written into

Rückgabewert

TypBeschreibung
ara::core::Result<std::size_t >A result containing the size in bytes of the MAC digest or an error.

Fehler

FehlercodeBeschreibung
UninitializedContextif the context was not initialized by deploying a key
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if single-call processing is not supported, or if the context requires setting an IV but no IV is provided, or if the context does not support setting an IV but an IV is provided
ara::crypto::CryptoErrc::kInvalidInputSizerollback_semantics if the size of provided data or IV is not supported
ara::crypto::CryptoErrc::kInsufficientCapacityrollback_semantics if the output buffer is too small
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowMac

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50029
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50029@rel:R25-11#66865bf3
Content hash
66865bf3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50029
Status: valid/unmigrated Version: rel:R25-11#66865bf3 Versionshistorie & Revisions (1 transition)
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_50029@rel:R25-11#66865bf3
Point-in-Time History:
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

function GenerateSubspan [SWS_CRYPT_50030] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< std::size_t > GenerateSubspan (ReadOnlyMem Region data, ReadWriteMemRegion truncatedDigest, ara::core::Optional< ReadOnlyMemRegion > iv) const noexcept=0;

Calculate a MAC digest and fill the provided output buffer with the beginning (MSB) of the calculated digest.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 9f5519d31718 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The GenerateSubspan method of class ara::crypto::cryp::MessageAuthnCodeCtx calculates a Message Authentication Code (MAC) for the input data data in a single step and writes the beginning (the most significant bytes, MSB) of the calculated digest into the output buffer truncatedDigest [SWS_CRYPT_50030]. Via the optional parameter iv, an initialization vector can be passed if required [SWS_CRYPT_50030]. The direct return of ara::core::Result<std::size_t> is likely to indicate synchronous execution; upon successful execution, the number of written bytes of the MAC digest is returned [SWS_CRYPT_50030]. Question Q-167c6d44b9f39fed (open)

For the error case, the specification defines rollback semantics and provides for the following error codes [SWS_CRYPT_50030]:

  • UninitializedContext: The context was not previously initialized by assigning a key [SWS_CRYPT_50030].
  • ara::crypto::CryptoErrc::kEmptyKeySlot: A configured KeySlot is currently empty [SWS_CRYPT_50030].
  • ara::crypto::CryptoErrc::kUsageViolation: The permitted usage of the key does not include kAllowMac [SWS_CRYPT_50030].
  • ara::crypto::CryptoErrc::kUnsupported: Single-step processing is not supported, or the IV configuration does not match the context (required IV is missing or invalid IV passed) [SWS_CRYPT_50030].
  • ara::crypto::CryptoErrc::kInvalidInputSize: The size of the passed data data or of the iv is not supported [SWS_CRYPT_50030].
  • ara::crypto::CryptoErrc::kBusyResource: A required resource is busy [SWS_CRYPT_50030].

Regarding the execution environment, the method is specified as thread-safe and provides exception safety (noexcept) [SWS_CRYPT_50030]. A prerequisite for a flawless invocation is the prior provision of a key with appropriate permission in the context [SWS_CRYPT_50030].

This text was generated by an AI and serves as a guidance. The official AUTOSAR specification is authoritative.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Parameter (in)

ParameterBeschreibung
datathe input data for the MAC
ivan optional initialization vector

Parameter (out)

ParameterBeschreibung
truncatedDigestan output data buffer that the beginning of the MAC digest will be written into

Rückgabewert

TypBeschreibung
ara::core::Result<std::size_t >A result containing the size in bytes of the MAC digest or an error.

Fehler

FehlercodeBeschreibung
UninitializedContextif the context was not initialized by deploying a key
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if single-call processing is not supported, or if the context requires setting an IV but no IV is provided, or if the context does not support setting an IV but an IV is provided
ara::crypto::CryptoErrc::kInvalidInputSizerollback_semantics if the size of provided data or IV is not supported
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowMac

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50030
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50030@rel:R25-11#10f782d6
Content hash
10f782d6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50030
Status: valid/unmigrated Version: rel:R25-11#10f782d6 Versionshistorie & Revisions (1 transition)
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_50030@rel:R25-11#10f782d6
Point-in-Time History:
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

function GetDigest [SWS_CRYPT_22116] Upstream: RS_CRYPTO_02203

virtual ara::core::Result< std::size_t > GetDigest (ReadWriteMemRegion digest) const noexcept=0;

Write the calculated MAC digest into the provided output buffer.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (out)

ParameterBeschreibung
digestan output data buffer that the MAC digest will be written into

Rückgabewert

TypBeschreibung
ara::core::Result<std::size_t >A result containing the size in bytes of the MAC digest or an error.

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kProcessingNotFinishedrollback_semantics if the MAC calculation was not finished by a call of the Finish() method
ara::crypto::CryptoErrc::kInsufficientCapacityrollback_semantics if the output buffer is too small

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

Record
AUTOSAR/AP/record/SWS_CRYPT_22116
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22116@rel:R25-11#f62c871b
Content hash
f62c871b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22116
Status: valid/unmigrated Version: rel:R25-11#0213970e Versionshistorie & Revisions (1 transition, 7 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_22116@rel:R25-11#0213970e
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#f62c871b2026-09-30
  • R20-11rel:R20-11#97dd7dc32026-10-14
  • R21-11rel:R21-11#73d2dfec2026-10-14
  • R22-11rel:R22-11#086949e02026-10-14
  • R23-11rel:R23-11#c0af69462026-10-14
  • R24-11rel:R24-11#601580872026-10-14
  • R25-11rel:R25-11#0213970e2026-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

function GetDigestSize [SWS_CRYPT_50134] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< std::size_t > GetDigestSize () const noexcept=0;

Get the output digest size.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<std::size_t >size of the hash digest in bytes

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50134
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50134@rel:R25-11#2e6c359a
Content hash
2e6c359a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50134
Status: valid/unmigrated Version: rel:R25-11#2e6c359a Versionshistorie & Revisions (1 transition)
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_50134@rel:R25-11#2e6c359a
Point-in-Time History:
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

function GetMaximumChunkSize [SWS_CRYPT_50033] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< std::size_t > GetMaximumChunkSize () const noexcept=0;

Get the maximum input buffer size supported for processing in single calls to Update() or Finish() by this context.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<std::size_t >the maximum buffer size in bytes

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50033
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50033@rel:R25-11#74ba2c5f
Content hash
74ba2c5f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50033
Status: valid/unmigrated Version: rel:R25-11#74ba2c5f Versionshistorie & Revisions (1 transition)
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_50033@rel:R25-11#74ba2c5f
Point-in-Time History:
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

function GetRecommendedIvSize [SWS_CRYPT_50135] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< std::size_t > GetRecommendedIvSize () const noexcept=0;

Get default expected size of the Initialization Vector (IV) or nonce, e.g., 12 bytes for GMAC, 0 bytes for CMAC.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<std::size_t >default expected size of IV in bytes

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50135
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50135@rel:R25-11#b1b43096
Content hash
b1b43096
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50135
Status: valid/unmigrated Version: rel:R25-11#b1b43096 Versionshistorie & Revisions (1 transition)
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_50135@rel:R25-11#b1b43096
Point-in-Time History:
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

function SetKey [SWS_CRYPT_22118] Upstream: RS_CRYPTO_02001, RS_CRYPTO_02003

virtual ara::core::Result< void > SetKey (SymmetricKey::Sptr key) noexcept=0;

Configure the context to use the provided key.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: c93b5656f1ba Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The method SetKey configures an instance of ara::crypto::cryp::MessageAuthnCodeCtx for subsequent MAC calculation with a provided symmetric key [SWS_CRYPT_22118]. The call is synchronous and accepts the key object as a smart pointer SymmetricKey::Sptr. As result, the function returns a ara::core::Result<void>, which is empty on success or encapsulates a specific error code in case of an error [SWS_CRYPT_22118].

If the assignment fails, rollback semantics take effect, preserving the previous state of the context [SWS_CRYPT_22118]. The following error states from ara::crypto::CryptoErrc are specified:

  • kUnsupported: The context exclusively supports binding via a KeySlot instead of via direct key objects [SWS_CRYPT_22118].
  • kIncompatibleObject: The passed symmetric key object is incompatible with the target context [SWS_CRYPT_22118].
  • kUsageViolation: The permission flags of the key do not contain the mandatory usage kAllowMac [SWS_CRYPT_22118].

Regarding execution safety, the interface is defined as thread-safe and exception safe (with noexcept) [SWS_CRYPT_22118]. In interaction with key management, it represents the direct counterpart to slot-based assignment: if an implementation or use case supports the use of persisted slots, the overload for KeySlot::Sptr is used instead [SWS_CRYPT_50026].

This text was generated by an AI based on the AUTOSAR R25-11 specification.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
keysymmetric key object used for MAC calculation

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if the context only supports setting a KeySlot
ara::crypto::CryptoErrc::kIncompatibleObjectrollback_semantics if the provided key object is incompatible with this context
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowMac

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

Record
AUTOSAR/AP/record/SWS_CRYPT_22118
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22118@rel:R25-11#c6787c93
Content hash
c6787c93
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22118
Status: valid/unmigrated Version: rel:R25-11#e40511f7 Versionshistorie & Revisions (1 transition, 7 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_22118@rel:R25-11#e40511f7
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#c6787c932026-09-30
  • R20-11rel:R20-11#02ea3abd2026-10-14
  • R21-11rel:R21-11#a4675ce22026-10-14
  • R22-11rel:R22-11#d5224dc92026-10-14
  • R23-11rel:R23-11#5cceac172026-10-14
  • R24-11rel:R24-11#6e177cb62026-10-14
  • R25-11rel:R25-11#e40511f72026-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

function SetKey [SWS_CRYPT_50026] Upstream: RS_CRYPTO_02001, RS_CRYPTO_02003

virtual ara::core::Result< void > SetKey (KeySlot::Sptr keySlot) noexcept=0;

Configure the context to use the key stored in the provided KeySlot at the time the MAC calculation is started.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 0efaaf10920d Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The virtual member function SetKey of interface ara::crypto::cryp::MessageAuthnCodeCtx from header file ara/crypto/cryp/message_authn_code_ctx.h configures the context for calculating or verifying a Message Authentication Code (MAC) [SWS_CRYPT_50026]. As a parameter, the synchronous method accepts a smart pointer keySlot of type KeySlot::Sptr that holds a symmetric key, and returns a ara::core::Result<void> [SWS_CRYPT_50026]. Binding of the key is semantically deferred: The key stored in the slot is only used at the point in time when the MAC calculation is actually started [SWS_CRYPT_50026]. Interpretation: Subsequent updates to the slot content up to the start of calculation should thus remain effective. Question Q-d1886811d8af71e3 (open)

Concurrency and Execution Safety

The interface is defined as noexcept, guarantees exception safety (exception safe), and is explicitly specified for concurrent invocation (thread-safe) [SWS_CRYPT_50026].

Error Handling and Interaction

In the event of an error, the method guarantees strict rollback semantics so that the previous state of the context is fully preserved [SWS_CRYPT_50026]. The following error codes can occur in the result object:

  • ara::crypto::CryptoErrc::kIncompatibleObject: The passed KeySlot is incompatible with this symmetric key context [SWS_CRYPT_50026].
  • ara::crypto::CryptoErrc::kUnsupported: The concrete implementation of the context does not support setting via KeySlot [SWS_CRYPT_50026]. In this case, the overload SetKey(SymmetricKey::Sptr) for direct passing of a key must be used alternatively [SWS_CRYPT_22118].

This usage note was generated automatically based on the specification data.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
keySlota keyslot containing a symmetric key

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kIncompatibleObjectrollback_semantics if the provided keySlot is incompatible with this symmetric key context
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if the context only supports setting a SymmetricKey

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50026
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50026@rel:R25-11#3de24834
Content hash
3de24834
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50026
Status: valid/unmigrated Version: rel:R25-11#3de24834 Versionshistorie & Revisions (1 transition)
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_50026@rel:R25-11#3de24834
Point-in-Time History:
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

function Start [SWS_CRYPT_22110] Upstream: RS_CRYPTO_02302

virtual ara::core::Result< void > Start (ReadOnlyMemRegion iv) noexcept=0;

Initialize the context for a new MAC calculation and set an IV (e.g., used for GMAC)

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 42d35ba25b44 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The method Start of ara::crypto::cryp::MessageAuthnCodeCtx initializes the context for a new MAC calculation, setting an initialization vector or nonce value via parameter iv ([SWS_CRYPT_22110]). This is used, for example, in algorithms such as GMAC ([SWS_CRYPT_22110]). For calculations without an explicit initialization vector, the parameterless overload Start() is alternatively available ([SWS_CRYPT_22111]).

Usage and Concurrency

The call takes place synchronously and is specified as thread-safe and exception safe ([SWS_CRYPT_22110]). After a successful call, message parts can be passed successively to the context using Update ([SWS_CRYPT_22113]). An ongoing streaming operation that has not yet completed can be aborted if necessary via Cancel ([SWS_CRYPT_50027]).

Error handling

The method returns a ara::core::Result<void> that has rollback semantics in case of an error ([SWS_CRYPT_22110]). Possible error states are:

  • UninitializedContext: No key was assigned to the context in advance ([SWS_CRYPT_22110]).
  • ara::crypto::CryptoErrc::kEmptyKeySlot: A configured KeySlot is empty ([SWS_CRYPT_22110]).
  • ara::crypto::CryptoErrc::kUsageViolation: The permissions of the key do not include kAllowMac ([SWS_CRYPT_22110]).
  • ara::crypto::CryptoErrc::kInvalidInputSize: The passed IV size is not supported ([SWS_CRYPT_22110]).
  • ara::crypto::CryptoErrc::kUnsupported: Streaming or setting an IV is not supported by the algorithm or context ([SWS_CRYPT_22110]).
  • ara::crypto::CryptoErrc::kBusyResource: A required resource is busy ([SWS_CRYPT_22110]).

This usage note was generated by an AI based on the AUTOSAR specification R25-11.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Parameter (in)

ParameterBeschreibung
ivan Initialization Vector (IV) or "nonce" value

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
UninitializedContextif the context was not initialized by deploying a key
ara::crypto::CryptoErrc::kInvalidInputSizerollback_semantics if the size of provided IV is not supported
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if the context does not support streaming or the algorithm does not support setting an IV
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowMac

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

Record
AUTOSAR/AP/record/SWS_CRYPT_22110
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22110@rel:R25-11#ce38532b
Content hash
ce38532b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22110
Status: valid/unmigrated Version: rel:R25-11#a5427060 Versionshistorie & Revisions (1 transition, 7 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_22110@rel:R25-11#a5427060
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#ce38532b2026-09-30
  • R20-11rel:R20-11#15ffee6c2026-10-14
  • R21-11rel:R21-11#a3f8962f2026-10-14
  • R22-11rel:R22-11#fad6ef962026-10-14
  • R23-11rel:R23-11#765095392026-10-14
  • R24-11rel:R24-11#55625d952026-10-14
  • R25-11rel:R25-11#a54270602026-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

function Start [SWS_CRYPT_22111] Upstream: RS_CRYPTO_02302

virtual ara::core::Result< void > Start () noexcept=0;

Initialize the context for a new MAC calculation.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 891e10477d9e Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The Start() method initializes an instance of ara::crypto::cryp::MessageAuthnCodeCtx for a new MAC calculation [SWS_CRYPT_22111]. The call takes no parameters and returns a ara::core::Result<void> [SWS_CRYPT_22111]. Execution is likely synchronous, as a result object is provided directly. Question Q-1e6e36f4ed1176d3 (open)

Error Handling and Concurrency

If an error occurs during initialization, rollback semantics apply and one of the following error codes is returned [SWS_CRYPT_22111]:

  • UninitializedContext: No key was previously assigned to the context [SWS_CRYPT_22111].
  • ara::crypto::CryptoErrc::kUnsupported: The context does not support streaming or the algorithm strictly requires an initialization vector (IV) [SWS_CRYPT_22111].
  • ara::crypto::CryptoErrc::kBusyResource: A required resource is busy [SWS_CRYPT_22111].
  • ara::crypto::CryptoErrc::kEmptyKeySlot: A configured KeySlot is empty [SWS_CRYPT_22111].
  • ara::crypto::CryptoErrc::kUsageViolation: The key does not permit MAC calculation without kAllowMac set [SWS_CRYPT_22111].

The function is specified as thread-safe and exception safe (exception safe) [SWS_CRYPT_22111].

Interaction in the Streaming Process

If the algorithm requires an IV (e.g. GMAC), the overload Start(ReadOnlyMemRegion iv) must be used instead [SWS_CRYPT_22110]. After a successful call, message data can be passed step by step via Update() [SWS_CRYPT_22113]. A streaming operation that has not yet been completed can be discarded via Cancel() [SWS_CRYPT_50027].

This usage note was generated by an AI system based on the AUTOSAR specification.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
UninitializedContextif the context was not initialized by deploying a key
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if the context does not support streaming or the algorithm requires setting an IV
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowMac

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

Record
AUTOSAR/AP/record/SWS_CRYPT_22111
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22111@rel:R25-11#d8957c99
Content hash
d8957c99
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22111
Status: valid/unmigrated Version: rel:R25-11#7b2a29d5 Versionshistorie & Revisions (1 transition, 7 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_22111@rel:R25-11#7b2a29d5
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#d8957c992026-09-30
  • R20-11rel:R20-11#93def7c72026-10-14
  • R21-11rel:R21-11#268430762026-10-14
  • R22-11rel:R22-11#55642f832026-10-14
  • R23-11rel:R23-11#8f849ff62026-10-14
  • R24-11rel:R24-11#fa181e4f2026-10-14
  • R25-11rel:R25-11#7b2a29d52026-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

function Update [SWS_CRYPT_22113] Upstream: RS_CRYPTO_02302

virtual ara::core::Result< void > Update (ReadOnlyMemRegion data) noexcept=0;

Update the MAC calculation context by a new part of the message.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 017c756799dd Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The synchronous method Update of context ara::crypto::cryp::MessageAuthnCodeCtx serves to append another fragment of the input message to the ongoing calculation of a Message Authentication Code (MAC) [SWS_CRYPT_22113]. The data segment to be processed is passed via parameter data in the form of a ReadOnlyMemRegion. As a return value, the function provides a ara::core::Result<void> that either confirms the successful intermediate step or indicates the cause of the error in case of an error [SWS_CRYPT_22113].

Error Handling and Concurrency

In case of an error, rollback semantics are guaranteed so that the previous calculation state remains unchanged [SWS_CRYPT_22113]. Possible error causes are:

  • ara::crypto::CryptoErrc::kProcessingNotStarted: The calculation was not previously initiated by calling the Start() method [SWS_CRYPT_22113].
  • ara::crypto::CryptoErrc::kInvalidInputSize: The size of the passed data block is not supported by the context [SWS_CRYPT_22113].

The method is declared as noexcept and specified as thread-safe and exception safe [SWS_CRYPT_22113].

Interaction

To avoid buffer errors with ara::crypto::CryptoErrc::kInvalidInputSize, the maximum permitted input size for individual calls can be queried in advance via method GetMaximumChunkSize() [SWS_CRYPT_50033]. After successively processing all message parts, calculation of the MAC tag is, according to interpretation, typically completed via method Finish() [SWS_CRYPT_50033]. Question Q-7f8eaf8ebbf30d55 (open)

This text was generated by an AI based on the AUTOSAR specification.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
dataa part of the input message that should be processed

Rückgabewert

TypBeschreibung
ara::core::Result< void >An empty result or an error

Fehler

FehlercodeBeschreibung
ara::crypto::CryptoErrc::kProcessingNotStartedrollback_semantics if the digest calculation was not initiated by a call of the Start() method
ara::crypto::CryptoErrc::kInvalidInputSizerollback_semantics if the size of provided data is not supported

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

Record
AUTOSAR/AP/record/SWS_CRYPT_22113
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22113@rel:R25-11#fa55dfba
Content hash
fa55dfba
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22113
Status: valid/unmigrated Version: rel:R25-11#36f72b69 Versionshistorie & Revisions (1 transition, 7 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_22113@rel:R25-11#36f72b69
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#fa55dfba2026-09-30
  • R20-11rel:R20-11#f6d1433b2026-10-14
  • R21-11rel:R21-11#c608c8842026-10-14
  • R22-11rel:R22-11#a558bc872026-10-14
  • R23-11rel:R23-11#67ff09652026-10-14
  • R24-11rel:R24-11#8f531e602026-10-14
  • R25-11rel:R25-11#36f72b692026-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

function Verify [SWS_CRYPT_50031] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< bool > Verify (ReadOnlyMemRegion data, Read OnlyMemRegion expected, ara::core::Optional< ReadOnlyMemRegion > iv) const noexcept=0;

Calculate a MAC digest and compare the calculated MAC digest against an expected value.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 7407e2d0a067 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The Verify method in ara::crypto::cryp::MessageAuthnCodeCtx ([SWS_CRYPT_50031]) is used to synchronously calculate a MAC digest over the input buffer data and directly compare it with the expected value expected. Optionally, an initialization vector can be passed via iv. As a result, the function provides a ara::core::Result<bool> containing true if the calculated MAC matches the expected byte sequence, otherwise false.

Error handling

If verification fails for systemic or cryptographic reasons, the method returns a ara::core::Result with a corresponding error code ([SWS_CRYPT_50031]):

  • UninitializedContext: If the context was not initialized beforehand by assigning a key.
  • ara::crypto::CryptoErrc::kEmptyKeySlot: If the configured KeySlot is empty.
  • ara::crypto::CryptoErrc::kUsageViolation: If the permitted key usage does not include kAllowMac.
  • ara::crypto::CryptoErrc::kInvalidInputSize: If the buffer size of data, expected, or iv is invalid.
  • ara::crypto::CryptoErrc::kUnsupported: If single-call execution is not supported or providing iv does not meet the requirements of the algorithm.
  • ara::crypto::CryptoErrc::kBusyResource: In case of resource conflicts.

Concurrency and Interaction

The method is specified as thread-safe and exception safe ([SWS_CRYPT_50031]). In case of an error, rollback semantics apply. In contrast to asymmetric signature verifications in ara::crypto::cryp::VerifierPublicCtx ([SWS_CRYPT_24112], [SWS_CRYPT_50024]), Verify operates on symmetric MAC contexts. The maximum buffer size processable in a single call is presumably limited by the context implementation—analogously to the buffer query for signature verifiers ([SWS_CRYPT_50025]). Question Q-51e7427e4e082881 (open)

This text was generated by an AI based on the AUTOSAR R25-11 specification.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Parameter (in)

ParameterBeschreibung
datathe input data for the MAC
expectedthe expected MAC digest
ivan optional initialization vector

Rückgabewert

TypBeschreibung
ara::core::Result< bool >true if the calculated MAC equals the expected byte sequence, false otherwise.

Fehler

FehlercodeBeschreibung
UninitializedContextif the context was not initialized by deploying a key
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if single-call operation is not supported, or if the context requires setting an IV but no IV is provided, or if the context does not support setting an IV but an IV is provided
ara::crypto::CryptoErrc::kInvalidInputSizerollback_semantics if the size of the provided data, expected digest or IV is not supported
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowMac

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50031
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50031@rel:R25-11#36679231
Content hash
36679231
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50031
Status: valid/unmigrated Version: rel:R25-11#36679231 Versionshistorie & Revisions (1 transition)
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_50031@rel:R25-11#36679231
Point-in-Time History:
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

function VerifySubspan [SWS_CRYPT_50032] Upstream: RS_CRYPTO_02309

virtual ara::core::Result< bool > VerifySubspan (ReadOnlyMemRegion data, ReadOnlyMemRegion expected, ara::core::Optional< ReadOnlyMem Region > iv) const noexcept=0;

Calculate a MAC digest and compare the most-significant bits of the calculated MAC digest against an expected value.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: afcf3e6e2c9f Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The VerifySubspan method of class ara::crypto::cryp::MessageAuthnCodeCtx serves to synchronously calculate a MAC digest and subsequently compare its most significant bits with an expected byte sequence [SWS_CRYPT_50032]. It processes input data via data, the expected leading bits via expected, and an optional initialization vector via iv [SWS_CRYPT_50032]. The result is returned as ara::core::Result<bool> and signals true upon successful match, otherwise false [SWS_CRYPT_50032].

The interface is specified as noexcept, is exception safe as well as thread-safe, and applies rollback semantics in case of an error [SWS_CRYPT_50032]. Failed calls return specific error codes in the return value [SWS_CRYPT_50032]:

  • UninitializedContext: The context was not previously initialized by assigning a key [SWS_CRYPT_50032].
  • ara::crypto::CryptoErrc::kUsageViolation: The permitted usage of the key does not include kAllowMac [SWS_CRYPT_50032].
  • ara::crypto::CryptoErrc::kEmptyKeySlot: A configured KeySlot is currently empty [SWS_CRYPT_50032].
  • ara::crypto::CryptoErrc::kInvalidInputSize: The size of the passed data, of the expected verification value, or of the IV is not supported [SWS_CRYPT_50032].
  • ara::crypto::CryptoErrc::kUnsupported: The single-call operation is not supported or the provision of the IV conflicts with the requirements of the context [SWS_CRYPT_50032].
  • ara::crypto::CryptoErrc::kBusyResource: A required resource is busy [SWS_CRYPT_50032].

This usage note was generated automatically based on the specification.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe ara::crypto::CryptoErrc::k rollback_semantics

Parameter (in)

ParameterBeschreibung
datathe input data for the MAC
expectedthe expected most significant bits of the MAC digest
ivan optional initialization vector

Rückgabewert

TypBeschreibung
ara::core::Result< bool >true if the calculated MAC equals the expected byte sequence, false otherwise.

Fehler

FehlercodeBeschreibung
UninitializedContextif the context was not initialized by deploying a key
ara::crypto::CryptoErrc::kUnsupportedrollback_semantics if single-call operation is not supported, or if the context requires setting an IV but no IV is provided, or if the context does not support setting an IV but an IV is provided
ara::crypto::CryptoErrc::kInvalidInputSizerollback_semantics if the size of the provided data, expected digest or IV is not supported
ara::crypto::CryptoErrc::kBusyResourcerollback_semantics a required resource is busy
ara::crypto::CryptoErrc::kEmptyKeySlotrollback_semantics if a KeySlot was configured that is currently is empty
ara::crypto::CryptoErrc::kUsageViolationrollback_semantics if the allowed usage of the key does not include kAllowMac

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

Record
AUTOSAR/AP/record/SWS_CRYPT_50032
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_50032@rel:R25-11#ff2bb246
Content hash
ff2bb246
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50032
Status: valid/unmigrated Version: rel:R25-11#ff2bb246 Versionshistorie & Revisions (1 transition)
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_50032@rel:R25-11#ff2bb246
Point-in-Time History:
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

Type alias documentation

type alias Sptr [SWS_CRYPT_22101] Upstream: RS_CRYPTO_02203

using Sptr = std::shared_ptr<MessageAuthnCodeCtx>;

Smart pointer of the interface.

Header-Datei#include "ara/crypto/cryp/message_authn_code_ctx.h"
Scopeclass ara::crypto::cryp::MessageAuthnCodeCtx
SymbolSptr

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

Record
AUTOSAR/AP/record/SWS_CRYPT_22101
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CRYPT_22101@rel:R25-11#553114f3
Content hash
553114f3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_22101
Status: valid/unmigrated Version: rel:R25-11#3fbb9742 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_22101@rel:R25-11#3fbb9742
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#553114f32026-09-30
  • R19-11rel:R19-11#2bb7b6d02026-10-14
  • R20-11rel:R20-11#7e9953b02026-10-14
  • R21-11rel:R21-11#7e9953b02026-10-14
  • R22-11rel:R22-11#5e819bc12026-10-14
  • R23-11rel:R23-11#6def4d652026-10-14
  • R24-11rel:R24-11#6def4d652026-10-14
  • R25-11rel:R25-11#3fbb97422026-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