📄 sec2.h
字号:
unsigned long inBytes; /* multiple of 8 bytes */ unsigned char *inData; unsigned char *outData; /* output length = input length */ unsigned long outIvBytes; /* 0 or 8 bytes */ unsigned char *outIvData;} DES_CBC_CRYPT_REQ;#endif/* typedef the old name for legacy compatibility */#include "ipsec_request.h"typedef DES_CBC_CRYPT_REQ DES_LOADCTX_CRYPT_REQ;#define NUM_DES_CBC_DESC (4)#define DPD_DES_CBC_GROUP (0x2500)/* Single-DES CBC encrypt */#define DPD_SDES_CBC_CTX_ENCRYPT (DPD_DES_CBC_GROUP + 0)/* Single-DES CBC decrypt */#define DPD_SDES_CBC_CTX_DECRYPT (DPD_DES_CBC_GROUP + 1)/* Triple-DES CBC encrypt */#define DPD_TDES_CBC_CTX_ENCRYPT (DPD_DES_CBC_GROUP + 2)/* Triple-DES CBC decrypt */#define DPD_TDES_CBC_CTX_DECRYPT (DPD_DES_CBC_GROUP + 3)#if 0/* * DES_CRYPT_REQ - non-context DES cipher operation * These are ECB-only operations * */ typedef struct{ COMMON_REQ_PREAMBLE unsigned long keyBytes; /* 8, 16, or 24 bytes */ unsigned char *keyData; unsigned long inBytes; /* multiple of 8 bytes */ unsigned char *inData; unsigned char *outData; /* output length = input length */} DES_CRYPT_REQ;#endif#define NUM_DES_DESC (4)#define DPD_DES_ECB_GROUP (0x2600)#define DPD_SDES_ECB_ENCRYPT (DPD_DES_ECB_GROUP + 0)#define DPD_SDES_ECB_DECRYPT (DPD_DES_ECB_GROUP + 1)#define DPD_TDES_ECB_ENCRYPT (DPD_DES_ECB_GROUP + 2)#define DPD_TDES_ECB_DECRYPT (DPD_DES_ECB_GROUP + 3)#if 0/* * AESA_CRYPT_REQ - AES ciphering operations * */ typedef struct{ COMMON_REQ_PREAMBLE unsigned long keyBytes; /* 8, 16, or 24 bytes */ unsigned char *keyData; unsigned long inIvBytes; /* 0 or 16 bytes */ unsigned char *inIvData; unsigned long inBytes; /* multiple of 8 bytes */ unsigned char *inData; unsigned char *outData; /* output length = input length */ unsigned long outCtxBytes; /* 0 or 16 bytes */ unsigned char *outCtxData;} AESA_CRYPT_REQ;#endif#define NUM_AESA_CRYPT_DESC (8)#define DPD_AESA_CRYPT_GROUP (0x6000)#define DPD_AESA_CBC_ENCRYPT_CRYPT (DPD_AESA_CRYPT_GROUP + 0)#define DPD_AESA_CBC_DECRYPT_CRYPT (DPD_AESA_CRYPT_GROUP + 1)#define DPD_AESA_CBC_DECRYPT_CRYPT_RDK (DPD_AESA_CRYPT_GROUP + 2)#define DPD_AESA_ECB_ENCRYPT_CRYPT (DPD_AESA_CRYPT_GROUP + 3)#define DPD_AESA_ECB_DECRYPT_CRYPT (DPD_AESA_CRYPT_GROUP + 4)#define DPD_AESA_ECB_DECRYPT_CRYPT_RDK (DPD_AESA_CRYPT_GROUP + 5)#define DPD_AESA_CTR_CRYPT (DPD_AESA_CRYPT_GROUP + 6)#define DPD_AESA_CTR_HMAC (DPD_AESA_CRYPT_GROUP + 7)#if 0/* * KEA_CRYPT_REQ - Kasumi cipher operations * Not present in 2.0 * */typedef struct{ COMMON_REQ_PREAMBLE unsigned long ivBytes; /* 0 or 8 bytes */ unsigned char *ivData; unsigned long keyBytes; /* 8, 16, or 24 bytes */ unsigned char *keyData; unsigned long inBytes; /* multiple of 8 bytes */ unsigned char *inData; unsigned char *outData; /* output length = input length */} KEA_CRYPT_REQ;#endif#define NUM_KEA_CRYPT_DESC (4)#define DPD_KEA_CRYPT_GROUP (0xA000)/* Kasumi request types */#define DPD_KEA_f8_UPLINK_CRYPT (DPD_KEA_CRYPT_GROUP + 0)#define DPD_KEA_f8_DOWNLINK_CRYPT (DPD_KEA_CRYPT_GROUP + 1)#define DPD_KEA_f9_UPLINK_CRYPT (DPD_KEA_CRYPT_GROUP + 2)#define DPD_KEA_f9_DOWNLINK_CRYPT (DPD_KEA_CRYPT_GROUP + 3)#if 0/* * ARC4_LOADCTX_CRYPT_REQ - ARC4 cipher operation with context load * */typedef struct{ COMMON_REQ_PREAMBLE unsigned long inCtxBytes; /* 257 bytes */ unsigned char *inCtxData; unsigned long inBytes; unsigned char *inData; unsigned char *outData; /* output length = input length */ unsigned long outCtxBytes; /* 257 bytes */ unsigned char *outCtxData;} ARC4_LOADCTX_CRYPT_REQ;#endif#define NUM_RC4_LOADCTX_UNLOADCTX_DESC (1)#define DPD_RC4_LDCTX_CRYPT_ULCTX_GROUP (0x3400)#define DPD_RC4_LDCTX_CRYPT_ULCTX (DPD_RC4_LDCTX_CRYPT_ULCTX_GROUP + 0)#if 0/* * ARC4_LOADKEY_CRYPT_UNLOADCTX_REQ - ARC4 operation with key load * and context save * */typedef struct{ COMMON_REQ_PREAMBLE unsigned long keyBytes; unsigned char *keyData; unsigned long inBytes; unsigned char *inData; unsigned char *outData; /* output length = input length */ unsigned long outCtxBytes; /* 257 bytes */ unsigned char *outCtxData;} ARC4_LOADKEY_CRYPT_UNLOADCTX_REQ;#endif#define NUM_RC4_LOADKEY_UNLOADCTX_DESC (1)#define DPD_RC4_LDKEY_CRYPT_ULCTX_GROUP (0x3500)#define DPD_RC4_LDKEY_CRYPT_ULCTX (DPD_RC4_LDKEY_CRYPT_ULCTX_GROUP + 0)#if 0/* * HASH_REQ - combined SHA/MD5 hash operations with context loads * and saves * */typedef struct{ COMMON_REQ_PREAMBLE unsigned long ctxBytes; unsigned char *ctxData; unsigned long inBytes; unsigned char *inData; unsigned long outBytes; /* length is fixed by algorithm */ unsigned char *outData;} HASH_REQ;#endif#define NUM_MDHA_DESC (9)#define DPD_HASH_LDCTX_HASH_ULCTX_GROUP (0x4400)#define DPD_SHA256_LDCTX_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 0)#define DPD_MD5_LDCTX_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 1)#define DPD_SHA_LDCTX_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 2)#define DPD_SHA256_LDCTX_IDGS_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 3)#define DPD_MD5_LDCTX_IDGS_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 4)#define DPD_SHA_LDCTX_IDGS_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 5)#define DPD_SHA256_CONT_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 6)#define DPD_MD5_CONT_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 7)#define DPD_SHA_CONT_HASH_ULCTX (DPD_HASH_LDCTX_HASH_ULCTX_GROUP + 8)#define NUM_MDHA_PAD_DESC (9)#define DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP (0x4500)#define DPD_SHA256_LDCTX_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 0)#define DPD_MD5_LDCTX_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 1)#define DPD_SHA_LDCTX_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 2)#define DPD_SHA256_LDCTX_IDGS_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 3)#define DPD_MD5_LDCTX_IDGS_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 4)#define DPD_SHA_LDCTX_IDGS_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 5)#define DPD_SHA256_CONT_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 6)#define DPD_MD5_CONT_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 7)#define DPD_SHA_CONT_HASH_PAD_ULCTX (DPD_HASH_LDCTX_HASH_PAD_ULCTX_GROUP + 8)/* * HMAC_PAD_REQ - Hash-message authentication code * */#if 0typedef struct{ COMMON_REQ_PREAMBLE unsigned long keyBytes; unsigned char *keyData; unsigned long inBytes; unsigned char *inData; unsigned long outBytes; /* length is fixed by algorithm */ unsigned char *outData;} HMAC_PAD_REQ;#endif#define NUM_HMAC_PAD_DESC (6)#define DPD_HASH_LDCTX_HMAC_ULCTX_GROUP (0x4A00)#define DPD_SHA256_LDCTX_HMAC_ULCTX (DPD_HASH_LDCTX_HMAC_ULCTX_GROUP + 0)#define DPD_MD5_LDCTX_HMAC_ULCTX (DPD_HASH_LDCTX_HMAC_ULCTX_GROUP + 1)#define DPD_SHA_LDCTX_HMAC_ULCTX (DPD_HASH_LDCTX_HMAC_ULCTX_GROUP + 2)#define DPD_SHA256_LDCTX_HMAC_PAD_ULCTX (DPD_HASH_LDCTX_HMAC_ULCTX_GROUP + 3)#define DPD_MD5_LDCTX_HMAC_PAD_ULCTX (DPD_HASH_LDCTX_HMAC_ULCTX_GROUP + 4)#define DPD_SHA_LDCTX_HMAC_PAD_ULCTX (DPD_HASH_LDCTX_HMAC_ULCTX_GROUP + 5)#if 0/* * MOD_EXP_REQ - integer public key (modular expo) operations * */ typedef struct{ COMMON_REQ_PREAMBLE unsigned long aDataBytes; unsigned char *aData; unsigned long expBytes; unsigned char *expData; unsigned long modBytes; unsigned char *modData; unsigned long outBytes; unsigned char *outData;} MOD_EXP_REQ;#endif#define NUM_MM_EXP_DESC (1)#define DPD_MM_LDCTX_EXP_ULCTX_GROUP (0x5100)#define DPD_MM_LDCTX_EXP_ULCTX (DPD_MM_LDCTX_EXP_ULCTX_GROUP + 0)#if 0/* * MOD_SS_EXP_REQ - single-stage RSA operations * */typedef struct{ COMMON_REQ_PREAMBLE unsigned long expBytes; unsigned char *expData; unsigned long modBytes; unsigned char *modData; unsigned long aDataBytes; unsigned char *aData; unsigned long bDataBytes; unsigned char *bData;} MOD_SS_EXP_REQ;#endif#define NUM_MM_SS_EXP_DESC (1)#define DPD_MM_SS_EXP_GROUP (0x5B00)#define DPD_MM_SS_RSA_EXP (DPD_MM_SS_EXP_GROUP + 0)#if 0/* * MOD_R2MODN_REQ - Modular R2 operations * */typedef struct{ COMMON_REQ_PREAMBLE unsigned long modBytes; unsigned char *modData; unsigned long outBytes; unsigned char *outData;} MOD_R2MODN_REQ;#endif#define NUM_MOD_R2MODN_DESC (1)#define DPD_MM_LDCTX_R2MODN_ULCTX_GROUP (0x5200)#define DPD_MM_LDCTX_R2MODN_ULCTX (DPD_MM_LDCTX_R2MODN_ULCTX_GROUP + 0)#if 0/* * MOD_RRMODP_REQ - montgomery precomputation operations * */typedef struct{ COMMON_REQ_PREAMBLE unsigned long nBytes; unsigned long pBytes; unsigned char *pData; unsigned long outBytes; unsigned char *outData;} MOD_RRMODP_REQ;#endif#define NUM_MM_RRMODP_DESC (1)#define DPD_MM_LDCTX_RRMODP_ULCTX_GROUP (0x5300)#define DPD_MM_LDCTX_RRMODP_ULCTX (DPD_MM_LDCTX_RRMODP_ULCTX_GROUP + 0)#if 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -