CPU Jitter Entropy Provider. More...
#include "qsccommon.h"Go to the source code of this file.
Macros | |
| #define | QSC_CJP_SEED_MAX 1024000U |
| The maximum number of bytes that can be generated in one provider call. | |
Functions | |
| QSC_EXPORT_API bool | qsc_cjp_available (void) |
| Test whether the platform exposes a usable high-resolution timer. | |
| QSC_EXPORT_API bool | qsc_cjp_generate (uint8_t *output, size_t length) |
| Generate an array of random bytes using the CPU jitter entropy provider. | |
| QSC_EXPORT_API uint16_t | qsc_cjp_uint16 (void) |
| Generate a random 16-bit unsigned integer using the CPU jitter entropy provider. | |
| QSC_EXPORT_API uint32_t | qsc_cjp_uint32 (void) |
| Generate a random 32-bit unsigned integer using the CPU jitter entropy provider. | |
| QSC_EXPORT_API uint64_t | qsc_cjp_uint64 (void) |
| Generate a random 64-bit unsigned integer using the CPU jitter entropy provider. | |
CPU Jitter Entropy Provider.
The CPU Jitter Provider collects timing variance produced by CPU execution, memory/cache disturbance, and the active high-resolution platform timer. The provider follows the QSC entropy-provider interface used by CSP, RDP, and ACP.
The raw timing samples are subjected to online health checks and are never returned directly. Accepted samples and auxiliary provider material are concentrated through SHAKE-512 before output is produced.
| QSC_EXPORT_API bool qsc_cjp_available | ( | void | ) |
Test whether the platform exposes a usable high-resolution timer.
| QSC_EXPORT_API bool qsc_cjp_generate | ( | uint8_t * | output, |
| size_t | length ) |
Generate an array of random bytes using the CPU jitter entropy provider.
| output | [uint8_t*] Pointer to the output byte array. |
| length | [size_t] The number of bytes to generate. |
| QSC_EXPORT_API uint16_t qsc_cjp_uint16 | ( | void | ) |
Generate a random 16-bit unsigned integer using the CPU jitter entropy provider.
| QSC_EXPORT_API uint32_t qsc_cjp_uint32 | ( | void | ) |
Generate a random 32-bit unsigned integer using the CPU jitter entropy provider.
| QSC_EXPORT_API uint64_t qsc_cjp_uint64 | ( | void | ) |
Generate a random 64-bit unsigned integer using the CPU jitter entropy provider.