ホーム › Security.Cryptography.Certificates › AlgorithmOperationFlags
AlgorithmOperationFlags
列挙型メンバー 14
| 名前 | 10進 | 16進 | 説明 |
|---|---|---|---|
| XCN_NCRYPT_NO_OPERATION | 0 | 0x0 | 操作は指定されません。 |
| XCN_NCRYPT_CIPHER_OPERATION | 1 | 0x1 | アルゴリズムを 共通鍵暗号化 に使用できます。これには、RC2、RC4、Data Encryption Standard (DES)、3DED、および AES の各アルゴリズムが含まれます。 |
| XCN_NCRYPT_HASH_OPERATION | 2 | 0x2 | アルゴリズムをハッシュ処理に使用できます。これには、MD2、MD4、SHA1、SHA256、SHA384、SHA512 MAC、および Hash-Based Message Authentication Code (HMAC) の各ハッシュ アルゴリズムが含まれます。 |
| XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION | 4 | 0x4 | アルゴリズムを公開鍵暗号化に使用できます。これには RSA が含まれます。 |
| XCN_NCRYPT_SECRET_AGREEMENT_OPERATION | 8 | 0x8 | アルゴリズムを鍵交換に使用できます。これには Diffie-Hellman アルゴリズムと ECDH アルゴリズムが含まれます。 |
| XCN_NCRYPT_SIGNATURE_OPERATION | 16 | 0x10 | アルゴリズムを署名に使用できます。これには、RSA アルゴリズム、Digital Signature Algorithm (DSA)、および ECDSA アルゴリズムが含まれます。 |
| XCN_NCRYPT_RNG_OPERATION | 32 | 0x20 | アルゴリズムを乱数の生成に使用できます。 |
| XCN_NCRYPT_KEY_DERIVATION_OPERATION | 64 | 0x40 | |
| XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION | 128 | 0x80 | |
| XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION | 156 | 0x9C | アルゴリズムを公開鍵暗号化、鍵交換、および署名に使用できます。これは次の定数のビット単位の OR の組み合わせです。 |
| XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION | 2097152 | 0x200000 | 署名アルゴリズムが優先されますが、必須ではありません。代わりに暗号化アルゴリズムが選択される場合があります。これは、サポートされる操作機能に基づいて暗号化サービス プロバイダー (CSP) の状態情報を検索するときに使用されます。 |
| XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION | 4194304 | 0x400000 | 暗号化アルゴリズム (XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION フラグまたは XCN_NCRYPT_SECRET_AGREEMENT_OPERATION フラグで識別されるものなど) が優先されますが、必須ではありません。代わりに署名アルゴリズムが選択される場合があります。これは、サポートされる操作機能に基づいて CSP の状態情報を検索するときに使用されます。 |
| XCN_NCRYPT_EXACT_MATCH_OPERATION | 8388608 | 0x800000 | 指定された操作に完全に一致するアルゴリズムのみが選択されます。 |
| XCN_NCRYPT_PREFERENCE_MASK_OPERATION | 14680064 | 0xE00000 | アルゴリズムの操作の優先設定をマスクするために使用します。 |
公式ドキュメント
AlgorithmOperationFlags 列挙型は、アルゴリズムが実行できる操作を指定します。この列挙型は、暗号化プロバイダーの操作機能、またはそれらの機能に基づく状態情報を取得するために、次のインターフェイスで使用されます。
フラグのバイナリ形式は次のとおりです。
XCN_NCRYPT_NO_OPERATION = 00000000 00000000 00000000
XCN_NCRYPT_CIPHER_OPERATION = 00000000 00000000 00000001
XCN_NCRYPT_HASH_OPERATION = 00000000 00000000 00000010
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 00000000 00000000 00000100
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 00000000 00000000 00001000
XCN_NCRYPT_SIGNATURE_OPERATION = 00000000 00000000 00010000
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION = 00000000 00000000 00011100
XCN_NCRYPT_RNG_OPERATION = 00000000 00000000 00100000
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 00100000 00000000 00000000
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 01000000 00000000 00000000
XCN_NCRYPT_EXACT_MATCH_OPERATION = 10000000 00000000 00000000
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 11100000 00000000 00000000
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
各言語での定義
列挙メンバーの定義。HSP タブは #define global(値は16進)。
typedef enum AlgorithmOperationFlags : int {
XCN_NCRYPT_NO_OPERATION = 0,
XCN_NCRYPT_CIPHER_OPERATION = 1,
XCN_NCRYPT_HASH_OPERATION = 2,
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 4,
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 8,
XCN_NCRYPT_SIGNATURE_OPERATION = 16,
XCN_NCRYPT_RNG_OPERATION = 32,
XCN_NCRYPT_KEY_DERIVATION_OPERATION = 64,
XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION = 128,
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION = 156,
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 2097152,
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 4194304,
XCN_NCRYPT_EXACT_MATCH_OPERATION = 8388608,
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 14680064
} AlgorithmOperationFlags;public enum AlgorithmOperationFlags : int
{
XCN_NCRYPT_NO_OPERATION = 0,
XCN_NCRYPT_CIPHER_OPERATION = 1,
XCN_NCRYPT_HASH_OPERATION = 2,
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 4,
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 8,
XCN_NCRYPT_SIGNATURE_OPERATION = 16,
XCN_NCRYPT_RNG_OPERATION = 32,
XCN_NCRYPT_KEY_DERIVATION_OPERATION = 64,
XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION = 128,
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION = 156,
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 2097152,
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 4194304,
XCN_NCRYPT_EXACT_MATCH_OPERATION = 8388608,
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 14680064,
}Public Enum AlgorithmOperationFlags As Integer
XCN_NCRYPT_NO_OPERATION = 0
XCN_NCRYPT_CIPHER_OPERATION = 1
XCN_NCRYPT_HASH_OPERATION = 2
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 4
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 8
XCN_NCRYPT_SIGNATURE_OPERATION = 16
XCN_NCRYPT_RNG_OPERATION = 32
XCN_NCRYPT_KEY_DERIVATION_OPERATION = 64
XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION = 128
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION = 156
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 2097152
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 4194304
XCN_NCRYPT_EXACT_MATCH_OPERATION = 8388608
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 14680064
End Enumimport enum
class AlgorithmOperationFlags(enum.IntEnum):
XCN_NCRYPT_NO_OPERATION = 0
XCN_NCRYPT_CIPHER_OPERATION = 1
XCN_NCRYPT_HASH_OPERATION = 2
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 4
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 8
XCN_NCRYPT_SIGNATURE_OPERATION = 16
XCN_NCRYPT_RNG_OPERATION = 32
XCN_NCRYPT_KEY_DERIVATION_OPERATION = 64
XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION = 128
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION = 156
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 2097152
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 4194304
XCN_NCRYPT_EXACT_MATCH_OPERATION = 8388608
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 14680064// AlgorithmOperationFlags
pub const XCN_NCRYPT_NO_OPERATION: i32 = 0;
pub const XCN_NCRYPT_CIPHER_OPERATION: i32 = 1;
pub const XCN_NCRYPT_HASH_OPERATION: i32 = 2;
pub const XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION: i32 = 4;
pub const XCN_NCRYPT_SECRET_AGREEMENT_OPERATION: i32 = 8;
pub const XCN_NCRYPT_SIGNATURE_OPERATION: i32 = 16;
pub const XCN_NCRYPT_RNG_OPERATION: i32 = 32;
pub const XCN_NCRYPT_KEY_DERIVATION_OPERATION: i32 = 64;
pub const XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION: i32 = 128;
pub const XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION: i32 = 156;
pub const XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION: i32 = 2097152;
pub const XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION: i32 = 4194304;
pub const XCN_NCRYPT_EXACT_MATCH_OPERATION: i32 = 8388608;
pub const XCN_NCRYPT_PREFERENCE_MASK_OPERATION: i32 = 14680064;// AlgorithmOperationFlags
const (
XCN_NCRYPT_NO_OPERATION int32 = 0
XCN_NCRYPT_CIPHER_OPERATION int32 = 1
XCN_NCRYPT_HASH_OPERATION int32 = 2
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION int32 = 4
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION int32 = 8
XCN_NCRYPT_SIGNATURE_OPERATION int32 = 16
XCN_NCRYPT_RNG_OPERATION int32 = 32
XCN_NCRYPT_KEY_DERIVATION_OPERATION int32 = 64
XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION int32 = 128
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION int32 = 156
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION int32 = 2097152
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION int32 = 4194304
XCN_NCRYPT_EXACT_MATCH_OPERATION int32 = 8388608
XCN_NCRYPT_PREFERENCE_MASK_OPERATION int32 = 14680064
)const
XCN_NCRYPT_NO_OPERATION = 0;
XCN_NCRYPT_CIPHER_OPERATION = 1;
XCN_NCRYPT_HASH_OPERATION = 2;
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 4;
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 8;
XCN_NCRYPT_SIGNATURE_OPERATION = 16;
XCN_NCRYPT_RNG_OPERATION = 32;
XCN_NCRYPT_KEY_DERIVATION_OPERATION = 64;
XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION = 128;
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION = 156;
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 2097152;
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 4194304;
XCN_NCRYPT_EXACT_MATCH_OPERATION = 8388608;
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 14680064;// AlgorithmOperationFlags
pub const XCN_NCRYPT_NO_OPERATION: i32 = 0;
pub const XCN_NCRYPT_CIPHER_OPERATION: i32 = 1;
pub const XCN_NCRYPT_HASH_OPERATION: i32 = 2;
pub const XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION: i32 = 4;
pub const XCN_NCRYPT_SECRET_AGREEMENT_OPERATION: i32 = 8;
pub const XCN_NCRYPT_SIGNATURE_OPERATION: i32 = 16;
pub const XCN_NCRYPT_RNG_OPERATION: i32 = 32;
pub const XCN_NCRYPT_KEY_DERIVATION_OPERATION: i32 = 64;
pub const XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION: i32 = 128;
pub const XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION: i32 = 156;
pub const XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION: i32 = 2097152;
pub const XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION: i32 = 4194304;
pub const XCN_NCRYPT_EXACT_MATCH_OPERATION: i32 = 8388608;
pub const XCN_NCRYPT_PREFERENCE_MASK_OPERATION: i32 = 14680064;const
XCN_NCRYPT_NO_OPERATION* = 0
XCN_NCRYPT_CIPHER_OPERATION* = 1
XCN_NCRYPT_HASH_OPERATION* = 2
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION* = 4
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION* = 8
XCN_NCRYPT_SIGNATURE_OPERATION* = 16
XCN_NCRYPT_RNG_OPERATION* = 32
XCN_NCRYPT_KEY_DERIVATION_OPERATION* = 64
XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION* = 128
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION* = 156
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION* = 2097152
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION* = 4194304
XCN_NCRYPT_EXACT_MATCH_OPERATION* = 8388608
XCN_NCRYPT_PREFERENCE_MASK_OPERATION* = 14680064enum AlgorithmOperationFlags : int {
XCN_NCRYPT_NO_OPERATION = 0,
XCN_NCRYPT_CIPHER_OPERATION = 1,
XCN_NCRYPT_HASH_OPERATION = 2,
XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION = 4,
XCN_NCRYPT_SECRET_AGREEMENT_OPERATION = 8,
XCN_NCRYPT_SIGNATURE_OPERATION = 16,
XCN_NCRYPT_RNG_OPERATION = 32,
XCN_NCRYPT_KEY_DERIVATION_OPERATION = 64,
XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION = 128,
XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION = 156,
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION = 2097152,
XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION = 4194304,
XCN_NCRYPT_EXACT_MATCH_OPERATION = 8388608,
XCN_NCRYPT_PREFERENCE_MASK_OPERATION = 14680064,
}#define global XCN_NCRYPT_NO_OPERATION 0x0
#define global XCN_NCRYPT_CIPHER_OPERATION 0x1
#define global XCN_NCRYPT_HASH_OPERATION 0x2
#define global XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION 0x4
#define global XCN_NCRYPT_SECRET_AGREEMENT_OPERATION 0x8
#define global XCN_NCRYPT_SIGNATURE_OPERATION 0x10
#define global XCN_NCRYPT_RNG_OPERATION 0x20
#define global XCN_NCRYPT_KEY_DERIVATION_OPERATION 0x40
#define global XCN_NCRYPT_KEY_ENCAPSULATION_OPERATION 0x80
#define global XCN_NCRYPT_ANY_ASYMMETRIC_OPERATION 0x9C
#define global XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION 0x200000
#define global XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION 0x400000
#define global XCN_NCRYPT_EXACT_MATCH_OPERATION 0x800000
#define global XCN_NCRYPT_PREFERENCE_MASK_OPERATION 0xE00000