SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx

上传人:b****1 文档编号:2953449 上传时间:2023-05-05 格式:DOCX 页数:47 大小:27.04KB
下载 相关 举报
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第1页
第1页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第2页
第2页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第3页
第3页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第4页
第4页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第5页
第5页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第6页
第6页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第7页
第7页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第8页
第8页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第9页
第9页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第10页
第10页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第11页
第11页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第12页
第12页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第13页
第13页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第14页
第14页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第15页
第15页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第16页
第16页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第17页
第17页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第18页
第18页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第19页
第19页 / 共47页
SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx_第20页
第20页 / 共47页
亲,该文档总共47页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx

《SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx》由会员分享,可在线阅读,更多相关《SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx(47页珍藏版)》请在冰点文库上搜索。

SJL05金融数据加密机程序员手册WT363MA02EWV10309.docx

SJL05金融数据加密机程序员手册WT363MA02EWV10309

1.1BMK到LMK的转加密<0xD002>

说明:

将用BMK加密的工作密钥WK,转为用LMK加密。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x02

BMK长度标志

1

H

1:

单倍长度

2:

双倍长度

3:

三倍长度

BMK

N

H

N=8/16/24(LMK加密的密文)

工作密钥WK长度

1

H

8/16/24

工作密钥WK

N

H

N=8/16/24(BMK加密的密文)

输出域

长度

类型

备注

应答码

1

A

“A”

工作密钥WK长度

1

H

8/16/24

工作密钥WK

N

H

N=8/16/24(LMK加密的密文)

校验码

8

H

WK的校验码

应答码

1

A

“E”

错误码

1

H

计算过程:

1、读取加密机LMK。

2、用LMK对输入BMK解密,得到BMK明文。

3、用BMK明文对输入WK解密,得到WK明文。

4、用LMK对WK明文加密。

1.2LMK到BMK的转加密<0xD004>

说明:

将用LMK加密的工作密钥WK,转为用BMK加密。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x04

BMK长度标志

1

H

1:

单倍长度

2:

双倍长度

3:

三倍长度

BMK

N

H

N=8/16/24(LMK加密的密文)

工作密钥WK长度

1

H

8/16/24

工作密钥WK

N

H

N=8/16/24(LMK加密的密文)

输出域

长度

类型

备注

应答码

1

A

“A”

工作密钥WK长度

1

H

8/16/24

工作密钥WK

N

H

N=8/16/24(BMK加密的密文)

校验码

8

H

WK的校验码

应答码

1

A

“E”

错误码

1

H

计算过程:

1、读取加密机LMK。

2、用LMK对输入的BMK解密,得到BMK明文。

3、用LMK对输入的WK解密,得到WK明文。

4、用BMK明文对WK明文加密。

1.3产生随XX钥<0xD006>

说明:

生成指定长度的随XX钥,并用LMK加密后返回其密文和CheckValue。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x06

随XX钥长度

1

H

8/16/24

输出域

长度

类型

备注

应答码

1

A

“A”

随XX钥长度

1

H

8/16/24

随XX钥

N

H

LMK加密的密钥,N=8/16/24

校验码

8

H

随XX钥的校验码

应答码

1

A

“E”

错误码

1

H

1.4用LMK加密明文密钥<0xD008>

说明:

用LMK加密输入的明文密钥,并返回CheckValue。

消息格式

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x08

密钥长度

1

H

8/16/24

密钥明文

N

H

N=8/16/24

输出域

长度

类型

备注

应答码

1

A

“A”

密钥长度

1

H

8/16/24

密钥

N

H

LMK加密的密钥N=8/16/24

校验码

8

H

密钥的校验码

应答码

1

A

“E”

错误码

1

H

1.5校验密钥<0xD00A>

说明:

输入指定长度的密文密钥,并校验密钥的校验码。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x0A

密钥长度

1

H

8/16/24

密钥

N

H

N=8/16/24(LMK加密的密文)

校验值长度

1

H

4-8

校验值

N

H

输出域

长度

类型

备注

应答码

1

A

“A”

应答码

1

A

“E”

错误码

1

H

1.6用密钥分量合成密钥<0xD00C>

说明:

用输入分量合成一个密钥,分量最多为9个。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x0C

密钥长度

1

H

8/16/24

分量个数

1

H

1到9

分量1

N

H

LMK加密的分量N=8/16/24

分量2

N

H

LMK加密的分量N=8/16/24

分量n

N

H

LMK加密的分量N=8/16/24

输出域

长度

类型

备注

应答码

1

A

“A”

密钥长度

1

H

密钥

N

H

LMK加密的密钥N=8/16/24

校验码

8

H

密钥的校验码

应答码

1

A

“E”

错误码

1

H

0x01:

无本地主密钥

0x10:

长度标志错

0x68:

输入长度错

1.7用输入密钥加密数据<0xD012>

说明:

用输入密钥对数据进行加密。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x12

算法模式

1

H

0:

ECB1:

CBC

算法类型

1

H

1:

Single_Des

2:

Double_Des

3:

Triple_Des

密钥

N

H

LMK加密,N=8/16/24

数据长度

2

H

数据长度(必须是8的整数倍)

数据

N

H

IV

8

H

CBC模式时存在

输出域

长度

类型

备注

应答码

1

A

“A”

数据长度

2

H

数据长度(8的整数倍)

数据

N

H

应答码

1

A

“E”

错误码

1

H

1.8用输入密钥解密数据<0xD014>

说明:

用输入密钥对数据进行加密。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x14

算法模式

1

H

0:

ECB1:

CBC

算法类型

1

H

1:

Single_Des

2:

Double_Des

3:

Triple_Des

密钥

N

H

LMK加密,N=8/16/24

数据长度

2

H

数据长度(必须是8的整数倍)

数据

N

H

IV

8

H

CBC模式时存在

输出域

长度

类型

备注

应答码

1

A

“A”

数据长度

2

H

数据长度(8的整数倍)

数据

N

H

应答码

1

A

“E”

错误码

1

H

1.9数据转加密<0xD016>

说明:

将由Key1加密的数据,转为由Key2加密。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x16

Key1的算法类型

1

H

1:

单倍长度

2:

双倍长度

3:

三倍长度

Key1

N

H

N=8/16/24(被LMK加密)

Key2的算法类型

1

H

1:

单倍长度

2:

双倍长度

3:

三倍长度

Key2

N

H

N=8/16/24(被LMK加密)

要转加密的数据

8

H

被Key1加密的密文

输出域

长度

类型

备注

应答码

1

A

“A”

转加密结果

8

H

被Key2加密的密文

应答码

1

A

“E”

错误码

1

H

计算过程:

1、读取加密机LMK。

2、用LMK解密Key1,用Key1明文对数据密文解密。

3、用LMK解密Key2,用Key2明文对数据明文加密。

1.10数据掩盖<0xD018>

说明:

采用内部算法对一段数据进行"掩盖",输出密文。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x18

数据长度

2

H

[1,4096]

数据

N

H

明文数据段

输出域

长度

类型

备注

应答码

1

A

“A”

数据长度

2

H

[1,4096]

数据

N

H

密文数据段

应答码

1

A

“E”

错误码

1

H

1.11数据还原<0xD019>

说明:

采用内部算法对一段经过"掩盖"的数据进行还原,输出明文。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x19

数据长度

2

H

[1,4096]

数据

N

H

被掩盖密文数据

输出域

长度

类型

备注

应答码

1

A

“A”

数据长度

2

H

[1,4096]

数据

N

H

还原的明文数据段

应答码

1

A

“E”

错误码

1

H

1.12产生随机数串<0xD01A>

说明:

产生指定长度的随机数串。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x1A

随机数长度

2

H

[1,4096]

输出域

长度

类型

备注

应答码

1

A

“A”

随机数长度

2

H

8/16/24

随机数

N

H

‘0’-‘9’的数串

应答码

1

A

“E”

错误码

1

H

1.13加密PIN<0xD022>

说明:

用输入的PIK加密PIN。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x22

PIK长度标识

1

H

1:

单倍长度

2:

双倍长度

3:

三倍长度

PIK

N

H

N=8/16/24,LMK加密的PIK

PIN格式

1

H

01/02/03/04/05/06

PIN长度

1

H

明文PIN长度

PIN

N

A

明文PIN(必须是0-9的数字)

主XX/补位码

12到19

A

(必须是0-9的数字)

输出域

长度

类型

备注

应答码

1

A

“A”

PIN

8

H

加密后的PIN

应答码

1

A

“E”

错误码

1

H

1.14解密PIN<0xD024>

说明:

用输入的PIK解密PIN。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x24

PIK长度

1

H

1:

单倍长度

2:

双倍长度

3:

三倍长度

PIK

N

H

N=8/16/24LMK加密的PIK

PIN格式

1

H

01/02/03/04/05/06

PIN

8

H

密文PIN

主XX/补位码

12--19

A

(必须是0-9的数字)

输出域

长度

类型

备注

应答码

1

A

“A”

PIN长度

1

H

PIN

N

A

明文PIN

应答码

1

A

“E”

错误码

1

H

1.15计算MAC<0xD032>

说明:

用输入的MAK对输入数据计算MAC。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x32

算法类型

1

H

01:

XOR

02:

ANSI9.9

03:

ANSI9.19

MAK长度

1

H

8/16/24

MAK

N

H

N=8/16/24LMK加密的MAK

初始向量

8

H

数据长度

2

H

数据

N

H

输出域

长度

类型

备注

应答码

1

A

“A”

MAC

8

H

应答码

1

A

“E”

错误码

1

H

1.16计算CVV<0xD042>

说明:

用输入密钥计算CVV。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x42

CVK1

8

H

LMK加密的密文

CVK2

8

H

LMK加密的密文

卡主XX

12/19

A

0-9的数字串

分隔符

1

A

;

有效期

4

A

0-9的数字串

服务代码

3

A

0-9的数字串

输出域

长度

类型

备注

应答码

1

A

“A”

CVV

3

A

应答码

1

A

“E”

错误码

1

H

1.17计算PVV<0xD044>

说明:

用输入密钥计算PVV。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x44

密钥

16

H

LMK加密的密文

PVK索引代号

1

H

‘0’–‘F’

明文PIN长度

1

A

4-12

主账号

16-19

A

0-9的数字串

分隔符

1

A

‘;’

明文PIN

N

H

输出域

长度

类型

备注

应答码

1

A

“A”

PVV

4

H

应答码

1

A

“E”

错误码

1

H

1.18IBM3624算法<0xD047>

说明:

用IBM3624算法生成Offset。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x47

密钥

8

H

LMK加密的密钥

账号

8

H

账号的最后16字节转为BCD码,

账号必须是0-9的数字。

十进制表

16

A

"12345"

密码长度

1

H

4-12

密码

4-12

A

(必须是0-9的数字)

输出域

长度

类型

备注

应答码

1

A

“A”

PIN

N

H

N=密码长度

应答码

1

A

“E”

错误码

1

H

1.19定义打印格式<0xD052>

说明:

定义打印格式。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x52

打印格式定义符

N

A

打印控制符字符串

输出域

长度

类型

备注

应答码

1

A

“A”

应答码

1

A

“E”

错误码

1

H

农行控制符字符串:

">L>L>L>L>L>L>L>025^0>L>L>L>025^1>060^2>L>L>L>L>025^T>060^P>L>060^Q>L>060^R>L>L>L>L>L>L"

1.20产生随XX钥并打印<0xD054>

说明:

定义打印格式。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD0

命令

1

H

0x54

密钥长度

1

A

8/16/24

附加信息1

A

n

打印位置对应与^0

分隔符

A

1

‘;’

附加信息2

A

n

打印位置对应与^1

分隔符

A

1

‘;’

…………………

………………………..

输出域

长度

类型

备注

应答码

1

A

“A”

随XX钥长度

1

H

8/16/24

随XX钥

N

H

LMK加密的密钥,N=8/16/24

校验码

8

H

随XX钥的校验码

应答码

1

A

“E”

错误码

1

H

1.21产生并保存RSA密钥对<0xD201>

说明:

产生随机RSA密钥对,并保存在加密机索引上。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD2

命令

1

H

0x01

模长

2

H

[512,2048],必须是8的整数倍。

索引

2

H

[0,19]

指数

4

H

输出域

长度

类型

备注

应答码

1

A

“A”

公钥长度

2

H

公钥长度

公钥

H

DER格式的公钥

应答码

1

A

“E”

错误码

1

H

1.22公钥加解密<0xD202>

说明:

用输入的公钥,对输入数据加/解密。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD2

命令

1

H

0x02

加解密标志

1

H

1:

加密0:

解密

填充模式

1

H

0:

不填充

1:

PKCS#1填充算法

2:

OAEP填充算法

公钥长度

2

H

外部输入的公钥长度

数据长度

2

H

公钥

H

DER格式

数据

H

输出域

长度

类型

备注

应答码

1

A

“A”

数据长度

2

H

数据长度

数据

H

数据

应答码

1

A

“E”

错误码

1

H

计算过程:

1、将DER格式的公钥,转为PKCS格式。

2、用公钥加解密。

 

1.23签名<0xD203>

说明:

用输入的私钥,对输入数据签名。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD2

命令

1

H

0x03

摘要算法

1

H

0—MD5算法

1—SHA-1算法;

2—SHA-224

3—SHA-256

4—SHA-384

5—SHA-512

填充模式

1

H

0:

不填充

1:

PKCS#1填充算法

2:

OAEP填充算法

RSA密钥索引

2

H

[0,19]

0xFFFF:

私钥从外部传入

RSA私钥长度

2

H

索引在[0,19]X围时,填0

索引为0xFFFF时,为外部输入的私钥长度

摘要数据长度

2

H

RSA私钥

H

DER格式;

结尾补0x80,再补0x00直到数据长度为8的整数倍;

被LMK加密。

(索引在[0,19]X围时不存在)

摘要数据

H

输出域

长度

类型

备注

应答码

1

A

“A”

签名长度

2

H

签名长度

签名

H

签名

应答码

1

A

“E”

错误码

1

H

计算过程:

索引在[0,19]X围时,用加密机内部RSA私钥:

1、读取指定索引的RSA私钥。

2、对输入数据摘要。

3、用RSA私钥对摘要加密。

索引为0xFFFF时,RSA私钥从外部传入:

1、读取加密机LMK。

2、用LMK对传入RSA私钥解密。

3、除去私钥结尾的0x80.、0x00…填充字符。

4、将DER格式的私钥,转为PKCS格式。

5、对输入数据摘要。

6、用RSA私钥对摘要加密。

 

1.24签名验证<0xD204>

说明:

签名验证。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD2

命令

1

H

0x04

摘要算法

1

H

0—MD5算法

1—SHA-1算法;

2—SHA-224

3—SHA-256

4—SHA-384

5—SHA-512

填充模式

1

H

0:

不填充

1:

PKCS#1填充算法

2:

OAEP填充算法

RSA公钥长度

2

H

外部输入的公钥长度

签名对应的数据长度

2

H

签名长度

2

H

RSA公钥

H

DER格式;

签名对应的数据

H

签名

H

输出域

长度

类型

备注

应答码

1

A

“A”

签名长度

2

H

签名长度

签名

H

签名

应答码

1

A

“E”

错误码

1

H

计算过程:

1、将DER格式的RSA公钥,转为PKCS格式。

2、对数据进行摘要。

3、用RSA公钥对签名解密。

4、将摘要结果与解密结果比较。

 

1.25导出指定索引上的私钥<0xD206>

说明:

导出指定索引上的私钥。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD2

命令

1

H

0x06

索引

2

H

[0,19]

输出域

长度

类型

备注

应答码

1

A

“A”

私钥长度

2

H

私钥长度

私钥

H

LMK加密的私钥

应答码

1

A

“E”

错误码

1

H

计算过程:

1、读取LMK。

2、读取指定索引上的私钥。

3、将私钥转为DER格式。

4、在私钥结尾补0x80,再补0x00直到长度为8的整数倍。

5、用LMK对私钥加密。

1.26公钥转加密<0xD20A>

说明:

将用LMK加密的数据,转为RSA公钥加密。

消息格式:

输入域

长度

类型

备注

命令类型

1

H

0xD2

命令

1

H

0x0A

填充模式

1

H

0:

不填充

1:

PKCS#1填充算法

2:

OAEP填充算法

数据长度

2

H

[1,256],必须是8的整数倍。

公钥长度

2

H

外部输入的公钥长度

公钥

H

DER格式

被LMK加密的密文数据

H

输出域

长度

类型

备注

应答码

1

A

“A”

数据长度

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2