增加证书删除指令
This commit is contained in:
parent
9c2cdb5214
commit
f05c04f957
64
DProto/8011.xml
Normal file
64
DProto/8011.xml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<packet extend="base">
|
||||||
|
<req>
|
||||||
|
|
||||||
|
<command>
|
||||||
|
<bin>8011</bin>
|
||||||
|
</command>
|
||||||
|
<data extend="data">
|
||||||
|
|
||||||
|
<certDn cn="证书dn">
|
||||||
|
</certDn>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</req>
|
||||||
|
<res>
|
||||||
|
|
||||||
|
<command>
|
||||||
|
<bin>8012</bin>
|
||||||
|
</command>
|
||||||
|
<data>
|
||||||
|
<error len="2" cn="错误码" format="X" :catch="catchError('%s')">
|
||||||
|
<options>
|
||||||
|
<option cn="无错误">
|
||||||
|
<hex>00</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="公钥不符合编码规则">
|
||||||
|
<hex>04</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="无效的加密标识">
|
||||||
|
<hex>06</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="无效的附加模式标识">
|
||||||
|
<hex>07</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="密钥奇偶校验错误">
|
||||||
|
<hex>10</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="LMK 错误">
|
||||||
|
LMK 错误;报告给管理员。
|
||||||
|
<hex>13</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="输入数据错">
|
||||||
|
<hex>15</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="DSP 错误">
|
||||||
|
DSP 错误;报告给管理员。
|
||||||
|
<hex>47</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="私钥错误">
|
||||||
|
私钥错误;报告给管理员。
|
||||||
|
<hex>49</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="密钥块长度错误">
|
||||||
|
<hex>76</hex>
|
||||||
|
</option>
|
||||||
|
<option cn="输入数据长度错误">
|
||||||
|
<hex>80</hex>
|
||||||
|
</option>
|
||||||
|
</options>
|
||||||
|
</error>
|
||||||
|
</data>
|
||||||
|
</res>
|
||||||
|
<script> </script>
|
||||||
|
</packet>
|
||||||
@ -1,5 +1,7 @@
|
|||||||
package com.sunyard.inf;
|
package com.sunyard.inf;
|
||||||
|
|
||||||
|
import com.sunyard.SydApiException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 不经过 CA 授信
|
* 不经过 CA 授信
|
||||||
* 直接使用公私钥对签名验签
|
* 直接使用公私钥对签名验签
|
||||||
@ -92,6 +94,27 @@ interface SydNakedSVApi {
|
|||||||
byte[] sign,
|
byte[] sign,
|
||||||
String sCertDN
|
String sCertDN
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 使用指定的证书 DN,对指定的原始数据编制裸验签(遵循PKCS#1) 安徽农信定制接口
|
||||||
|
* @param cert 上传证书
|
||||||
|
* @param rFlag 摘要算法 1—DIGEST_ALGO_MD5 M
|
||||||
|
* * 2—DIGEST_ALGO_SHA1 S
|
||||||
|
* * 3—DIGEST_ALGO_SHA256 R
|
||||||
|
* 4-SM2 国密证书,SM3算法
|
||||||
|
* * S代表RSA-SHA1进行签名,如果为R代表RSA-SHA256进行签名,如果为M代表RSA-MD5进行签名
|
||||||
|
* @param orgData 待签名的原始数据
|
||||||
|
* @param sign 签名数据
|
||||||
|
* @param sCertDN 签名者证书 DN
|
||||||
|
* @return 验签是否通过
|
||||||
|
*/
|
||||||
|
public boolean SYD_NakedVerifyAll4NX (
|
||||||
|
String cert,
|
||||||
|
int rFlag,
|
||||||
|
byte[] orgData,
|
||||||
|
byte[] sign,
|
||||||
|
String sCertDN
|
||||||
|
) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -522,6 +522,25 @@ public class SydApi4j implements SydApi {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean SYD_NakedVerifyAll4NX(String cert,int rFlag,byte[] orgData,byte[] sign, String sCertDN){
|
||||||
|
boolean verify = false;
|
||||||
|
try {
|
||||||
|
//先导入证书
|
||||||
|
importCert(cert.getBytes(),null);
|
||||||
|
if( rFlag == 4 ){//SM2 国密算法
|
||||||
|
verify = SYD_NakedVerify(orgData,sign,sCertDN);
|
||||||
|
}else {
|
||||||
|
verify = SYD_NakedVerify(rFlag,orgData,sign,sCertDN);
|
||||||
|
}
|
||||||
|
//删除导入的证书
|
||||||
|
deleteCert(sCertDN);
|
||||||
|
return verify;
|
||||||
|
} catch ( SydApiException e) {
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public byte[] SYD_NakedSign(byte[] orgData, String sCertDN) {
|
public byte[] SYD_NakedSign(byte[] orgData, String sCertDN) {
|
||||||
if (orgData == null) {
|
if (orgData == null) {
|
||||||
throw new IllegalArgumentException("输入数据为 null");
|
throw new IllegalArgumentException("输入数据为 null");
|
||||||
@ -812,14 +831,14 @@ public class SydApi4j implements SydApi {
|
|||||||
) {
|
) {
|
||||||
throw new SydApiException("包序号不匹配", -4);
|
throw new SydApiException("包序号不匹配", -4);
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = (Map<String, Object>) ret.get("data");
|
ret = (Map<String, Object>) ret.get("data");
|
||||||
PacketSection error = (PacketSection) ret.get("error");
|
PacketSection error = (PacketSection) ret.get("error");
|
||||||
byte[] be = error.getBytes();
|
byte[] be = error.getBytes();
|
||||||
if ((0 != (be[0] ^ be[1]))) {
|
if ((0 != (be[0] ^ be[1]))) {
|
||||||
SydApiException e = new SydApiException(error.getInfo(), error.autoInt());
|
throw new SydApiException(error.getInfo(), error.autoInt());
|
||||||
println("验签失败=" + e.toString());
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1749,7 +1768,47 @@ public class SydApi4j implements SydApi {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean deleteCert(String dn) {
|
public boolean deleteCert(String dn) {
|
||||||
return false;
|
Proto8011 proto = new Proto8011();
|
||||||
|
|
||||||
|
// 填充数据
|
||||||
|
HashMap<String, Object> packet = new HashMap<String, Object>();
|
||||||
|
|
||||||
|
HashMap<String, Object> data = new HashMap<String, Object>();
|
||||||
|
packet.put("data", data);
|
||||||
|
|
||||||
|
PacketSN sn = PacketSN.gen();
|
||||||
|
packet.put("header", sn.getSn().array());
|
||||||
|
data.put("certDn", dn);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 渲染发送
|
||||||
|
ByteBuffer bb = proto.rend(packet);
|
||||||
|
|
||||||
|
|
||||||
|
synchronized (this) {
|
||||||
|
// 响应解析
|
||||||
|
bb = syncRead(syncSend(bb));
|
||||||
|
}
|
||||||
|
|
||||||
|
Packet p = proto.parse(bb, packet);
|
||||||
|
Map<String, Object> ret = p.toMap();
|
||||||
|
|
||||||
|
if (
|
||||||
|
!Arrays.equals(sn.getSn().array(), ((PacketSection) ret.get("header")).getBytes())
|
||||||
|
) {
|
||||||
|
throw new SydApiException("包序号不匹配", -4);
|
||||||
|
}
|
||||||
|
ret = (Map<String, Object>) ret.get("data");
|
||||||
|
PacketSection error = (PacketSection) ret.get("error");
|
||||||
|
byte[] be = error.getBytes();
|
||||||
|
if ((be[0] ^ be[1]) != 0) {
|
||||||
|
SydApiException e = new SydApiException(error.getInfo(), error.autoInt());
|
||||||
|
println("删除失败=" + e.toString());
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 测试通过
|
// 测试通过
|
||||||
|
|||||||
@ -118,6 +118,10 @@ public class Sample4ZS {
|
|||||||
// List<String> allCert = api.getAllCert();
|
// List<String> allCert = api.getAllCert();
|
||||||
// System.out.println(allCert);
|
// System.out.println(allCert);
|
||||||
|
|
||||||
|
api.GetX509CertInfo("MIICxjCCAmqgAwIBAgIFIGZACVcwDAYIKoEcz1UBg3UFADBdMQswCQYDVQQGEwJDTjEwMC4GA1UECgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRwwGgYDVQQDDBNDRkNBIFRFU1QgU00yIE9DQTExMB4XDTIzMDYwNjA5MDIzNFoXDTI1MDYwNjE1NTk1OVowfDELMAkGA1UEBhMCY24xFTATBgNVBAoMDENGQ0EgVEVTVCBDQTEOMAwGA1UECwwFQ05BUFMxFDASBgNVBAsMC0VudGVycHJpc2VzMTAwLgYDVQQDDCcwNDFAWjMxMzIwNTA1NzgzMEAzMTMyMDUwNTc4MzBAMDAwMDAwMDgwWTATBgcqhkjOPQIBBggqgRzPVQGCLQNCAAQzwB2NYu5u0YaSEpnH4rsDh1OOhiHD");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -2,6 +2,7 @@ package sample;
|
|||||||
|
|
||||||
|
|
||||||
import com.sunyard.SydApi;
|
import com.sunyard.SydApi;
|
||||||
|
import com.sunyard.proto.Util;
|
||||||
import racal.sunyard.main.SydApi4j;
|
import racal.sunyard.main.SydApi4j;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
package sample;
|
package sample;
|
||||||
|
|
||||||
import cn.hutool.core.codec.Base64;
|
import cn.hutool.core.codec.Base64;
|
||||||
|
import com.sunyard.RetWrap;
|
||||||
import com.sunyard.SydApi;
|
import com.sunyard.SydApi;
|
||||||
import com.sunyard.SydApiException;
|
import com.sunyard.SydApiException;
|
||||||
import com.sunyard.cert.X509;
|
import com.sunyard.cert.X509;
|
||||||
@ -201,5 +202,49 @@ public class Test4Nongxin {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void test(){
|
||||||
|
System.setProperty("com.sunyard.sydapi4j.debug", "true");
|
||||||
|
|
||||||
|
//设置连接
|
||||||
|
SydApiBuilder builder = new SydApiBuilder().setIp("192.168.0.156");
|
||||||
|
SydApi4j api = (SydApi4j) builder.build();
|
||||||
|
|
||||||
|
String cert = "-----BEGIN CERTIFICATE-----\n" +
|
||||||
|
"MIIDcTCCAlmgAwIBAgIFEEcHQmgwDQYJKoZIhvcNAQEFBQAwWDELMAkGA1UEBhMC\n" +
|
||||||
|
"Q04xMDAuBgNVBAoTJ0NoaW5hIEZpbmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhv\n" +
|
||||||
|
"cml0eTEXMBUGA1UEAxMOQ0ZDQSBURVNUIE9DQTEwHhcNMjExMjEwMDgyOTA0WhcN\n" +
|
||||||
|
"MjYxMjEwMDgyOTA0WjBoMQswCQYDVQQGEwJDTjESMBAGA1UEChMJQ0ZDQSBPQ0Ex\n" +
|
||||||
|
"MQ8wDQYDVQQLEwZUUEMtUzMxGTAXBgNVBAsTEE9yZ2FuaXphdGlvbmFsLTExGTAX\n" +
|
||||||
|
"BgNVBAMTEEFSQ1U1MjkxMDAwMDA3MDEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ\n" +
|
||||||
|
"AoGBAL+kPIjcWzRwQE6Q3ydtQsDaJGMxv0At2WrIQqb9ONEvqMbQZCd69qfBvsRj\n" +
|
||||||
|
"QI/UlG3btk6P/ZBGkNc99fX43VMqPtIlVjgRozLQcQJPFbiU5cT5PPqnrxo652RU\n" +
|
||||||
|
"KNFQhwmanPjAjmZd9woc2l0BnfF92QFDPDRprS1fWLFbKPTvAgMBAAGjgbUwgbIw\n" +
|
||||||
|
"HwYDVR0jBBgwFoAUz3CdYeudfC6498sCQPcJnf4zdIAwOQYDVR0fBDIwMDAuoCyg\n" +
|
||||||
|
"KoYoaHR0cDovL3VjcmwuY2ZjYS5jb20uY24vUlNBL2NybDgzMjA1LmNybDALBgNV\n" +
|
||||||
|
"HQ8EBAMCA+gwHQYDVR0OBBYEFGey5r5CdOUDaW3KRdZ0xg19n+dhMCgGA1UdJQQh\n" +
|
||||||
|
"MB8GCCsGAQUFBwMCBggrBgEFBQcDBAYJKoZIhvcvAQEFMA0GCSqGSIb3DQEBBQUA\n" +
|
||||||
|
"A4IBAQChyjTNJUkdspDa/6sPYuZdE0/yPFcbd0ag4wLWrSCiRyV0J5BhJPIApdRT\n" +
|
||||||
|
"3kCIem2jRbq3H/W1vUYi1JeGHcrvTOOMQb9yfgCzfQLvAdv0at4zupy1uXL6uE1S\n" +
|
||||||
|
"WL1v6Vub630tJ0A45KsVESB5Fb+UZ/cvdJIMHjcYYzPw+HHH6q9e3R0QUMz3Mxpl\n" +
|
||||||
|
"DCg66HQBL/jKSl/w13QTdRPL9dSDBtpzDqZH5JQK4rbZSdFnbC2TQs+ljsKd5TCg\n" +
|
||||||
|
"52HcC92peeCXCEsb3Zw0js5nTbX+1da8FgqDQTeKIItgXBvQIRJUeelKga6opRNM\n" +
|
||||||
|
"QM0Egoc/dBdM45jVnxzpreRKzsDQ\n" +
|
||||||
|
"-----END CERTIFICATE-----";
|
||||||
|
String odata = "<?xml version=\"1.0\" encoding=\"utf-8\"?><SignData><TradeType name=\"银行账号转账\" authLevel=\"0\">BankAcctTransfer</TradeType><Timestamp>1710469760912</Timestamp><Fields><AcctType>INNERDEBIT</AcctType><PayerSubAcSeq></PayerSubAcSeq><PayerBankAcType>96</PayerBankAcType><PayerAcNo>6229539600100010640</PayerAcNo><PayerAcName>王二类</PayerAcName><PayerCurrency>156</PayerCurrency><PayeeAcNo name=\"收款人账号:\">6217788308301020599</PayeeAcNo><PayeeAcName name=\"收款人名称:\">王二类</PayeeAcName><Amount name=\"转账金额:\">1</Amount><PayeeBankCode>402/402361018886</PayeeBankCode><PayeeBankName>安徽农金</PayeeBankName><ProvinceCode></ProvinceCode><ProvinceName></ProvinceName><CityCode></CityCode><CityName></CityName><UnionDeptId></UnionDeptId><UnionDeptName></UnionDeptName><TransType>0</TransType><Remark></Remark><Fee>0.00</Fee><CRFlag>1</CRFlag><TransTypeFlag>0</TransTypeFlag><TrsRouteType>0</TrsRouteType><AddPayeeBookFlag>1</AddPayeeBookFlag></Fields></SignData>";
|
||||||
|
String signRsa = "0564FC7C0E3FDAF225295BBD0E32BF16081D561B4C262B5E095E04E828DC8AAC71723F849B615A41AA012FB9B532017D382919A498A93EAD35CB3AA80BA29510C174BF61B6E5DCEA78DF9AF7C3B80513BA82F82030347F463C03826C90CC9C207012BD456C21D9DF4E2C79EE042B8BE229EA3C40F232AF661BE63E61A07DC2A3";
|
||||||
|
|
||||||
|
try {
|
||||||
|
String rsaDn = "C=CN,O=CFCA OCA1,OU=TPC-S3,OU=Organizational-1,CN=ARCU529100000701";
|
||||||
|
boolean nakedVerify2 = api.SYD_NakedVerifyAll4NX(cert,2,odata.getBytes(),Util.hexString2Bytes(signRsa),rsaDn);
|
||||||
|
System.out.println("RSA数据验签:"+nakedVerify2 );
|
||||||
|
} catch (SydApiException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
52
src/test/java/sample/sample4nx.java
Normal file
52
src/test/java/sample/sample4nx.java
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
package sample;
|
||||||
|
|
||||||
|
import com.sunyard.SydApiException;
|
||||||
|
import com.sunyard.proto.Util;
|
||||||
|
import racal.sunyard.main.SydApi4j;
|
||||||
|
import racal.sunyard.main.SydApiBuilder;
|
||||||
|
|
||||||
|
public class sample4nx {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
//打印调试日志
|
||||||
|
System.setProperty("com.sunyard.sydapi4j.debug", "true");
|
||||||
|
|
||||||
|
//设置连接
|
||||||
|
SydApiBuilder builder = new SydApiBuilder().setIp("192.168.0.156");
|
||||||
|
SydApi4j api = (SydApi4j) builder.build();
|
||||||
|
|
||||||
|
String cert = "-----BEGIN CERTIFICATE-----\n" +
|
||||||
|
"MIIDcTCCAlmgAwIBAgIFEEcHQmgwDQYJKoZIhvcNAQEFBQAwWDELMAkGA1UEBhMC\n" +
|
||||||
|
"Q04xMDAuBgNVBAoTJ0NoaW5hIEZpbmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhv\n" +
|
||||||
|
"cml0eTEXMBUGA1UEAxMOQ0ZDQSBURVNUIE9DQTEwHhcNMjExMjEwMDgyOTA0WhcN\n" +
|
||||||
|
"MjYxMjEwMDgyOTA0WjBoMQswCQYDVQQGEwJDTjESMBAGA1UEChMJQ0ZDQSBPQ0Ex\n" +
|
||||||
|
"MQ8wDQYDVQQLEwZUUEMtUzMxGTAXBgNVBAsTEE9yZ2FuaXphdGlvbmFsLTExGTAX\n" +
|
||||||
|
"BgNVBAMTEEFSQ1U1MjkxMDAwMDA3MDEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ\n" +
|
||||||
|
"AoGBAL+kPIjcWzRwQE6Q3ydtQsDaJGMxv0At2WrIQqb9ONEvqMbQZCd69qfBvsRj\n" +
|
||||||
|
"QI/UlG3btk6P/ZBGkNc99fX43VMqPtIlVjgRozLQcQJPFbiU5cT5PPqnrxo652RU\n" +
|
||||||
|
"KNFQhwmanPjAjmZd9woc2l0BnfF92QFDPDRprS1fWLFbKPTvAgMBAAGjgbUwgbIw\n" +
|
||||||
|
"HwYDVR0jBBgwFoAUz3CdYeudfC6498sCQPcJnf4zdIAwOQYDVR0fBDIwMDAuoCyg\n" +
|
||||||
|
"KoYoaHR0cDovL3VjcmwuY2ZjYS5jb20uY24vUlNBL2NybDgzMjA1LmNybDALBgNV\n" +
|
||||||
|
"HQ8EBAMCA+gwHQYDVR0OBBYEFGey5r5CdOUDaW3KRdZ0xg19n+dhMCgGA1UdJQQh\n" +
|
||||||
|
"MB8GCCsGAQUFBwMCBggrBgEFBQcDBAYJKoZIhvcvAQEFMA0GCSqGSIb3DQEBBQUA\n" +
|
||||||
|
"A4IBAQChyjTNJUkdspDa/6sPYuZdE0/yPFcbd0ag4wLWrSCiRyV0J5BhJPIApdRT\n" +
|
||||||
|
"3kCIem2jRbq3H/W1vUYi1JeGHcrvTOOMQb9yfgCzfQLvAdv0at4zupy1uXL6uE1S\n" +
|
||||||
|
"WL1v6Vub630tJ0A45KsVESB5Fb+UZ/cvdJIMHjcYYzPw+HHH6q9e3R0QUMz3Mxpl\n" +
|
||||||
|
"DCg66HQBL/jKSl/w13QTdRPL9dSDBtpzDqZH5JQK4rbZSdFnbC2TQs+ljsKd5TCg\n" +
|
||||||
|
"52HcC92peeCXCEsb3Zw0js5nTbX+1da8FgqDQTeKIItgXBvQIRJUeelKga6opRNM\n" +
|
||||||
|
"QM0Egoc/dBdM45jVnxzpreRKzsDQ\n" +
|
||||||
|
"-----END CERTIFICATE-----";
|
||||||
|
String odata = "<?xml version=\"1.0\" encoding=\"utf-8\"?><SignData><TradeType name=\"银行账号转账\" authLevel=\"0\">BankAcctTransfer</TradeType><Timestamp>1710469760912</Timestamp><Fields><AcctType>INNERDEBIT</AcctType><PayerSubAcSeq></PayerSubAcSeq><PayerBankAcType>96</PayerBankAcType><PayerAcNo>6229539600100010640</PayerAcNo><PayerAcName>王二类</PayerAcName><PayerCurrency>156</PayerCurrency><PayeeAcNo name=\"收款人账号:\">6217788308301020599</PayeeAcNo><PayeeAcName name=\"收款人名称:\">王二类</PayeeAcName><Amount name=\"转账金额:\">1</Amount><PayeeBankCode>402/402361018886</PayeeBankCode><PayeeBankName>安徽农金</PayeeBankName><ProvinceCode></ProvinceCode><ProvinceName></ProvinceName><CityCode></CityCode><CityName></CityName><UnionDeptId></UnionDeptId><UnionDeptName></UnionDeptName><TransType>0</TransType><Remark></Remark><Fee>0.00</Fee><CRFlag>1</CRFlag><TransTypeFlag>0</TransTypeFlag><TrsRouteType>0</TrsRouteType><AddPayeeBookFlag>1</AddPayeeBookFlag></Fields></SignData>";
|
||||||
|
String signRsa = "0564FC7C0E3FDAF225295BBD0E32BF16081D561B4C262B5E095E04E828DC8AAC71723F849B615A41AA012FB9B532017D382919A498A93EAD35CB3AA80BA29510C174BF61B6E5DCEA78DF9AF7C3B80513BA82F82030347F463C03826C90CC9C207012BD456C21D9DF4E2C79EE042B8BE229EA3C40F232AF661BE63E61A07DC2A3";
|
||||||
|
|
||||||
|
try {
|
||||||
|
String rsaDn = "C=CN,O=CFCA OCA1,OU=TPC-S3,OU=Organizational-1,CN=ARCU529100000701";
|
||||||
|
boolean nakedVerify2 = api.SYD_NakedVerifyAll4NX(cert,2,odata.getBytes(), Util.hexString2Bytes(signRsa),rsaDn);
|
||||||
|
System.out.println("RSA数据验签:"+nakedVerify2 );
|
||||||
|
|
||||||
|
|
||||||
|
} catch (SydApiException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user