次の方法で共有


EFI_RNG_ALGORITHM_LIST 構造体

このデータ構造には、サポートされている乱数生成器 (RNG) アルゴリズムの一覧が含まれています。

構文

typedef struct _EFI_RNG_ALGORITHM_LIST {
  UINT32     AlgorithmsCount;
  EFI_GUID * Algorithms;
} EFI_RNG_ALGORITHM_LIST, *PEFI_RNG_ALGORITHM_LIST;

メンバー

AlgorithmsCount
一覧内のアルゴリズムの数。

アルゴリズム
RNG アルゴリズムの一覧へのポインター。 各アルゴリズムは sizeof(EFI_GUID) バイト長です。 呼び出し元は、EFI_BOOT_Standard Edition RVICES->FreePool() を使用してこのメモリを解放する必要があります。

解説

実装では、RNG 値を提供するための 1 つ以上の方法をサポートしていることがあります。 サポートされている RNG アルゴリズムの一覧は、この構造体で表されます。

次の一覧は、EFI_RNG_PROTOCOL アルゴリズムの選択に対する EFI GUID 値を示しています。 この一覧は網羅的なものではなく、ベンダーやその他の業界標準によって増加することがあります。

#define EFI_RNG_ALGORITHM_SP800_90_HASH_256_GUID   \
  {0xa7af67cb, 0x603b, 0x4d42, 0xba, 0x21, 0x70, 0xbf, 0xb6, 0x29,\
   0x3f, 0x96}
#define EFI_RNG_ALGORITHM_SP800_90_HMAC_256_GUID    \
  {0xc5149b43, 0xae85, 0x4f53, 0x99, 0x82, 0xb9, 0x43, 0x35, 0xd3,\
   0xa9, 0xe7}
#define EFI_RNG_ALGORITHM_SP800_90_CTR_256_GUID \
  {0x44f0de6e, 0x4d8c, 0x4045, 0xa8, 0xc7, 0x4d, 0xd1, 0x68, 0x85,\
   0x6b, 0x9e}