140 lines
3.7 KiB
XML
140 lines
3.7 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
||
<packet extend="base">
|
||
<req>
|
||
|
||
<command>
|
||
<hex>GY</hex>
|
||
</command>
|
||
<data extend="data">
|
||
<num len="1" cn="成分数量">
|
||
成分数量
|
||
</num>
|
||
|
||
<keys cn="所有成分">
|
||
所有成分
|
||
</keys>
|
||
|
||
<flag len="1" cn="业务标识">
|
||
业务标识
|
||
</flag>
|
||
|
||
<split len="1" cn="分隔符">
|
||
</split>
|
||
|
||
<zmk len="1" cn="zmk 方案">
|
||
</zmk>
|
||
|
||
<lmk len="1" cn="lmk 方案">
|
||
</lmk>
|
||
|
||
<kcvType len="1" cn="密钥校验值类型">
|
||
</kcvType>
|
||
|
||
<tailSep len="1" :if=" null != $packet.data.tail " cn="尾分隔">
|
||
可选项。如果显示消息尾域,则该域必须显示。值为
|
||
“X’19”。
|
||
<hex>19</hex>
|
||
</tailSep>
|
||
|
||
<tail maxLen="32" required="false" cn="尾部">
|
||
可选项。最大长度为 32个字符。
|
||
</tail>
|
||
</data>
|
||
|
||
|
||
|
||
</req>
|
||
<res>
|
||
|
||
<command>
|
||
<hex>GZ</hex>
|
||
</command>
|
||
<data>
|
||
<error len="2" cn="错误码" format="X" :catch="catchError('%s')">
|
||
<options>
|
||
<option cn="无错误">
|
||
<hex>00</hex>
|
||
</option>
|
||
<option cn="密钥奇偶校验错">
|
||
<hex>01</hex>
|
||
</option>
|
||
<option cn="ZMK 奇偶校验错">
|
||
<hex>10</hex>
|
||
</option>
|
||
<option cn="用户存储区中没有装载密钥">
|
||
<hex>12</hex>
|
||
</option>
|
||
<option cn="LMK 错误">
|
||
LMK 错误;报告给管理员。
|
||
<hex>13</hex>
|
||
</option>
|
||
<option cn="输入数据错">
|
||
<hex>15</hex>
|
||
</option>
|
||
<option cn="不在授权状态">
|
||
<hex>17</hex>
|
||
</option>
|
||
<option cn="无效用户存储区索引">
|
||
<hex>21</hex>
|
||
</option>
|
||
<option cn="无效的密钥类型">
|
||
<hex>28</hex>
|
||
</option>
|
||
<option cn="无效的密钥方案">
|
||
<hex>26</hex>
|
||
</option>
|
||
<option cn="输入数据长度错误">
|
||
<hex>80</hex>
|
||
</option>
|
||
</options>
|
||
</error>
|
||
|
||
<keyHead len="1" cn="lmk 头">
|
||
如果是 'Z' ,lmk 16 个字节长
|
||
如果是 'X,U,S' ,lmk 32 个字节长
|
||
如果是 'Y,T' ,lmk 48 个字节长
|
||
</keyHead>
|
||
|
||
<key :len="Len()" cn="密钥(LMK)">
|
||
LMK 加密下的密钥。
|
||
</key>
|
||
|
||
<kcv :len="KCVLen()" cn="密钥校验值">
|
||
用ZMK加密64位0的结果。是16H还是6H取决于KCV的类型选项。
|
||
当输出的ZMK密钥方案为S时,KCV选项为0是,输入出32H
|
||
</kcv>
|
||
|
||
<tailSep len="1" required="false" cn="尾分隔">
|
||
可选项。如果显示消息尾域,则该域必须显示。值为 “X’19”。
|
||
<hex>19</hex>
|
||
</tailSep>
|
||
|
||
<tail maxLen="32" required="false" cn="尾部">
|
||
可选项。最大长度为 32个字符。
|
||
</tail>
|
||
</data>
|
||
|
||
|
||
|
||
</res>
|
||
<script>function Len() {
|
||
|
||
if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){
|
||
return 48
|
||
}else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") ){
|
||
return 32
|
||
}
|
||
return 15
|
||
|
||
}
|
||
|
||
|
||
function KCVLen() {
|
||
|
||
if( $final.data.keyHead.eqStr("S") ){
|
||
return 32
|
||
}
|
||
return 16
|
||
}
|
||
</script>
|
||
</packet> |