function CalculateHashDigest [SWS_CRYPT_50060] Upstream: RS_CRYPTO_02205
virtual ara::core::Result< std::size_t > CalculateHashDigest (ReadOnly MemRegion data, ReadWriteMemRegion digest, ara::core::Optional< Read OnlyMemRegion > iv) const noexcept=0;
Calculate the hash digest and write the the calculated digest into the provided output buffer.
Die Methode CalculateHashDigest führt eine synchrone One-Shot-Berechnung eines kryptografischen Hash-Werts durch und schreibt das Ergebnis in den bereitgestellten Ausgabepuffer [SWS_CRYPT_50060]. Als Parameter werden die zu verarbeitende Eingabenachricht data, der Zielpuffer digest sowie optional ein Initialisierungsvektor iv übergeben. Bei erfolgreicher Ausführung liefert die Funktion über das Ergebnisobjekt ara::core::Result<std::size_t> die tatsächliche Anzahl der geschriebenen Digest-Bytes zurück [SWS_CRYPT_50060].
Fehlerbehandlung
Schlägt die Berechnung fehl, garantiert die Schnittstelle Rollback-Semantik [SWS_CRYPT_50060]. Folgende Fehlercodes können im Ergebnis enthalten sein:
ara::crypto::CryptoErrc::kInvalidInputSize: Die Größe der übergebenen Daten oder des Initialisierungsvektors wird nicht unterstützt [SWS_CRYPT_50060].ara::crypto::CryptoErrc::kUnsupported: Die Single-Call-Berechnung wird vom Kontext nicht unterstützt, oder die Übergabe des Initialisierungsvektors passt nicht zur Konfiguration des Kontexts (IV erforderlich, aber fehlt, bzw. IV übergeben, obwohl nicht unterstützt) [SWS_CRYPT_50060].ara::crypto::CryptoErrc::kInsufficientCapacity: Die Kapazität des Ausgabepuffersdigestreicht für den berechneten Digest nicht aus [SWS_CRYPT_50060].
Nebenläufigkeit und Zusammenspiel
Die Funktion ist als ausnahmesicher (exception safe) und threadsicher (thread-safe) deklariert [SWS_CRYPT_50060]. Um Fehler bezüglich unzulässiger Eingabelängen vorab zu vermeiden, kann die für einen Einzelaufruf maximal zulässige Puffergröße des Kontexts über GetMaximumChunkSize ermittelt werden [SWS_CRYPT_50062].
Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation R25-11 generiert.
Implementer's Guide folgt (Komplexität I1)
| Header-Datei | #include "ara/crypto/cryp/hash_function_ctx.h" |
|---|---|
| Scope | class ara::crypto::cryp::HashFunctionCtx |
| Exception-Sicherheit | exception safe |
| Thread-Sicherheit | thread-safe |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| data | the input message that should be processed |
| iv | an optional initialization vector |
Parameter (out)
| Parameter | Beschreibung |
|---|---|
| digest | an output data buffer that the digest will be written into. |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| ara::core::Result<std::size_t > | A result containing the size in bytes of the digest or an error. |
Fehler
| Fehlercode | Beschreibung |
|---|---|
| ara::crypto::CryptoErrc::kInvalidInputSize | rollback_semantics if the size of provided data or IV is not supported |
| ara::crypto::CryptoErrc::kUnsupported | rollback_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::kInsufficientCapacity | rollback_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_50060- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_CRYPT_50060@rel:R25-11#29fd4c6d- Content hash
29fd4c6d- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_50060
Status: valid/unmigrated
Version: rel:R25-11#29fd4c6d
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_50060@rel:R25-11#29fd4c6d
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-medium· 2026-10-13