⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sec2.h

📁 freescale ppc sec2加解密单元驱动
💻 H
📖 第 1 页 / 共 4 页
字号:
/* * MOD_2OP_REQ * */typedef struct{    COMMON_REQ_PREAMBLE    unsigned long  bDataBytes;    unsigned char *bData;    unsigned long  aDataBytes;    unsigned char *aData;    unsigned long  modBytes;    unsigned char *modData;    unsigned long  outBytes;    unsigned char *outData;} MOD_2OP_REQ;#endif#define NUM_MOD_2OP_DESC (52)#define DPD_MOD_LDCTX_2OP_ULCTX_GROUP (0x5400)#define DPD_MOD_LDCTX_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 0)#define DPD_MOD_LDCTX_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 1)#define DPD_MOD_LDCTX_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 2)#define DPD_MOD_LDCTX_SUB_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 3)/* equivalents for obsolete names */#define DPD_MM_LDCTX_MUL1_ULCTX DPD_MOD_LDCTX_MUL1_ULCTX#define DPD_MM_LDCTX_MUL2_ULCTX DPD_MOD_LDCTX_MUL2_ULCTX#define DPD_MM_LDCTX_ADD_ULCTX  DPD_MOD_LDCTX_ADD_ULCTX#define DPD_MM_LDCTX_SUB_ULCTX  DPD_MOD_LDCTX_SUB_ULCTX/* These constants will likely be removed in a future release in favor *//* of a different internal register allocation scheme                  */#define DPD_POLY_LDCTX_A0_B0_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 4)#define DPD_POLY_LDCTX_A0_B0_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 5)#define DPD_POLY_LDCTX_A0_B0_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 6)#define DPD_POLY_LDCTX_A1_B0_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 7)#define DPD_POLY_LDCTX_A1_B0_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 8)#define DPD_POLY_LDCTX_A1_B0_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 9)#define DPD_POLY_LDCTX_A2_B0_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 10)#define DPD_POLY_LDCTX_A2_B0_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 11)#define DPD_POLY_LDCTX_A2_B0_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 12)#define DPD_POLY_LDCTX_A3_B0_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 13)#define DPD_POLY_LDCTX_A3_B0_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 14)#define DPD_POLY_LDCTX_A3_B0_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 15)#define DPD_POLY_LDCTX_A0_B1_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 16)#define DPD_POLY_LDCTX_A0_B1_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 17)#define DPD_POLY_LDCTX_A0_B1_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 18)#define DPD_POLY_LDCTX_A1_B1_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 19)#define DPD_POLY_LDCTX_A1_B1_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 20)#define DPD_POLY_LDCTX_A1_B1_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 21)#define DPD_POLY_LDCTX_A2_B1_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 22)#define DPD_POLY_LDCTX_A2_B1_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 23)#define DPD_POLY_LDCTX_A2_B1_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 24)#define DPD_POLY_LDCTX_A3_B1_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 25)#define DPD_POLY_LDCTX_A3_B1_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 26)#define DPD_POLY_LDCTX_A3_B1_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 27)#define DPD_POLY_LDCTX_A0_B2_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 28)#define DPD_POLY_LDCTX_A0_B2_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 29)#define DPD_POLY_LDCTX_A0_B2_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 30)#define DPD_POLY_LDCTX_A1_B2_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 31)#define DPD_POLY_LDCTX_A1_B2_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 32)#define DPD_POLY_LDCTX_A1_B2_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 33)#define DPD_POLY_LDCTX_A2_B2_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 34)#define DPD_POLY_LDCTX_A2_B2_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 35)#define DPD_POLY_LDCTX_A2_B2_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 36)#define DPD_POLY_LDCTX_A3_B2_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 37)#define DPD_POLY_LDCTX_A3_B2_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 38)#define DPD_POLY_LDCTX_A3_B2_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 39)#define DPD_POLY_LDCTX_A0_B3_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 40)#define DPD_POLY_LDCTX_A0_B3_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 41)#define DPD_POLY_LDCTX_A0_B3_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 42)#define DPD_POLY_LDCTX_A1_B3_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 43)#define DPD_POLY_LDCTX_A1_B3_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 44)#define DPD_POLY_LDCTX_A1_B3_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 45)#define DPD_POLY_LDCTX_A2_B3_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 46)#define DPD_POLY_LDCTX_A2_B3_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 47)#define DPD_POLY_LDCTX_A2_B3_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 48)#define DPD_POLY_LDCTX_A3_B3_MUL1_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 49)#define DPD_POLY_LDCTX_A3_B3_MUL2_ULCTX (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 50)#define DPD_POLY_LDCTX_A3_B3_ADD_ULCTX  (DPD_MOD_LDCTX_2OP_ULCTX_GROUP + 51)#if 0/*  * ECC_POINT_REQ - elliptic curve point processing * */typedef struct{    COMMON_REQ_PREAMBLE    unsigned long  nDataBytes;    unsigned char *nData;    unsigned long  eDataBytes;    unsigned char *eData;    unsigned long  buildDataBytes;    unsigned char *buildData;    unsigned long  b1DataBytes;    unsigned char *b1Data;    unsigned long  b2DataBytes;    unsigned char *b2Data;    unsigned long  b3DataBytes;    unsigned char *b3Data;} ECC_POINT_REQ;#endif#define NUM_EC_POINT_DESC (8)#define DPD_EC_LDCTX_kP_ULCTX_GROUP (0x5800)#define DPD_EC_FP_AFF_PT_MULT          (DPD_EC_LDCTX_kP_ULCTX_GROUP + 0)#define DPD_EC_FP_PROJ_PT_MULT         (DPD_EC_LDCTX_kP_ULCTX_GROUP + 1)#define DPD_EC_F2M_AFF_PT_MULT         (DPD_EC_LDCTX_kP_ULCTX_GROUP + 2)#define DPD_EC_F2M_PROJ_PT_MULT        (DPD_EC_LDCTX_kP_ULCTX_GROUP + 3)#define DPD_EC_FP_LDCTX_ADD_ULCTX      (DPD_EC_LDCTX_kP_ULCTX_GROUP + 4)#define DPD_EC_FP_LDCTX_DOUBLE_ULCTX   (DPD_EC_LDCTX_kP_ULCTX_GROUP + 5)#define DPD_EC_F2M_LDCTX_ADD_ULCTX     (DPD_EC_LDCTX_kP_ULCTX_GROUP + 6)#define DPD_EC_F2M_LDCTX_DOUBLE_ULCTX  (DPD_EC_LDCTX_kP_ULCTX_GROUP + 7)/* legacy name definitions */#define DPD_EC_FP_AFF_LDCTX_kP_ULCTX   DPD_EC_FP_AFF_PT_MULT#define DPD_EC_FP_PROJ_LDCTX_kP_ULCTX  DPD_EC_FP_PROJ_PT_MULT#define DPD_EC_F2M_AFF_LDCTX_kP_ULCTX  DPD_EC_F2M_AFF_PT_MULT#define DPD_EC_F2M_PROJ_LDCTX_kP_ULCTX DPD_EC_F2M_PROJ_PT_MULT/* * ECC_2OP_REQ - F2M elliptic curve operations * */#if 0typedef struct{    COMMON_REQ_PREAMBLE    unsigned long  bDataBytes;    unsigned char *bData;    unsigned long  aDataBytes;    unsigned char *aData;    unsigned long  modBytes;    unsigned char *modData;    unsigned long  outBytes;    unsigned char *outData;} ECC_2OP_REQ;#endif#define NUM_EC_2OP_DESC (1)#define DPD_EC_2OP_GROUP (0x5900)#define DPD_EC_F2M_LDCTX_MUL1_ULCTX (DPD_EC_2OP_GROUP + 0)/* * ECC_SPKBUILD_REQ - elliptic curve request builder * */#if 0typedef struct{    COMMON_REQ_PREAMBLE    unsigned long  a0DataBytes;    unsigned char *a0Data;    unsigned long  a1DataBytes;    unsigned char *a1Data;    unsigned long  a2DataBytes;    unsigned char *a2Data;    unsigned long  a3DataBytes;    unsigned char *a3Data;    unsigned long  b0DataBytes;    unsigned char *b0Data;    unsigned long  b1DataBytes;    unsigned char *b1Data;    unsigned long  buildDataBytes;    unsigned char *buildData;} ECC_SPKBUILD_REQ;#endif#define NUM_EC_SPKBUILD_DESC (1)#define DPD_EC_SPKBUILD_GROUP (0x5c00)#define DPD_EC_SPKBUILD (DPD_EC_SPKBUILD_GROUP + 0)/* * ECC_PTADD_DBL_REQ - elliptic curve point add */#if 0typedef struct{    COMMON_REQ_PREAMBLE    unsigned long  modBytes;    unsigned char *modData;    unsigned long  buildDataBytes;    unsigned char *buildData;    unsigned long  b2InDataBytes;    unsigned char *b2InData;    unsigned long  b3InDataBytes;    unsigned char *b3InData;    unsigned long  b1DataBytes;    unsigned char *b1Data;    unsigned long  b2DataBytes;    unsigned char *b2Data;    unsigned long  b3DataBytes;    unsigned char *b3Data;} ECC_PTADD_DBL_REQ;#endif#define NUM_EC_PTADD_DBL_DESC (4)#define DPD_EC_PTADD_DBL_GROUP (0x5d00)#define DPD_EC_FPADD         (DPD_EC_PTADD_DBL_GROUP + 0)#define DPD_EC_FPDBL         (DPD_EC_PTADD_DBL_GROUP + 0)#define DPD_EC_F2MADD        (DPD_EC_PTADD_DBL_GROUP + 0)#define DPD_EC_F2MDBL        (DPD_EC_PTADD_DBL_GROUP + 0)/* * IPSEC_CBC_REQ - common IPSec/DES-CBC compound request operations * */#if 0typedef struct{    COMMON_REQ_PREAMBLE    unsigned long  hashKeyBytes;    unsigned char *hashKeyData;    unsigned long  cryptKeyBytes;    unsigned char *cryptKeyData;    unsigned long  cryptCtxInBytes;    unsigned char *cryptCtxInData;    unsigned long  hashInDataBytes;    unsigned char *hashInData;    unsigned long  inDataBytes;    unsigned char *inData;    unsigned char *cryptDataOut;    unsigned long  hashDataOutBytes;    unsigned char *hashDataOut;} IPSEC_CBC_REQ;#endif#define NUM_IPSEC_CBC_DESC (24)#define DPD_IPSEC_CBC_GROUP (0x7000)#define DPD_IPSEC_CBC_SDES_ENCRYPT_MD5_PAD    (DPD_IPSEC_CBC_GROUP + 0)#define DPD_IPSEC_CBC_SDES_ENCRYPT_SHA_PAD    (DPD_IPSEC_CBC_GROUP + 1)#define DPD_IPSEC_CBC_SDES_ENCRYPT_SHA256_PAD (DPD_IPSEC_CBC_GROUP + 2)#define DPD_IPSEC_CBC_SDES_DECRYPT_MD5_PAD    (DPD_IPSEC_CBC_GROUP + 3)#define DPD_IPSEC_CBC_SDES_DECRYPT_SHA_PAD    (DPD_IPSEC_CBC_GROUP + 4)#define DPD_IPSEC_CBC_SDES_DECRYPT_SHA256_PAD (DPD_IPSEC_CBC_GROUP + 5)#define DPD_IPSEC_CBC_TDES_ENCRYPT_MD5_PAD    (DPD_IPSEC_CBC_GROUP + 6)#define DPD_IPSEC_CBC_TDES_ENCRYPT_SHA_PAD    (DPD_IPSEC_CBC_GROUP + 7)#define DPD_IPSEC_CBC_TDES_ENCRYPT_SHA256_PAD (DPD_IPSEC_CBC_GROUP + 8)#define DPD_IPSEC_CBC_TDES_DECRYPT_MD5_PAD    (DPD_IPSEC_CBC_GROUP + 9)#define DPD_IPSEC_CBC_TDES_DECRYPT_SHA_PAD    (DPD_IPSEC_CBC_GROUP + 10)#define DPD_IPSEC_CBC_TDES_DECRYPT_SHA256_PAD (DPD_IPSEC_CBC_GROUP + 11)/* All "standard" legacy request types will autopad, no reason *//* to do otherwise                                             */#define DPD_IPSEC_CBC_SDES_ENCRYPT_MD5    DPD_IPSEC_CBC_SDES_ENCRYPT_MD5_PAD#define DPD_IPSEC_CBC_SDES_ENCRYPT_SHA    DPD_IPSEC_CBC_SDES_ENCRYPT_SHA_PAD#define DPD_IPSEC_CBC_SDES_ENCRYPT_SHA256 DPD_IPSEC_CBC_SDES_ENCRYPT_SHA256_PAD#define DPD_IPSEC_CBC_SDES_DECRYPT_MD5    DPD_IPSEC_CBC_SDES_DECRYPT_MD5_PAD#define DPD_IPSEC_CBC_SDES_DECRYPT_SHA    DPD_IPSEC_CBC_SDES_DECRYPT_SHA_PAD#define DPD_IPSEC_CBC_SDES_DECRYPT_SHA256 DPD_IPSEC_CBC_SDES_DECRYPT_SHA256_PAD#define DPD_IPSEC_CBC_TDES_ENCRYPT_MD5    DPD_IPSEC_CBC_TDES_ENCRYPT_MD5_PAD#define DPD_IPSEC_CBC_TDES_ENCRYPT_SHA    DPD_IPSEC_CBC_TDES_ENCRYPT_SHA_PAD#define DPD_IPSEC_CBC_TDES_ENCRYPT_SHA256 DPD_IPSEC_CBC_TDES_ENCRYPT_SHA256_PAD#define DPD_IPSEC_CBC_TDES_DECRYPT_MD5    DPD_IPSEC_CBC_TDES_DECRYPT_MD5_PAD#define DPD_IPSEC_CBC_TDES_DECRYPT_SHA    DPD_IPSEC_CBC_TDES_DECRYPT_SHA_PAD#define DPD_IPSEC_CBC_TDES_DECRYPT_SHA256 DPD_IPSEC_CBC_TDES_DECRYPT_SHA256_PAD/* * IPSEC_ECB_REQ - common IPSec/DES-ECB compound request operations * */#if 0typedef struct{    COMMON_REQ_PREAMBLE    unsigned long  hashKeyBytes;    unsigned char *hashKeyData;    unsigned long  cryptKeyBytes;    unsigned char *cryptKeyData;    unsigned long  hashInDataBytes;    unsigned char *hashInData;    unsigned long  inDataBytes;    unsigned char *inData;    unsigned long  hashDataOutBytes;    unsigned char *hashDataOut;    unsigned char *cryptDataOut;} IPSEC_ECB_REQ; #endif#define NUM_IPSEC_ECB_DESC (24)#define DPD_IPSEC_ECB_GROUP (0x7100)#define DPD_IPSEC_ECB_SDES_ENCRYPT_MD5_PAD    (DPD_IPSEC_ECB_GROUP + 0)#define DPD_IPSEC_ECB_SDES_ENCRYPT_SHA_PAD    (DPD_IPSEC_ECB_GROUP + 1)#define DPD_IPSEC_ECB_SDES_ENCRYPT_SHA256_PAD (DPD_IPSEC_ECB_GROUP + 2)#define DPD_IPSEC_ECB_SDES_DECRYPT_MD5_PAD    (DPD_IPSEC_ECB_GROUP + 3)#define DPD_IPSEC_ECB_SDES_DECRYPT_SHA_PAD    (DPD_IPSEC_ECB_GROUP + 4)#define DPD_IPSEC_ECB_SDES_DECRYPT_SHA256_PAD (DPD_IPSEC_ECB_GROUP + 5)#define DPD_IPSEC_ECB_TDES_ENCRYPT_MD5_PAD    (DPD_IPSEC_ECB_GROUP + 6)#define DPD_IPSEC_ECB_TDES_ENCRYPT_SHA_PAD    (DPD_IPSEC_ECB_GROUP + 7)#define DPD_IPSEC_ECB_TDES_ENCRYPT_SHA256_PAD (DPD_IPSEC_ECB_GROUP + 8)#define DPD_IPSEC_ECB_TDES_DECRYPT_MD5_PAD    (DPD_IPSEC_ECB_GROUP + 9)#define DPD_IPSEC_ECB_TDES_DECRYPT_SHA_PAD    (DPD_IPSEC_ECB_GROUP + 10)#define DPD_IPSEC_ECB_TDES_DECRYPT_SHA256_PAD (DPD_IPSEC_ECB_GROUP + 11)#define DPD_IPSEC_ECB_SDES_ENCRYPT_MD5    DPD_IPSEC_ECB_SDES_ENCRYPT_MD5_PAD#define DPD_IPSEC_ECB_SDES_ENCRYPT_SHA    DPD_IPSEC_ECB_SDES_ENCRYPT_SHA_PAD#define DPD_IPSEC_ECB_SDES_ENCRYPT_SHA256 DPD_IPSEC_ECB_SDES_ENCRYPT_SHA256_PAD#define DPD_IPSEC_ECB_SDES_DECRYPT_MD5    DPD_IPSEC_ECB_SDES_DECRYPT_MD5_PAD#define DPD_IPSEC_ECB_SDES_DECRYPT_SHA    DPD_IPSEC_ECB_SDES_DECRYPT_SHA_PAD#define DPD_IPSEC_ECB_SDES_DECRYPT_SHA256 DPD_IPSEC_ECB_SDES_DECRYPT_SHA256_PAD#define DPD_IPSEC_ECB_TDES_ENCRYPT_MD5    DPD_IPSEC_ECB_TDES_ENCRYPT_MD5_PAD#define DPD_IPSEC_ECB_TDES_ENCRYPT_SHA    DPD_IPSEC_ECB_TDES_ENCRYPT_SHA_PAD#define DPD_IPSEC_ECB_TDES_ENCRYPT_SHA256 DPD_IPSEC_ECB_TDES_ENCRYPT_SHA256_PAD#define DPD_IPSEC_ECB_TDES_DECRYPT_MD5    DPD_IPSEC_ECB_TDES_DECRYPT_MD5_PAD#define DPD_IPSEC_ECB_TDES_DECRYPT_SHA    DPD_IPSEC_ECB_TDES_DECRYPT_SHA_PAD#define DPD_IPSEC_ECB_TDES_DECRYPT_SHA256 DPD_IPSEC_ECB_TDES_DECRYPT_SHA256_PAD/* * IPSEC_AES_CBC_REQ - common IPSec/AES-CBC compound request operations * */#if 0typedef struct{    COMMON_REQ_PREAMBLE    unsigned long  hashKeyBytes;    unsigned char *hashKeyData;    unsigned long  cryptKeyBytes;    unsigned char *cryptKeyData;    unsigned long  cryptCtxInBytes;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -