This commit is contained in:
cheney 2022-09-05 20:35:51 +08:00
commit 37dd4ea78c
2 changed files with 15 additions and 10 deletions

View File

@ -1,6 +1,7 @@
package com.sunyard.sydapi.test; package com.sunyard.sydapi.test;
import com.sunyard.RetWrap; import com.sunyard.RetWrap;
import com.sunyard.SydApi;
import com.sunyard.proto.Util; import com.sunyard.proto.Util;
import racal.sunyard.main.SydApi4j; import racal.sunyard.main.SydApi4j;
import racal.sunyard.main.SydApiBuilder; import racal.sunyard.main.SydApiBuilder;
@ -27,7 +28,7 @@ public class TestShangqingXingye {
// String cpkey = (String)signData.get("CipherKey"); // String cpkey = (String)signData.get("CipherKey");
byte[] cpkey2 = (byte[]) signData.get("CipherKey"); byte[] cpkey2 = (byte[]) signData.get("CipherKey");
// System.out.println("加密信封:" + cpkey); // System.out.println("加密信封:" + cpkey);
System.out.println("加密信封:" + Util.encodeBase64(cpkey2)); System.out.println("加密信封:" + cpkey2);
/** /**
* 接收用私钥解密数字信封还原原文 * 接收用私钥解密数字信封还原原文
@ -36,7 +37,7 @@ public class TestShangqingXingye {
* @return preData: 原数据 * @return preData: 原数据
*/ */
//RetWrap oDataWrap = api.decryptDEByDN (pcDnEN,cpkey.getBytes()); //RetWrap oDataWrap = api.decryptDEByDN (pcDnEN,cpkey.getBytes());
RetWrap oDataWrap = api.decryptDEByDN(pcDnEN, cpkey2); RetWrap oDataWrap = api.decryptDEByDN (pcDnEN,cpkey2);
byte[] preData = (byte[]) oDataWrap.get("oData"); byte[] preData = (byte[]) oDataWrap.get("oData");
System.out.println("解密信封:" + Util.bytes2HexString(preData)); System.out.println("解密信封:" + Util.bytes2HexString(preData));
@ -47,7 +48,7 @@ public class TestShangqingXingye {
* @param pcDnEN: 签名者证书 DN * @param pcDnEN: 签名者证书 DN
* @return signsData: 签名数据 * @return signsData: 签名数据
*/ */
String signsData = api.SYD_SM2_DetachedSign_HA(orgData.getBytes("GBK"), pcDnEN); String signsData = api.SYD_SM2_DetachedSign_HA (orgData.getBytes("GBK"),pcDnEN);
System.out.println("签名数据:" + signsData); System.out.println("签名数据:" + signsData);
/** /**
@ -56,10 +57,14 @@ public class TestShangqingXingye {
* @param orgData: 待签名的原始数据 * @param orgData: 待签名的原始数据
* @param sign: 签名数据 * @param sign: 签名数据
*/ */
boolean result = api.detachedVerify(1, orgData.getBytes("GBK"), signsData); boolean result = api.detachedVerify (1,orgData.getBytes("GBK"),signsData);
System.out.println("验签结果:" + result); System.out.println("验签结果:" + result);
/** /**
* 产生对称密钥通过清算所公钥证书加密生成数字信封 * 产生对称密钥通过清算所公钥证书加密生成数字信封
* 利用会员的私钥证书对数据进行签名 * 利用会员的私钥证书对数据进行签名