CLASSIC
Modul: csm
Rolle: constitutive
Konfidenz: 95%
SNIP_CLASSIC_CSM_SECTION_8_3_9_Cryptographic_Primitives_and_Schemes
Wortlaut
8.3.9 Cryptographic Primitives and Schemes
[SWS_Csm_91027] Definition of API function Csm_JobKeySetValid ⌈
Service Name
Csm_JobKeySetValid
Syntax
Std_ReturnType Csm_JobKeySetValid (
uint32 jobId
)
Service ID [hex]
0x7a
Sync/Async
Depends on configuration
Reentrancy
Reentrant
Parameters (in)
jobId
Holds the identifier of the job using the CSM service.
Parameters (inout)
None
▽
△
Parameters (out)
None
Return value
Std_ReturnType
E_OK: Request successful
E_NOT_OK: Request failed
CRYPTO_E_BUSY: Request failed, Crypro Driver Object is busy
Description
Stores the key if necessary and sets the key state of the key identified by keyId to valid.
Available via
Csm.h
⌋
[SWS_Csm_91002] Definition of API function Csm_JobKeySetInvalid ⌈
Service Name
Csm_JobKeySetInvalid
Syntax
Std_ReturnType Csm_JobKeySetInvalid (
uint32 jobId
)
Service ID [hex]
0x84
Sync/Async
Depends on configuration
Reentrancy
Reentrant
Parameters (in)
jobId
Holds the identifier of the job using the CSM service.
Parameters (inout)
None
Parameters (out)
None
Return value
Std_ReturnType
E_OK: Request successful
E_NOT_OK: Request failed
CRYPTO_E_BUSY: Request failed, Crypro Driver Object is busy
Description
Sets the key status to invalid. The key cannot be used any longer for cryptographic operations
until it has been set to valid state again.
Available via
Csm.h
⌋
[SWS_Csm_91028] Definition of API function Csm_JobRandomSeed ⌈
Service Name
Csm_JobRandomSeed
Syntax
Std_ReturnType Csm_JobRandomSeed (
uint32 jobId,
const uint8* seedPtr,
uint32 seedLength
)
Service ID [hex]
0x7b
Sync/Async
Depends on configuration
Reentrancy
Reentrant
jobId
Holds the identifier of the job using the CSM service.
seedPtr
Holds a pointer to the memory location which contains the data to
feed the seed.
Parameters (in)
seedLength
Contains the length of the seed in bytes.
Parameters (inout)
None
Parameters (out)
None
▽
△
Return value
Std_ReturnType
E_OK: Request successful
E_NOT_OK: Request failed
CRYPTO_E_BUSY: Request failed, service is still busy
CRYPTO_E_KEY_NOT_VALID: Request failed, the key’s state is
"invalid"
CRYPTO_E_KEY_EMPTY: Request failed because of uninitialized
source key element
Description
Provides a new seed for the specified key that is used for an associated random number
generator.
Available via
Csm.h
⌋
[SWS_Csm_91029] Definition of API function Csm_JobKeyGenerate ⌈
Service Name
Csm_JobKeyGenerate
Syntax
Std_ReturnType Csm_JobKeyGenerate (
uint32 jobId
)
Service ID [hex]
0x7c
Sync/Async
Depends on configuration
Reentrancy
Reentrant
Parameters (in)
jobId
Holds the identifier of the job using the CSM service.
Parameters (inout)
None
Parameters (out)
None
Return value
Std_ReturnType
E_OK: Request successful
E_NOT_OK: Request failed
CRYPTO_E_BUSY: Request failed, service is still busy
CRYPTO_E_KEY_NOT_VALID: Request failed, the key’s state is
"invalid"
CRYPTO_E_KEY_EMPTY: Request failed because of uninitialized
source key element
Description
Generates new key material and stores it in the key identified by keyId.
Available via
Csm.h
⌋
[SWS_Csm_91030] Definition of API function Csm_JobKeyDerive ⌈
Service Name
Csm_JobKeyDerive
Syntax
Std_ReturnType Csm_JobKeyDerive (
uint32 jobId,
uint32 targetKeyId
)
Service ID [hex]
0x7d
Sync/Async
Depends on configuration
Reentrancy
Reentrant
jobId
Holds the identifier of the job using the CSM service.
Parameters (in)
targetKeyId
Holds the identifier of the key which is used to store the derived
key.
Parameters (inout)
None
Parameters (out)
None
▽
△
Return value
Std_ReturnType
E_OK: Request successful
E_NOT_OK: Request failed
CRYPTO_E_BUSY: Request failed, service is still busy
CRYPTO_E_KEY_READ_FAIL: Request failed, not allowed to
extract key element
CRYPTO_E_KEY_WRITE_FAIL: Request failed, not allowed to
write key element
CRYPTO_E_KEY_NOT_VALID: Request failed, the key’s state is
"invalid"
CRYPTO_E_KEY_SIZE_MISMATCH: Request failed, key element
sizes are not compatible
CRYPTO_E_KEY_EMPTY: Request failed because of uninitialized
source key element
Description
Derives a new key by using the key elements in the given key identified by the keyId. The given
key contains the key elements for the password and salt. The derived key is stored in the key
element with the id 1 of the key identified by targetCryptoKeyId.
Available via
Csm.h
⌋
[SWS_Csm_91031] Definition of API function Csm_JobKeyExchangeCalcPubVal
⌈
Service Name
Csm_JobKeyExchangeCalcPubVal
Syntax
Std_ReturnType Csm_JobKeyExchangeCalcPubVal (
uint32 jobId,
uint8* publicValuePtr,
uint32* publicValueLengthPtr
)
Service ID [hex]
0x7e
Sync/Async
Depends on configuration
Reentrancy
Reentrant
Parameters (in)
jobId
Holds the identifier of the job using the CSM service.
Parameters (inout)
publicValueLengthPtr
Holds a pointer to the memory location in which the public value
length information is stored. On calling this function, this
parameter shall contain the size of the buffer provided by public
ValuePtr. When the request has finished, the actual length of the
returned value shall be stored.
Parameters (out)
publicValuePtr
Contains the pointer to the data where the public value shall be
stored.
Return value
Std_ReturnType
E_OK: Request successful
E_NOT_OK: Request failed
CRYPTO_E_BUSY: Request failed, service is still busy
CRYPTO_E_KEY_NOT_VALID: Request failed, the key’s state is
"invalid"
CRYPTO_E_KEY_EMPTY: Request failed because of uninitialized
source key element
Description
Calculates the public value of the current user for the key exchange and stores the public key in
the memory location pointed by the public value pointer.
Available via
Csm.h
⌋
Versionen & Provenienz · Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.
Begründung & Zuweisungs-Evidenz
Cited verbatim in the snippet (deterministic citation).
Dokumenten-Herkunft & Rückverfolgbarkeit
| Spezifikations-Dokument | SWS_CryptoServiceManager.pdf |
|---|---|
| Dokumentseite | Seite 76 |
| Ziel-Modul | csm (classic) |
| Ziel-Anforderung | SWS_Std_00005 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.95 |