2.2.1.2.237 ROUTER_CUSTOM_IKEv2_POLICY_0
The ROUTER_CUSTOM_IKEv2_POLICY_0 structure<166> is used to get or set configuration parameters to be used during quick mode security association (QM SA) or main mode security association (MM SA) negotiation for IKEv2 [RFC4306] and L2TP devices.
-
typedef struct _ROUTER_CUSTOM_IKEv2_POLICY_0 { DWORD dwIntegrityMethod; DWORD dwEncryptionMethod; DWORD dwCipherTransformConstant; DWORD dwAuthTransformConstant; DWORD dwPfsGroup; DWORD dwDhGroup; } ROUTER_CUSTOM_IKEv2_POLICY_0, *PROUTER_CUSTOM_IKEv2_POLICY_0, ROUTER_CUSTOM_L2TP_POLICY_0, *PROUTER_CUSTOM_L2TP_POLICY_0;
dwIntegrityMethod: Specifies the integrity check algorithm to be negotiated during MM SA negotiation [RFC4306]. This SHOULD have one of the following values.
-
Value
Meaning
INTEGRITY_MD5
(0x0)
Specifies MD5 hash algorithm.
INTEGRITY_SHA1
(0x1)
Specifies SHA1 hash algorithm.
INTEGRITY_SHA_256
(0x2)
Specifies a 256-bit SHA encryption.
INTEGRITY_SHA_384
(0x3)
Specifies a 384-bit SHA encryption.
dwEncryptionMethod: Specifies the encryption algorithm to be negotiated during MM SA negotiation [RFC4306]. This SHOULD have one of the following values.
-
Value
Meaning
CIPHER_DES
(0x0)
Specifies DES encryption.
CIPHER_3DES
(0x1)
Specifies 3DES encryption.
CIPHER_AES_128
(0x2)
Specifies AES-128 encryption.
CIPHER_AES_192
(0x3)
Specifies AES-192 encryption.
CIPHER_AES_256
(0x4)
Specifies AES-256 encryption.
dwCipherTransformConstant: Specifies the encryption algorithm to be negotiated during QM SA negotiation [RFC4306]. This SHOULD have one of the following values.
-
Value
Meaning
CIPHER_CONFIG_CBC_DES
(0x1)
DES (Data Encryption Standard) algorithm. CBC (Cipher Block Chaining) mode of operation. [RFC2410]
CIPHER_CONFIG_CBC_3DES
(0x2)
3DES algorithm. CBC mode of operation. [RFC2451]
CIPHER_CONFIG_CBC_AES_128
(0x3)
AES-128 (Advanced Encryption Standard) algorithm. CBC mode of operation. [RFC3602]
CIPHER_CONFIG_CBC_AES_192
(0x4)
AES-192 algorithm. CBC mode of operation. [RFC3602]
CIPHER_CONFIG_CBC_AES_256
(0x5)
AES-256 algorithm. CBC mode of operation. [RFC3602]
CIPHER_CONFIG_GCM_AES_128
(0x6)
AES-128 algorithm. GCM (Galois Counter Mode) mode of operation. [RFC4106]
CIPHER_CONFIG_GCM_AES_192
(0x7)
AES-192 algorithm. GCM (Galois Counter Mode) mode of operation. [RFC4106]
CIPHER_CONFIG_GCM_AES_256
(0x8)
AES-256 algorithm. GCM (Galois Counter Mode) mode of operation. [RFC4106]
dwAuthTransformConstant: Specifies the hash algorithm to be negotiated during QM SA negotiation [RFC4306]. This SHOULD have one of the following values.
-
Value
Meaning
AUTH_CONFIG_HMAC_MD5_96
(0x0)
Hash-based Message Authentication Code (HMAC) secret key authentication algorithm. MD5data integrity and data origin authentication algorithm. [RFC2403]
AUTH_CONFIG_HMAC_SHA_1_96
(0x1)
HMAC secret key authentication algorithm. SHA-1 (Secure Hash Algorithm) data integrity and data origin authentication algorithm. [RFC2404]
AUTH_CONFIG_HMAC_SHA_256_128
(0x2)
HMAC secret key authentication algorithm. SHA-256 data integrity and data origin authentication algorithm.
AUTH_CONFIG_GCM_AES_128
(0x3)
GCM (Galois Counter Mode) secret key authentication algorithm. AES(Advanced Encryption Standard) data integrity and data origin authentication algorithm, with 128-bit key.
AUTH_CONFIG_GCM_AES_192
(0x4)
GCM secret key authentication algorithm. AES data integrity and data origin authentication algorithm, with 192-bit key.
AUTH_CONFIG_GCM_AES_256
(0x5)
GCM secret key authentication algorithm. AES data integrity and data origin authentication algorithm, with 256-bit key.
dwPfsGroup: Specifies the Diffie-Hellman algorithm to be used for Quick Mode Perfect Forward Secrecy (PFS) [RFC4306]. This SHOULD have one of the following values.
-
Value
Meaning
PFS_NONE
(0x0)
Specifies no Quick Mode PFS.
PFS_1
(0x1)
Specifies Diffie- Hellman group 1.
PFS_2
(0x2)
Specifies Diffie- Hellman group 2.
PFS_2048
(0x3)
Specifies Diffie- Hellman group 2048.
PFS_ECP_256
(0x4)
Specifies Diffie- Hellman ECP group 256.
PFS_ECP_384
(0x5)
Specifies Diffie- Hellman ECP group 384.
PFS_MM
(0x6)
Use the same Diffie- Hellman as the main mode (MM) that contains this quick mode (QM).
PFS_24
(0x7)
Specifies Diffie- Hellman group 24.
dwDhGroup: Specifies the type of Diffie-Hellman group used for Internet Key Exchange (IKE) key generation during MM SA negotiation [RFC4306]. This SHOULD have one of the following values.
-
Value
Meaning
DH_GROUP_NONE
(0x0)
No key exchange algorithms defined.
DH_GROUP_1
(0x1)
Do key exchange with Diffie-Hellman group 1.
DH_GROUP_2
(0x2)
Do key exchange with Diffie-Hellman group 2.
DH_GROUP_14
(0x3)
Do key exchange with Diffie-Hellman group 14.
DH_GROUP_2048
(0x3)
Do key exchange with Diffie-Hellman group 14. This group was called Diffie-Hellman group 2048 when it was introduced. The name has been changed to match standard terminology.
DH_ECP_256
(0x4)
Do key exchange with elliptic curve Diffie-Hellman 256.
DH_ECP_384
(0x5)
Do key exchange with elliptic curve Diffie-Hellman 384.
DH_GROUP_24
(0x6)
Do key exchange with Diffie-Hellman group 24.