fonction 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.
La méthode CalculateHashDigest effectue un calcul one-shot synchrone d'une valeur de hachage cryptographique et écrit le résultat dans le tampon de sortie fourni [SWS_CRYPT_50060]. Sont transmis comme paramètres le message d'entrée à traiter data, le tampon cible digest ainsi que, de manière optionnelle, un vecteur d'initialisation iv. En cas d'exécution réussie, la fonction renvoie via l'objet de résultat ara::core::Result<std::size_t> le nombre effectif d'octets de digest écrits [SWS_CRYPT_50060].
Gestion des erreurs
Si le calcul échoue, l'interface garantit une sémantique de rollback [SWS_CRYPT_50060]. Les codes d'erreur suivants peuvent être contenus dans le résultat :
ara::crypto::CryptoErrc::kInvalidInputSize: La taille des données transmises ou du vecteur d'initialisation n'est pas prise en charge [SWS_CRYPT_50060].ara::crypto::CryptoErrc::kUnsupported: Le calcul en appel unique (single-call) n'est pas pris en charge par le contexte, ou la transmission du vecteur d'initialisation ne correspond pas à la configuration du contexte (IV requis mais manquant, ou IV transmis alors qu'il n'est pas pris en charge) [SWS_CRYPT_50060].ara::crypto::CryptoErrc::kInsufficientCapacity: La capacité du tampon de sortiedigestn'est pas suffisante pour le digest calculé [SWS_CRYPT_50060].
Concurrence et interaction
La fonction est déclarée sûre vis-à-vis des exceptions (exception safe) et sûre vis-à-vis des threads (thread-safe) [SWS_CRYPT_50060]. Afin d'éviter en amont des erreurs relatives à des longueurs d'entrée non autorisées, la taille de tampon maximale admissible pour un appel unique du contexte peut être déterminée via GetMaximumChunkSize [SWS_CRYPT_50062].
Cette note d'utilisation a été générée automatiquement sur la base de la spécification AUTOSAR R25-11.
Guide de l'implémenteur à venir (complexité 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#3c0ca70b- Content hash
3c0ca70b- 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-low· 2026-10-13 · Original allemand