📄 csm.h
字号:
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include "mytools.h"
#include "msgsys.h"
#include "key_stru.h"
#define NORMAL 0
//#define CHANGE 0x01
#define CHANGE1 0x02
#define FREE 0
#define BUSY 1
#define MAX_OLD_KEY_NUM 100
#define MAX_NEW_KEY_NUM 100
#define MAC_ERROR 1
#define CSM_ERROR 2
#define S3_ERROR 3
#define KEYDB_ERROR 4
#define CTP_ERROR 5
#define KEY_CHANGE 6
#define COMM_ERROR 7
#define SYS_ERROR 8
#define CTA_ERROR 9
#define FMT_ERROR 10
#define SUCC 0
#define FAIL -1
#define KK 0
#define S_KK 1
struct KEY_F {
char key [33];
char p; /* 密钥效验 */
char idk1[17]; /* 密钥识别符 */
char idk2[17]; /* 密钥加密密钥的识别符 */
};
struct CSM_Field {
char mcl[4]; /* 报文类型 */
char rcv_bank[17]; /* 接收者 */
char rcv_host[5];
char org_bank[17]; /* 发起者 */
char org_host[5];
char idd[17]; /* 即将被终止的密钥的标志符 */
char ida[17]; /* 用于认证的密钥的标志符 */
char idu[17]; /* 远方接收者的身份 */
char idc[17]; /* CKD/CKT的标志符 */
char svr[10]; /* 服务请求 */
char nos; /* 公证识别符 */
struct KEY_F kk; /* 密钥加密密钥对 */
struct KEY_F kku; /* 公证密钥加密密钥对 */
struct KEY_F zak; /* 认证密钥 */
struct KEY_F zpk; /* 数据密钥 */
struct KEY_F zpku; /* 公证数据加密密钥 */
char iv[17]; /* 初始化向量 */
char edk[13]; /* 密码有效日期 */
char ctb[15]; /* 计数器B */
char ctr[15]; /* 计数器R */
char ctp[15]; /* 计数器P */
char cta[15]; /* 计数器A */
char erf[17]; /* 错误域 */
char mac[11]; /* 报文认证码 */
char edc[11]; /* 错误检测码 */
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -