Udostępnij przez


ALG_ID

Typ danych ALG_ID określa identyfikator algorytmu. Parametry tego typu danych są przekazywane do większości funkcji w interfejsie CryptoAPI.

typedef unsigned int ALG_ID;

W poniższej tabeli wymieniono identyfikatory algorytmów, które są obecnie zdefiniowane. Autorzy niestandardowych dostawców usług kryptograficznych (CSP) mogą definiować nowe wartości. Ponadto ALG_ID używane przez niestandardowe dostawcy CSP dla kluczowych specyfikacji AT_KEYEXCHANGE i AT_SIGNATURE są zależne od dostawcy. Bieżące mapowania są zgodne z tabelą.

Identyfikator Wartość Opis
CALG_3DES 0x00006603 Algorytm szyfrowania Triple DES .
CALG_3DES_112 0x00006609 Dwuklucze szyfrowanie DES o efektywnej długości klucza równej 112 bitom.
CALG_AES 0x00006611 Advanced Encryption Standard (AES). Ten algorytm jest obsługiwany przez dostawcę usług kryptograficznych Microsoft AES.
CALG_AES_128 0x0000660e 128-bitowa AES. Ten algorytm jest obsługiwany przez dostawcę usług kryptograficznych Microsoft AES.
CALG_AES_192 0x0000660f 192-bitowa AES. Ten algorytm jest obsługiwany przez dostawcę usług kryptograficznych Microsoft AES.
CALG_AES_256 0x00006610 256-bitowa AES. Ten algorytm jest obsługiwany przez dostawcę usług kryptograficznych Microsoft AES.
CALG_AGREEDKEY_ANY 0x0000aa03 Tymczasowy identyfikator algorytmu dla dojść diffie-Hellman uzgodnionych kluczy.
CALG_CYLINK_MEK 0x0000660c Algorytm umożliwiający utworzenie 40-bitowego klucza DES, który ma bity parzystości i bity klucza zero, aby jego długość klucza wynosiła 64 bity. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_DES 0x00006601 Algorytm szyfrowania DES.
CALG_DESX 0x00006604 Algorytm szyfrowania DESX.
CALG_DH_EPHEM 0x0000aa02 Diffie-Hellman efemeryczny algorytm wymiany kluczy.
CALG_DH_SF 0x0000aa01 Diffie-Hellman przechowywać i przekazywać algorytm wymiany kluczy.
CALG_DSS_SIGN 0x00002200 Algorytm podpisu klucza publicznego DSA.
CALG_ECDH 0x0000aa05 Krzywa eliptyczna Diffie-Hellman algorytm wymiany kluczy.
Nuta: Ten algorytm jest obsługiwany tylko za pośrednictwem interfejsu API kryptografii: następnej generacji.
Windows Server 2003 i Windows XP: Ten algorytm nie jest obsługiwany.
CALG_ECDH_EPHEM 0x0000ae06 Efemeryczna krzywa eliptyczna Diffie-Hellman algorytm wymiany kluczy. Nuta: Ten algorytm jest obsługiwany tylko za pośrednictwem interfejsu API kryptografii: następnej generacji.
Windows Server 2003 i Windows XP: Ten algorytm nie jest obsługiwany.
CALG_ECDSA 0x00002203 Algorytm podpisu cyfrowego krzywej eliptycznej. Nuta: Ten algorytm jest obsługiwany tylko za pośrednictwem interfejsu API kryptografii: następnej generacji.
Windows Server 2003 i Windows XP: Ten algorytm nie jest obsługiwany.
CALG_ECMQV 0x0000a001 Algorytm wymiany kluczy Elliptic Menezes, Qu i Vanstone (MQV). Ten algorytm nie jest obsługiwany.
CALG_HASH_REPLACE_OWF 0x0000800b Jednokierunkowy algorytm tworzenia skrótów funkcji.
CALG_HUGHES_MD5 0x0000a003 Algorytm tworzenia skrótów Hughes MD5.
CALG_HMAC 0x00008009 Algorytm skrótu klucza HMAC. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_KEA_KEYX 0x0000aa04 Algorytm wymiany kluczy KEA (FORTEZZA). Ten algorytm nie jest obsługiwany.
CALG_MAC 0x00008005 Algorytm skrótu klucza MAC. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_MD2 0x00008001 Algorytm tworzenia skrótów MD2. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_MD4 0x00008002 Algorytm tworzenia skrótów MD4.
CALG_MD5 0x00008003 Algorytm tworzenia skrótów MD5. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_NO_SIGN 0x00002000 Brak algorytmu podpisu.
CALG_OID_INFO_CNG_ONLY 0xffffffff Algorytm jest implementowany tylko w sieci CNG. Makro, IS_SPECIAL_OID_INFO_ALGID, można użyć do określenia, czy algorytm kryptografii jest obsługiwany tylko za pomocą funkcji CNG.
CALG_OID_INFO_PARAMETERS 0xfffffffe Algorytm jest zdefiniowany w zakodowanych parametrach. Algorytm jest obsługiwany tylko przy użyciu CNG. Makro, IS_SPECIAL_OID_INFO_ALGID, można użyć do określenia, czy algorytm kryptografii jest obsługiwany tylko za pomocą funkcji CNG.
CALG_OID_INFO_PQ 0xFFFFFFFD Algorytmy kryptografii po kwantowej.
CALG_OID_INFO_PQ_T 0xFFFFFFFC Algorytmy post-kwantowe i tradycyjne.
CALG_PCT1_MASTER 0x00004c04 Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.
CALG_RC2 0x00006602 RC2 blokuj algorytm szyfrowania. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_RC4 0x00006801 Algorytm szyfrowania strumienia RC4. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_RC5 0x0000660d RC5 blokuj algorytm szyfrowania.
CALG_RSA_KEYX 0x0000a400 Algorytm wymiany kluczy publicznych RSA. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_RSA_SIGN 0x00002400 Algorytm podpisu klucza publicznego RSA. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_SCHANNEL_ENC_KEY 0x00004c07 Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.
CALG_SCHANNEL_MAC_KEY 0x00004c03 Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.
CALG_SCHANNEL_MASTER_HASH 0x00004c02 Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.
CALG_SEAL 0x00006802 Algorytm szyfrowania SEAL. Ten algorytm nie jest obsługiwany.
CALG_SHA 0x00008004 Algorytm wyznaczania skrótu SHA. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_SHA1 0x00008004 Tak samo jak CALG_SHA. Ten algorytm jest obsługiwany przez podstawowego dostawcę kryptograficznego firmy Microsoft.
CALG_SHA_256 0x0000800c 256-bitowy algorytm wyznaczania skrótu SHA. Ten algorytm jest obsługiwany przez dostawcę usług kryptograficznych RSA i AES firmy Microsoft.
Windows XP z dodatkiem SP3: Ten algorytm jest obsługiwany przez rozszerzonego dostawcę usług kryptograficznych RSA i AES firmy Microsoft (prototyp).
Windows XP z dodatkiem SP2, Windows XP z dodatkiem SP1 i Windows XP: Ten algorytm nie jest obsługiwany.
CALG_SHA_384 0x0000800d 384-bitowy algorytm wyznaczania skrótu SHA. Ten algorytm jest obsługiwany przez dostawcę usług kryptograficznych RSA i AES firmy Microsoft. Windows XP z dodatkiem SP3: Ten algorytm jest obsługiwany przez rozszerzonego dostawcę usług kryptograficznych RSA i AES firmy Microsoft (prototyp).
Windows XP z dodatkiem SP2, Windows XP z dodatkiem SP1 i Windows XP: Ten algorytm nie jest obsługiwany.
CALG_SHA_512 0x0000800e 512-bitowy algorytm wyznaczania skrótu SHA. Ten algorytm jest obsługiwany przez dostawcę usług kryptograficznych RSA i AES firmy Microsoft.
Windows XP z dodatkiem SP3: Ten algorytm jest obsługiwany przez rozszerzonego dostawcę usług kryptograficznych RSA i AES firmy Microsoft (prototyp).
Windows XP z dodatkiem SP2, Windows XP z dodatkiem SP1 i Windows XP: Ten algorytm nie jest obsługiwany.
CALG_SKIPJACK 0x0000660a Pomijanie algorytmu szyfrowania bloku (FORTEZZA). Ten algorytm nie jest obsługiwany.
CALG_SSL2_MASTER 0x00004c05 Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.
CALG_SSL3_MASTER 0x00004c01 Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.
CALG_SSL3_SHAMD5 0x00008008 Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.
CALG_TEK 0x0000660b TEK (FORTEZZA). Ten algorytm nie jest obsługiwany.
CALG_TLS1_MASTER 0x00004c06 Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.
CALG_TLS1PRF 0x0000800a Używany przez system operacyjny Schannel.dll. Tego ALG_ID nie należy używać przez aplikacje.

W przypadku podstawowego dostawcy kryptograficznego firmy Microsoft, silnego dostawcy kryptograficznego firmy Microsoft i rozszerzonego dostawcy kryptograficznego firmy MicrosoftALG_IDs używane do obsługi kluczowych specyfikacji AT_KEYEXCHANGE i AT_SIGNATURE są następujące:

  • CALG_RSA_KEYX służy do AT_KEYEXCHANGE.
  • CALG_RSA_SIGN służy do AT_SIGNATURE.

W przypadku podstawowego dostawcy dss firmy Microsoft i dostawcy usług kryptograficznych Diffie-HellmanALG_IDs używane do obsługi kluczowych specyfikacji AT_KEYEXCHANGE i AT_SIGNATURE są następujące:

  • CALG_DH_SF służy do AT_KEYEXCHANGE.
  • CALG_DSS_SIGN służy do AT_SIGNATURE.

Wymagania

Wymaganie Wartość
Minimalny obsługiwany klient Windows XP [tylko aplikacje klasyczne]
Minimalny obsługiwany serwer Windows Server 2003 [tylko aplikacje klasyczne]
Nagłówek Wincrypt.h

Zobacz także

funkcje kryptograficzne

CRYPT_ALGORITHM_IDENTIFIER

CryptFindOIDInfo