Partilhar via


estrutura BAND_SECURITY_INFO (ehstorbandmgmt.h)

A estrutura BAND_SECURITY_INFO especifica as informações de segurança de uma consulta de entrada de tabela de banda.

Sintaxe

typedef struct _BAND_SECURITY_INFO {
  ULONG      StructSize;
  LOCKSTATE  ReadLock;
  LOCKSTATE  WriteLock;
  ALGOIDTYPE CryptoAlgoIdType;
  union {
    struct {
      ULONG Offset;
      ULONG Length;
    } CryptoAlgoOidString;
    ULONG CryptoAlgoNumericId;
  };
  BYTE       Metadata[32];
} BAND_SECURITY_INFO, *PBAND_SECURITY_INFO;

Membros

StructSize

O tamanho da estrutura em bytes. Definido como tamanhos de(BAND_SECURITY_INFO).

ReadLock

Se a banda está acessível para leitura e como um bloqueio de leitura é afetado por uma redefinição de energia.

WriteLock

Se a banda está acessível para gravação e como um bloqueio de gravação é afetado por uma redefinição de energia.

CryptoAlgoIdType

O tipo de identificador de algoritmo de criptografia usado. Isso deve ser definido como AlgoIdTypeOidString.

CryptoAlgoOidString

O algoritmo de criptografia usado para proteger os dados na banda.

CryptoAlgoOidString.Offset

O deslocamento do início dessa estrutura em que a cadeia de caracteres OID do algoritmo de criptografia começa.

CryptoAlgoOidString.Length

O comprimento da cadeia de caracteres OID que identifica o algoritmo de criptografia. Esse é um valor de comprimento de byte, incluindo um terminador NULL para a cadeia de caracteres OID.

CryptoAlgoNumericId

Reservado.

Metadata[32]

Um campo de metadados disponível para uso por um gerenciador de chaves.

Observações

Tanto readlock quanto writelock são valores de LOCKSTATE e indicam o estado de bloqueio e a persistência de bloqueio. Seus valores são um dos seguintes.

Estado de bloqueio Descrição
INVALID_LOCK_STATE O estado de bloqueio não é válido.
PERSISTENT_UNLOCK O dispositivo é desbloqueado e permanece desbloqueado durante a redefinição de energia.
NONPERSISTENT_UNLOCK O dispositivo é desbloqueado, mas fica bloqueado durante a redefinição de energia.
PERSISTENT_LOCK O dispositivo está bloqueado e permanece bloqueado durante a redefinição de energia.
 

CryptoAlgoOidString especifica o algoritmo de criptografia de dados somente se ENUMBANDS_REPORT_CRYPTO_ALGO estiver definido no Flags membro do ENUMERATE_BANDS_PARAMETERS em uma solicitação IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS. Caso contrário, CryptoAlgoOidString.Offset e CryptoAlgoOidString.Length são definidos como 0. Veja a seguir possíveis cadeias de caracteres OID do algoritmo de criptografia retornadas para CryptoAlgoOidString.

Algoritmo OID
IAES128-ECB 2.16.840.1.101.3.4.1.1
AES128-CBC 2.16.840.1.101.3.4.1.2.
AES128-OFB 2.16.840.1.101.3.4.1.3
AES128-CFB 2.16.840.1.101.3.4.1.4
AES128-XTS 1.3.111.2.1619.0.1.1
AES256-ECB 2.16.840.1.101.3.4.1.41
AES256-CBC 2.16.840.1.101.3.4.1.42
AES256-OFB 2.16.840.1.101.3.4.1.43
AES256-CFB 2.16.840.1.101.3.4.1.44
AES256-XTS 1.3.111.2.1619.0.1.2
 

Quando BAND_SECURITY_INFO é usado em um conjunto de parâmetros de entrada, CryptoAlgoIdType e CryptoAlgoOidString não são usados e devem ser definidos como 0.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível a partir do Windows 8
cabeçalho ehstorbandmgmt.h (inclua EhStorBandMgmt.h)

Consulte também

BAND_TABLE_ENTRY

ENUMERATE_BANDS_PARAMETERS

IOCTL_EHSTOR_BANDMGMT_CREATE_BAND

IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS