88 lines
2.3 KiB
XML
88 lines
2.3 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
||
<packet extend="base">
|
||
<req>
|
||
|
||
<command>
|
||
<hex>S5</hex>
|
||
</command>
|
||
<data extend="data">
|
||
<storageType len="1" cn="存储类型">
|
||
<options>
|
||
<option cn="使用内部密钥">
|
||
<hex>0</hex>
|
||
</option>
|
||
<option cn="使用外部密钥">
|
||
<hex>1</hex>
|
||
</option>
|
||
</options>
|
||
</storageType>
|
||
|
||
<algorithmKey len="2" cn="算法类型">
|
||
仅支持RSA、SM2
|
||
</algorithmKey>
|
||
|
||
<privateKeyLen len="4" :value="getPrivateKeyLen()" :if="1 == $packet.data.storageType$option" cn="签名私钥长度">
|
||
仅当存储类型为1时有效
|
||
签名私钥长度
|
||
</privateKeyLen>
|
||
|
||
<privateKey :if="1 == $packet.data.storageType$option" cn="签名私钥">
|
||
仅当存储类型为1时有效
|
||
签名私钥
|
||
</privateKey>
|
||
|
||
<keyIndex len="27" :if="0 == $packet.data.storageType$option" cn="密钥索引">
|
||
内部密钥索引, 接口层对外限制8位,通讯层限制27位,16位机构号+3位密钥类型+8位密钥索引号。前19位补0
|
||
注意:后八位密钥索引不允许输入全0
|
||
</keyIndex>
|
||
|
||
<inputDataLen len="4" :value="inputDataLen()" cn="数据长度">
|
||
输入数据长度
|
||
</inputDataLen>
|
||
|
||
<inputData cn="输入数据">
|
||
输入数据
|
||
</inputData>
|
||
</data>
|
||
|
||
</req>
|
||
<res>
|
||
|
||
<command>
|
||
<hex>S6</hex>
|
||
</command>
|
||
<data>
|
||
<error len="2" cn="错误码" format="X" :catch="catchError('%s')">
|
||
<options>
|
||
<option cn="无错误">
|
||
<hex>00</hex>
|
||
</option>
|
||
</options>
|
||
</error>
|
||
|
||
<signDataLen len="4" cn="签名数据长度">
|
||
签名数据长度
|
||
</signDataLen>
|
||
|
||
<signData :len="getSignDataLen()" cn="签名数据">
|
||
签名数据
|
||
</signData>
|
||
</data>
|
||
|
||
</res>
|
||
<script>
|
||
function getPrivateKeyLen() {
|
||
return $packet.data.privateKey.length;
|
||
}
|
||
|
||
function inputDataLen(){
|
||
var data = $packet.data;
|
||
return data.inputData.length;
|
||
}
|
||
|
||
function getSignDataLen() {
|
||
return Util.a2i( $final.getSection('data').getSection('signDataLen') )
|
||
}
|
||
</script>
|
||
</packet>
|