jmeter 测试可用
This commit is contained in:
@@ -335,6 +335,10 @@ public class SydApi4j implements SydApi {
|
||||
byte[] publicKey,
|
||||
byte[] orgData) {
|
||||
|
||||
if (SydApi.DATA_HASH == nOrgDataType) {
|
||||
orgData = SM3Hash(Util.bytes2HexString(publicKey), orgData);
|
||||
}
|
||||
|
||||
Proto74 proto = new Proto74();
|
||||
|
||||
// 填充数据
|
||||
@@ -7732,7 +7736,7 @@ public class SydApi4j implements SydApi {
|
||||
}
|
||||
|
||||
|
||||
ByteBuffer bb = ByteBuffer.allocate(4 * 1024 + 128);
|
||||
ByteBuffer bb = ByteBuffer.allocate(5 * 1024);
|
||||
|
||||
byte[] ret = new byte[2];
|
||||
bb.put(ret);
|
||||
|
||||
@@ -39,7 +39,9 @@ public class FunctionTest {
|
||||
// this.publicKey4Ende = Util.hexString2Bytes( keypair4Ende.get("pk").toString() );
|
||||
// this.privateKey4Ende = Util.hexString2Bytes( keypair4Ende.get("sk").toString() );
|
||||
|
||||
|
||||
// 使用预置密钥对
|
||||
this.publicKey4Sign = Util.hexString2Bytes( "034200046508BC4FE965BEB1D57715C180135FC861FDC6527E82E7FD7A6CA25E7CE9CE75101181D7E2CDD16C1974652B38A045465C7FFBAC700E49F949AE5F4C57AEBEAA" );
|
||||
this.privateKey4Sign = Util.hexString2Bytes( "00010000CF945DAFF49B9F3AB67A23E1E1BA700FF1F78F5DFFCBB518FD1303A51DABA6FC0000000000000000000000000000000000000000000000000000000000000000" );
|
||||
this.publicKey4Ende = Util.hexString2Bytes("03420004AF3D4E55D26564C6C937E6EA9232691C01AC5E7916AD2136F788CE7C1E4D0AE8C4754DEC2F7F6A78962D51A171A6F5B4F11823390AEC8B5B0246CD2CCF8052B7");
|
||||
this.privateKey4Ende = Util.hexString2Bytes("00010000963F7C3A98B7810F52D2861A060E18A9D4D59796CF33967DD61EEDA091E1AD9B0000000000000000000000000000000000000000000000000000000000000000");
|
||||
}
|
||||
@@ -93,8 +95,15 @@ public class FunctionTest {
|
||||
|
||||
@Test
|
||||
public void SYD_SM2_Sign(){
|
||||
String sign = this.api.SYD_SM2_Sign_HA(1, privateKey4Sign, publicKey4Sign, orgData);
|
||||
this.api.SYD_SM2_Verify_HA(1, publicKey4Sign, orgData, sign);
|
||||
String sign = this.api.SYD_SM2_Sign_HA( SydApi.DATA_HASH, privateKey4Sign, publicKey4Sign, orgData);
|
||||
this.api.SYD_SM2_Verify_HA(SydApi.DATA_HASH, publicKey4Sign, orgData, sign);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void SYD_SM2_Sign_2M(){
|
||||
String sign = this.api.SYD_SM2_Sign_HA( SydApi.DATA_HASH, privateKey4Sign, publicKey4Sign, orgData2M);
|
||||
this.api.SYD_SM2_Verify_HA(SydApi.DATA_HASH, publicKey4Sign, orgData2M, sign);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package cmbpoc;
|
||||
|
||||
|
||||
import com.sunyard.SydApi;
|
||||
import com.sunyard.proto.Util;
|
||||
import org.apache.jmeter.config.Arguments;
|
||||
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
|
||||
@@ -16,8 +17,11 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
private byte[] publicKey;
|
||||
private byte[] plainData;
|
||||
private byte[] encryptedData;
|
||||
private String sign;
|
||||
private int sleep = 1;
|
||||
|
||||
private byte[] privateKey4Sign;
|
||||
private byte[] publicKey4Sign;
|
||||
private byte[] privateKey4Ende;
|
||||
private byte[] publicKey4Ende;
|
||||
|
||||
@@ -36,6 +40,8 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
params.addArgument("plainDataLen", "1024");
|
||||
params.addArgument("publicKey4Ende", "", "加密用的公钥");
|
||||
params.addArgument("privateKey4Ende", "", "解密用的公钥");
|
||||
params.addArgument("publicKey4Sign", "", "验签用的公钥");
|
||||
params.addArgument("privateKey4Sign", "", "签名用的公钥");
|
||||
params.addArgument("ip", "192.168.100.145");
|
||||
params.addArgument("ip2", "172.1.41.96");
|
||||
params.addArgument("port", "8889");
|
||||
@@ -45,6 +51,16 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
|
||||
@Override
|
||||
public void setupTest(JavaSamplerContext context) {
|
||||
// 签名密钥对
|
||||
String publicKey4Sign = context.getParameter("publicKey4Sign");
|
||||
if ( null != publicKey4Sign && !publicKey4Sign.isEmpty()) {
|
||||
this.publicKey4Sign = Util.hexString2Bytes(publicKey4Sign);
|
||||
}
|
||||
String privateKey4Sign = context.getParameter("privateKey4Sign");
|
||||
if ( null != privateKey4Sign && !privateKey4Sign.isEmpty()) {
|
||||
this.privateKey4Sign = Util.hexString2Bytes(privateKey4Sign);
|
||||
}
|
||||
|
||||
// 加密密钥对
|
||||
String publicKey4Ende = context.getParameter("publicKey4Ende");
|
||||
if ( null != publicKey4Ende && !publicKey4Ende.isEmpty()) {
|
||||
@@ -82,7 +98,8 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
case "SYD_SM2_Decrypt":
|
||||
this.encryptedData = this.api.get().SYD_SM2Encrypt(this.publicKey4Ende, this.plainData);
|
||||
break;
|
||||
case "SYD_SM2_Sign":
|
||||
case "SYD_SM2_Verify":
|
||||
this.sign = this.api.get().SYD_SM2_Sign_HA(SydApi.DATA_HASH, this.privateKey4Sign, this.publicKey4Sign, this.plainData);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -106,6 +123,10 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
this.api.get().SYD_SM2Decrypt(privateKey4Ende, this.encryptedData);
|
||||
break;
|
||||
case "SYD_SM2_Sign":
|
||||
this.api.get().SYD_SM2_Sign_HA(SydApi.DATA_HASH, privateKey4Sign, publicKey4Sign, this.plainData);
|
||||
break;
|
||||
case "SYD_SM2_Verify":
|
||||
this.api.get().SYD_SM2_Verify_HA(SydApi.DATA_HASH, publicKey4Sign, this.plainData, this.sign);
|
||||
break;
|
||||
case "sleep":
|
||||
Thread.sleep( this.sleep );
|
||||
|
||||
Reference in New Issue
Block a user