完善jmter
This commit is contained in:
parent
9af716e87d
commit
62598e0c89
217
src/main/java/com/jmeter/test/Test4Jemter.java
Normal file
217
src/main/java/com/jmeter/test/Test4Jemter.java
Normal file
@ -0,0 +1,217 @@
|
||||
package com.jmeter.test;
|
||||
|
||||
import com.sunyard.SydApiException;
|
||||
import com.sunyard.proto.Util;
|
||||
import org.apache.jmeter.config.Arguments;
|
||||
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
|
||||
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
|
||||
import org.apache.jmeter.samplers.SampleResult;
|
||||
import racal.sunyard.main.SydApi4j;
|
||||
import racal.sunyard.main.SydApiBuilder;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
|
||||
public class Test4Jemter extends AbstractJavaSamplerClient {
|
||||
|
||||
private String SM2dn ;
|
||||
private String RSAdn ;
|
||||
private String ip ;
|
||||
private String ip2 ;
|
||||
private String oData;
|
||||
private String sign;
|
||||
private byte[] orgData;
|
||||
|
||||
private int type;
|
||||
|
||||
private static ThreadLocal<SydApi4j> api;
|
||||
|
||||
|
||||
/**
|
||||
* 定义默认的参数,在jmeter中会自动显示在这里定义的默认参数
|
||||
* @return Arguments对象
|
||||
*/
|
||||
@Override
|
||||
public Arguments getDefaultParameters() {
|
||||
Arguments arguments = new Arguments();
|
||||
arguments.addArgument("SM2dn", "C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1");
|
||||
arguments.addArgument("RSAdn", "C=cn,O=CFCA TEST CA,OU=NCS2,OU=Enterprises,CN=041@Z402451000010@ShanDong@00000001");
|
||||
arguments.addArgument("orgData", "12345678");
|
||||
arguments.addArgument("ip", "192.168.0.166");
|
||||
// arguments.addArgument("ip2", "172.16.17.161");
|
||||
arguments.addArgument("type", "1");
|
||||
arguments.addArgument("sign", "12345678");
|
||||
return arguments;
|
||||
}
|
||||
|
||||
/**
|
||||
* 在执行测试之前执行,只执行一次,可以获取传递过来的参数,一般用来做初始化操作
|
||||
* @param context 可以获取jmeter传递过来的参数
|
||||
*/
|
||||
@Override
|
||||
public void setupTest(JavaSamplerContext context) {
|
||||
//对成员变量初始化
|
||||
SM2dn = context.getParameter("SM2dn");
|
||||
RSAdn = context.getParameter("RSAdn");
|
||||
oData = context.getParameter("orgData");
|
||||
ip = context.getParameter("ip");
|
||||
// ip2 = context.getParameter("ip2");
|
||||
type = context.getIntParameter("type");
|
||||
sign = context.getParameter("sign");
|
||||
System.setProperty("com.sunyard.dnsort", "false");
|
||||
api = new ThreadLocal<SydApi4j>() {
|
||||
public SydApi4j initialValue() {
|
||||
|
||||
SydApiBuilder builder = new SydApiBuilder().setIp(ip);
|
||||
final SydApi4j api = (SydApi4j) builder.build();
|
||||
return api;
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 真正的测试代码块,jmeter按照配置的逻辑执行该方法
|
||||
* @param javaSamplerContext 上下文对象,可以获取jmeter传递的参数
|
||||
* @return SampleResult对象用于封装结果
|
||||
*/
|
||||
@Override
|
||||
public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
|
||||
SampleResult sr = new SampleResult();
|
||||
//设置标签
|
||||
sr.setSampleLabel("testDemo");
|
||||
//设置开始标志,否则无法统计tps等
|
||||
sr.sampleStart();
|
||||
try {
|
||||
orgData = oData.getBytes(); //SM2裸签
|
||||
//执行业务逻辑
|
||||
switch(type){
|
||||
case 1:
|
||||
api.get().SYD_NakedSign(SM2dn, orgData, (byte[]) null);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(Util.encodeBase64(nakedSign1), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
|
||||
case 2:
|
||||
api.get().SYD_NakedVerify(SM2dn, Util.decodeBase64(sign), orgData, (byte[])null) ;
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(String.valueOf(nakedVerify1), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 3:
|
||||
//RSA裸签
|
||||
api.get().SYD_NakedSign(1, RSAdn,orgData,(byte[])null);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(Util.encodeBase64(nakedSign2), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 4:
|
||||
api.get().SYD_NakedVerify(1, RSAdn,Util.decodeBase64(sign),orgData ,(byte[])null);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(String.valueOf(nakedVerify2), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 5:
|
||||
api.get().detachedSign(1, orgData, SM2dn);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(detSign1, StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 6:
|
||||
api.get().detachedVerify(1, orgData, sign);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(String.valueOf(detV1), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 7:
|
||||
api.get().detachedSign(2,1, orgData, RSAdn);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(detSign2, StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 8:
|
||||
api.get().detachedVerify(2,2, orgData, sign);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(String.valueOf(detV2), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 9:
|
||||
api.get().attachedSignHsm(orgData, SM2dn);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(attSign1, StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 10:
|
||||
api.get().attachedVerify( sign.getBytes());
|
||||
sr.setResponseCodeOK();
|
||||
// sr.setResponseData(String.valueOf(attV1), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 11:
|
||||
api.get().attachedSignRSAHsm(2, orgData, RSAdn);
|
||||
sr.setResponseCodeOK();
|
||||
// sr.setResponseData(attSign2, StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 12:
|
||||
api.get().attachedVerifyRSA(2, sign);
|
||||
sr.setResponseCodeOK();
|
||||
// sr.setResponseData(String.valueOf(attV2), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 13:
|
||||
api.get().generateDE(SM2dn.getBytes(), 3, 1, orgData);
|
||||
// byte[] cipherKey = (byte[]) genSM2.get(SydApi.RET_CIPHER_KEY);
|
||||
sr.setResponseCodeOK();
|
||||
// sr.setResponseData(new String(cipherKey), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 14:
|
||||
api.get().decryptDE(true, 1, SM2dn.getBytes(), sign);;
|
||||
// byte[] oData = (byte[]) denSM2.get("oData");
|
||||
sr.setResponseCodeOK();
|
||||
// sr.setResponseData(new String(oData), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
|
||||
case 15:
|
||||
api.get(). generateDE(RSAdn.getBytes(), 4, 1, orgData);
|
||||
// byte[] cipherKeyRSA = (byte[]) genRSA.get(SydApi.RET_CIPHER_KEY);
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(new String(cipherKeyRSA), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
case 16:
|
||||
api.get().decryptDERSA(true, 1, RSAdn.getBytes(), sign);
|
||||
// byte[] oDataRSA = (byte[]) denRSA.get("oData");
|
||||
sr.setResponseCodeOK();
|
||||
//sr.setResponseData(new String(oDataRSA), StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
|
||||
default:
|
||||
sr.setResponseCodeOK();
|
||||
sr.setResponseData("请选择测试组", StandardCharsets.UTF_8.displayName());
|
||||
break;
|
||||
}
|
||||
sr.setSuccessful(true);
|
||||
}catch (SydApiException e){
|
||||
e.printStackTrace();
|
||||
sr.setResponseCode(String.valueOf(e.getRetCode()));
|
||||
sr.setResponseData(e.getMessage(), StandardCharsets.UTF_8.displayName());
|
||||
sr.setSuccessful(false);
|
||||
}finally {
|
||||
sr.sampleEnd();
|
||||
}
|
||||
return sr;
|
||||
}
|
||||
|
||||
/**
|
||||
* 测试完成后执行,一般用于关闭资源
|
||||
* @param context 上下文对象,可用于获取jmeter传递的参数
|
||||
*/
|
||||
@Override
|
||||
public void teardownTest(JavaSamplerContext context) {
|
||||
System.runFinalization();
|
||||
}
|
||||
}
|
||||
@ -1,210 +0,0 @@
|
||||
//package com.jmeter.test;
|
||||
//
|
||||
//import com.sunyard.RetWrap;
|
||||
//import com.sunyard.SydApi;
|
||||
//import com.sunyard.SydApiException;
|
||||
//import com.sunyard.proto.Util;
|
||||
//import org.apache.jmeter.config.Arguments;
|
||||
//import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
|
||||
//import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
|
||||
//import org.apache.jmeter.samplers.SampleResult;
|
||||
//import racal.sunyard.main.SydApi4j;
|
||||
//import racal.sunyard.main.SydApiBuilder;
|
||||
//import sun.nio.cs.StandardCharsets;
|
||||
//
|
||||
//
|
||||
//public class Test4ZS extends AbstractJavaSamplerClient {
|
||||
//
|
||||
// private String SM2dn ;
|
||||
// private String RSAdn ;
|
||||
// private String ip ;
|
||||
// private String ip2 ;
|
||||
// private String oData;
|
||||
// private String sign;
|
||||
// private byte[] orgData;
|
||||
//
|
||||
// private int type;
|
||||
//
|
||||
//
|
||||
// /**
|
||||
// * 定义默认的参数,在jmeter中会自动显示在这里定义的默认参数
|
||||
// * @return Arguments对象
|
||||
// */
|
||||
// @Override
|
||||
// public Arguments getDefaultParameters() {
|
||||
// Arguments arguments = new Arguments();
|
||||
// arguments.addArgument("SM2dn", "C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1");
|
||||
// arguments.addArgument("RSAdn", "C=cn,O=CFCA TEST CA,OU=NCS2,OU=Enterprises,CN=041@Z402451000010@ShanDong@00000001");
|
||||
// arguments.addArgument("orgData", "12345678");
|
||||
// arguments.addArgument("ip", "172.16.17.161");
|
||||
// arguments.addArgument("ip2", "172.16.17.161");
|
||||
// arguments.addArgument("type", "1");
|
||||
// arguments.addArgument("sign", "12345678");
|
||||
// return arguments;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 在执行测试之前执行,只执行一次,可以获取传递过来的参数,一般用来做初始化操作
|
||||
// * @param context 可以获取jmeter传递过来的参数
|
||||
// */
|
||||
// @Override
|
||||
// public void setupTest(JavaSamplerContext context) {
|
||||
// //对成员变量初始化
|
||||
// SM2dn = context.getParameter("SM2dn");
|
||||
// RSAdn = context.getParameter("RSAdn");
|
||||
// oData = context.getParameter("orgData");
|
||||
// ip = context.getParameter("ip");
|
||||
// ip2 = context.getParameter("ip2");
|
||||
// type = context.getIntParameter("type");
|
||||
// sign = context.getParameter("sign");
|
||||
// System.setProperty("com.sunyard.dnsort", "false");
|
||||
//
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 真正的测试代码块,jmeter按照配置的逻辑执行该方法
|
||||
// * @param javaSamplerContext 上下文对象,可以获取jmeter传递的参数
|
||||
// * @return SampleResult对象用于封装结果
|
||||
// */
|
||||
// @Override
|
||||
// public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
|
||||
// SampleResult sr = new SampleResult();
|
||||
// //设置标签
|
||||
// sr.setSampleLabel("testDemo");
|
||||
// //设置开始标志,否则无法统计tps等
|
||||
// sr.sampleStart();
|
||||
// try {
|
||||
// SydApi4j.SYD_Set_Parameter_HA(ip, ip2, 8889, 1000);
|
||||
// SydApi4j api = (SydApi4j) new SydApi4j();
|
||||
// orgData = oData.getBytes(); //SM2裸签
|
||||
// //执行业务逻辑
|
||||
// switch(type){
|
||||
// case 1:
|
||||
// api.SYD_NakedSign(SM2dn, orgData, (byte[])null);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(Util.encodeBase64(nakedSign1), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
//
|
||||
// case 2:
|
||||
// api.SYD_NakedVerify(SM2dn, Util.decodeBase64(sign), orgData, (byte[])null) ;
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(String.valueOf(nakedVerify1), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 3:
|
||||
// //RSA裸签
|
||||
// api.SYD_NakedSign(1, RSAdn,orgData,(byte[])null);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(Util.encodeBase64(nakedSign2), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 4:
|
||||
// api.SYD_NakedVerify(1, RSAdn,Util.decodeBase64(sign),orgData ,(byte[])null);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(String.valueOf(nakedVerify2), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 5:
|
||||
// api.detachedSign(1, orgData, SM2dn);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(detSign1, StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 6:
|
||||
// api.detachedVerify(1, orgData, sign);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(String.valueOf(detV1), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 7:
|
||||
// api.detachedSign(2,1, orgData, RSAdn);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(detSign2, StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 8:
|
||||
// api.detachedVerify(2,2, orgData, sign);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(String.valueOf(detV2), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 9:
|
||||
// api.attachedSignHsm(orgData, SM2dn);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(attSign1, StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 10:
|
||||
// api.attachedVerify( sign.getBytes());
|
||||
// sr.setResponseCodeOK();
|
||||
// // sr.setResponseData(String.valueOf(attV1), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 11:
|
||||
// api.attachedSignRSAHsm(2, orgData, RSAdn);
|
||||
// sr.setResponseCodeOK();
|
||||
// // sr.setResponseData(attSign2, StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 12:
|
||||
// api.attachedVerifyRSA(2, sign);
|
||||
// sr.setResponseCodeOK();
|
||||
// // sr.setResponseData(String.valueOf(attV2), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 13:
|
||||
// api.generateDE(SM2dn.getBytes(), 3, 1, orgData);
|
||||
// // byte[] cipherKey = (byte[]) genSM2.get(SydApi.RET_CIPHER_KEY);
|
||||
// sr.setResponseCodeOK();
|
||||
// // sr.setResponseData(new String(cipherKey), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 14:
|
||||
// api.decryptDE(true, 1, SM2dn.getBytes(), sign);;
|
||||
// // byte[] oData = (byte[]) denSM2.get("oData");
|
||||
// sr.setResponseCodeOK();
|
||||
// // sr.setResponseData(new String(oData), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
//
|
||||
// case 15:
|
||||
// api. generateDE(RSAdn.getBytes(), 4, 1, orgData);
|
||||
// // byte[] cipherKeyRSA = (byte[]) genRSA.get(SydApi.RET_CIPHER_KEY);
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(new String(cipherKeyRSA), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// case 16:
|
||||
// api.decryptDERSA(true, 1, RSAdn.getBytes(), sign);
|
||||
// // byte[] oDataRSA = (byte[]) denRSA.get("oData");
|
||||
// sr.setResponseCodeOK();
|
||||
// //sr.setResponseData(new String(oDataRSA), StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
//
|
||||
// default:
|
||||
// sr.setResponseCodeOK();
|
||||
// sr.setResponseData("请选择测试组", StandardCharsets.UTF_8.displayName());
|
||||
// break;
|
||||
// }
|
||||
// sr.setSuccessful(true);
|
||||
// }catch (SydApiException e){
|
||||
// e.printStackTrace();
|
||||
// sr.setResponseCode(String.valueOf(e.getRetCode()));
|
||||
// sr.setResponseData(e.getMessage(), StandardCharsets.UTF_8.displayName());
|
||||
// sr.setSuccessful(false);
|
||||
// }finally {
|
||||
// sr.sampleEnd();
|
||||
// }
|
||||
// return sr;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 测试完成后执行,一般用于关闭资源
|
||||
// * @param context 上下文对象,可用于获取jmeter传递的参数
|
||||
// */
|
||||
// @Override
|
||||
// public void teardownTest(JavaSamplerContext context) {
|
||||
// System.runFinalization();
|
||||
// }
|
||||
//}
|
||||
@ -1821,8 +1821,7 @@ public class SydApi4j implements SydApi {
|
||||
buff = new byte[bb.position()];
|
||||
System.arraycopy(bb.array(), 0, buff, 0, buff.length);
|
||||
}
|
||||
|
||||
|
||||
if(debug){
|
||||
println("\n\n发送数据");
|
||||
// print("原始数据: \t");
|
||||
// println(Arrays.toString(buff));
|
||||
@ -1835,8 +1834,11 @@ public class SydApi4j implements SydApi {
|
||||
print("EBCD 数据: \t");
|
||||
println(Util.bytes2HexString(buff));
|
||||
}
|
||||
}
|
||||
|
||||
testSocket();
|
||||
|
||||
|
||||
//testSocket();
|
||||
|
||||
try {
|
||||
socket.getOutputStream().write(buff);
|
||||
@ -1918,12 +1920,14 @@ public class SydApi4j implements SydApi {
|
||||
|
||||
len += 2;
|
||||
|
||||
if(debug){
|
||||
print("H\t");
|
||||
println(Integer.toHexString(high));
|
||||
print("L\t");
|
||||
println(Integer.toHexString(low));
|
||||
print("Len\t");
|
||||
println(len);
|
||||
}
|
||||
|
||||
|
||||
ByteBuffer bb = ByteBuffer.allocate(len);
|
||||
@ -1950,16 +1954,24 @@ public class SydApi4j implements SydApi {
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if (null != builder && builder.isUseEBCDMode()) {
|
||||
print("EBCD 数据: \t");
|
||||
println(Util.bytes2HexString(bb.array()));
|
||||
// print("EBCD 数据: \t");
|
||||
// println(Util.bytes2HexString(bb.array()));
|
||||
|
||||
byte[] b = bb.array();
|
||||
CoderUtil.EBCDICToASCIIFIX(b, 10);
|
||||
}
|
||||
|
||||
if(debug){
|
||||
print("EBCD 数据: \t");
|
||||
println(Util.bytes2HexString(bb.array()));
|
||||
print("HEX数据: \t");
|
||||
println(Util.bytes2HexString(bb.array()));
|
||||
}
|
||||
|
||||
// print("HEX数据: \t");
|
||||
// println(Util.bytes2HexString(bb.array()));
|
||||
return bb;
|
||||
}
|
||||
|
||||
@ -1971,7 +1983,7 @@ public class SydApi4j implements SydApi {
|
||||
* @buffer 如果出错,需要补发的数据。
|
||||
*/
|
||||
protected ByteBuffer syncRead(byte[] buffer) {
|
||||
println("\n\n接收数据");
|
||||
// println("\n\n接收数据");
|
||||
try {
|
||||
// 正常接收
|
||||
ByteBuffer bb = read(socket);
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package sample;
|
||||
|
||||
import com.sunyard.SydApi;
|
||||
import com.sunyard.proto.Util;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
@ -40,4 +41,12 @@ public class HashTest {
|
||||
public void sha256(){
|
||||
api.itHash( 1, new byte[ 5 * 1024 * 1024 ]);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void hex(){
|
||||
String s = "MEQCICECex9ZSh6PktFDu3rkszxJ++miqXBs5uCJS2VL8lhUAiBgZSLbJAMgrpTpmRL2L/5XsWBHSoFbKI6ToSzDnbPCaQ==";
|
||||
System.out.println(Util.bytes2HexString(Util.decodeBase64(s)));
|
||||
System.out.println(new String(Util.decodeBase64(s)));
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,6 +4,7 @@ import com.sunyard.RetWrap;
|
||||
import com.sunyard.SydApi;
|
||||
import com.sunyard.SydApiException;
|
||||
import com.sunyard.proto.Util;
|
||||
import org.junit.Test;
|
||||
import racal.sunyard.main.SydApi4j;
|
||||
import racal.sunyard.main.SydApiBuilder;
|
||||
|
||||
@ -23,11 +24,11 @@ public class Sample4ZS {
|
||||
String ip2 = "172.16.17.161";
|
||||
|
||||
//主备模式连接
|
||||
SydApi4j.SYD_Set_Parameter_HA(ip, ip2, 8889, 1000);
|
||||
SydApi4j api = (SydApi4j) new SydApi4j();
|
||||
// SydApi4j.SYD_Set_Parameter_HA(ip, ip2, 8889, 1000);
|
||||
// SydApi4j api = (SydApi4j) new SydApi4j();
|
||||
//设置连接
|
||||
// SydApiBuilder builder = new SydApiBuilder().setIp("172.16.17.161");
|
||||
// SydApi4j api = (SydApi4j) builder.build();
|
||||
SydApiBuilder builder = new SydApiBuilder().setIp("172.16.17.161");
|
||||
SydApi4j api = (SydApi4j) builder.build();
|
||||
try {
|
||||
long startTime = System.currentTimeMillis(); //获取开始时间
|
||||
// //SM2裸签
|
||||
@ -94,4 +95,25 @@ public class Sample4ZS {
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void importCert(){
|
||||
//调试模式(控制台会打印发送报文)
|
||||
System.setProperty("com.sunyard.sydapi4j.debug", "true");
|
||||
//证书是否反序校验
|
||||
//System.setProperty("com.sunyard.dnsort", "false");
|
||||
String ip = "172.16.17.1";
|
||||
String ip2 = "172.16.17.161";
|
||||
|
||||
//主备模式连接
|
||||
SydApi4j.SYD_Set_Parameter_HA(ip, ip2, 8889, 1000);
|
||||
SydApi4j api = (SydApi4j) new SydApi4j();
|
||||
|
||||
//证书导入
|
||||
String cert = "";
|
||||
api.importCert(cert.getBytes(),null);
|
||||
|
||||
|
||||
api.SYD_NakedSign(SM2dn, orgData, (byte[])null);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -16,17 +16,22 @@ import java.util.List;
|
||||
|
||||
public class Test4Nongxin {
|
||||
|
||||
private static final String SM2dn = "C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1";
|
||||
private static final String SM2dn = "C=CN,O=Sunyard,OU=8001,CN=8001";
|
||||
private static final String RSAdn = "C=cn,O=CFCA TEST CA,OU=NCS2,OU=Enterprises,CN=041@Z402451000010@ShanDong@00000001";
|
||||
private static final byte[] orgData = new byte[ 10*1024 ];
|
||||
private static final byte[] orgData = new byte[ 2*1024 ];
|
||||
private static final byte[] orgDataBig = new byte[ 10*1024 ];
|
||||
public static void main(String[] args) {
|
||||
//System.setProperty("com.sunyard.sydapi4j.debug", "true");
|
||||
//设置连接
|
||||
SydApiBuilder builder = new SydApiBuilder().setIp("172.16.17.161");
|
||||
SydApiBuilder builder = new SydApiBuilder().setIp("192.168.0.200");
|
||||
SydApi4j api = (SydApi4j) builder.build();
|
||||
try {
|
||||
//SM2裸签
|
||||
byte[] nakedSign = api.SYD_NakedSign(SM2dn, orgData, null);
|
||||
boolean b1 = api.SYD_NakedVerify(SM2dn, nakedSign, orgData, null);
|
||||
System.out.println(b1);
|
||||
|
||||
|
||||
byte[] nakedSign1 = api.SYD_NakedSignAll(4,orgData, SM2dn);
|
||||
System.out.println("SM2大数据裸签:"+ Util.bytes2HexString(nakedSign1));
|
||||
boolean nakedVerify1 = api.SYD_NakedVerifyAll(4,orgData, nakedSign1, SM2dn);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user