?? sjy22.h
字號:
/* $Id: sjy22.h,v 1.1 2002/02/06 02:17:11 linfusheng Exp $
*/
#ifndef SJY22_H
#define SJY22_H
#define F206_RAM_SIZE 4064 // F206 BCA分組長度
#define cmdLCD_RESET 0xe0 //
#define cmdLCD_HORIZONTAL 0xe1 //
#define cmdLCD_VERTICAL 0xe2 //
#define cmdLCD_UPDATA 0xe3 //
#define cmdLCD_CPMEMORY 0xe4 //
/* function code */
#define cmdINIT_CARD 0x00 //保密卡初始化函數dspResetCard()
#define cmdGET_CARD 0x01 //獲得保密卡的一般性信息(卡序號)
#define cmdGET_LOG 0x02 //獲得保密卡的審計日志信息
#define cmdGET_LOGNUM 0x03 //獲得保密卡的審計日志信息
#define cmdCLR_LOG 0x04 //清除保密卡的審計日志信息
#define cmdSET_TIME 0x05 //設置保密卡內部時鐘
#define cmdGET_TIME 0x06 //獲得保密卡內部時鐘
#define cmdHAV_ICHEAD 0x2a //是否存在IC卡
#define cmdSHK_IC 0x2b //建立IC卡與讀寫器的握手通道
#define cmdWRT_ICHEAD 0x20 //制卡時寫入IC卡的頭部信息
#define cmdWRT_ICKK 0x21 //寫KK到密鑰管理卡 dspWriteKKToKeyCard()
#define cmdWRT_ICMKT 0x22 //寫MKT到密鑰管理卡 dspWriteMKTToKeyCard()
#define cmdWRT_ICUSR 0x23 //寫用戶信息到操作員卡
#define cmdCLR_IC 0x24 //清除IC卡中所有內容 dspClearICCard()
#define cmdGET_ICHEAD 0x25 //獲得IC卡頭部信息
#define cmdGET_USRNUM 0x26 //取保密卡內有效用戶數目
#define cmdGET_USRPIN 0x27 //取保密卡內某個用戶信息
#define cmdAUT_USRPIN 0x28 //驗證身份卡的身份是否合格
#define cmdCLR_USRPIN 0x29 //清除保密卡內某個用戶信息
#define cmdINIT_KP1 0x40 //初始化主密鑰 dspInitKP1()
#define cmdWRT_KK 0x41 //寫入KK算法 dspWriteKKToCard
#define cmdWRT_MKT 0x42 //寫入MKT算法 dspWriteMKTToCard()
#define cmdCHG_KK 0x43 //通過SMC自動更新KK
#define cmdREC_MKT 0x44 //從SMC接收新的端端密鑰矩陣
#define cmdCHG_MKT 0x45 //啟用新的端端密鑰矩陣dspEnabledNewMKT()
#define cmdSTOP_CARD 0x46 //通過SMC自動銷毀保密卡dspStopSecurityCard()
#define cmdENC_INIT 0x60 //加解密算法初始化(密鑰在卡內)
#define cmdENC_INITSTR 0x61 //流密碼算法加密初始化(密鑰在卡內)
#define cmdDEC_INITSTR 0x67 //流密碼算法解密初始化(密鑰在卡內)
#define cmdENC_INITKEY 0x62 //加解密算法初始化(密鑰由應用程序送入)
#define cmdENC_INITKP 0x69 //加解密算法初始化(使用主密鑰)
#define cmdENC_INITKK 0x6a //加解密算法初始化(使用密鑰加密密鑰)
#define cmdBCA_UPD 0x63 //分組128加解密算法 dspBCAUpdate()
#define cmdHASH_UPD 0x64 //Hash認證碼計算函數dspHashUpdate()
#define cmdSTR_UPD 0x66 //流密碼解密算法 dspStreamUpdate()
#define cmdBCA_FIN 0x68 //分組128加解密結束算法 dspBCAFinal()
#define cmdHASH_FIN 0x65 //獲得最終認證碼 dspHashFinal()
#define cmdSTR_FIN 0x69 //流密碼解結束算法 dspStreamFinal()
#define cmdGEN_RND 0x80 //生成任意長的隨機數bscGenerateRandom()
#define cmdGEN_RNDBCA 0x81 //生成任意長的高質量的隨機數
#define BCAIIE_CMD 0x01 // 128位BCAII加密
#define BCAIID_CMD 0x08 // 128位BCAII解密
#define HASH_CMD 0x45 // 128位HASH認證
#define STREAM_CMD 0x00 // 128流密碼算法
#define BCA64E_CMD 0x07 // 64位BCAII加密
#define BCA64D_CMD 0x03 // 64位BCAII解密
#define HASH64_CMD 0x47 // 64位HASH認證
#define STREAM64_CMD 0x00 // 64流密碼算法
#define BCAIIIE_CMD 0xa0 // 128位BCAIII加密
#define BCAIIID_CMD 0xa1 // 128位BCAIII解密
#define KSLENGTH 16 /*會話密鑰長度 */
#define MACLENGTH 16 /*會話密鑰長度 */
#define CARD_READY 6
#define CARD_BAD 4
#define CARD_BUSY 8
#define CARD_NUM 2 /* card number is 2 */
/* We sugguest that, the inputlen is align 8 , and key is 128 bit length */
extern int SJY22_encrypt(unsigned char *input,int inputlen,unsigned char *output,unsigned char *keybyte,int keylen,unsigned char *iv,int ivlen);
extern int SJY22_decrypt(unsigned char *input,int inputlen,unsigned char *output,unsigned char *keybyte,int keylen,unsigned char *iv,int ivlen);
extern void SJY22_hash_Init (void *ctx);
extern void SJY22_hash_Update(void *ctx, unsigned char *input, unsigned int inputlen);
extern void SJY22_hash_Final(unsigned char output[16], void *ctx);
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -