添加测试,修改Y8获取随机数长度
This commit is contained in:
@@ -9,6 +9,7 @@ import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import racal.sunyard.main.SydApi4j;
|
||||
import racal.sunyard.main.SydApiBuilder;
|
||||
|
||||
import java.io.*;
|
||||
|
||||
@@ -23,10 +24,11 @@ public class TestAllMethods {
|
||||
|
||||
@Before
|
||||
public void before() {
|
||||
System.setProperty("com.sunyard.sydapi4j.debug", "false");
|
||||
// api = (SydApi4j) new SydApi4j().connect("172.16.17.163", 8889, null, 1000);
|
||||
api = (SydApi4j) new SydApi4j().connect("192.168.1.7", 8889, null, 5000);
|
||||
// api = (SydApi4j) new SydApi4j().connect("192.168.0.66", 8889, null, 1000);
|
||||
// 通过设置debug的属性开启debug,如果不设置则默认不打开
|
||||
System.setProperty("com.sunyard.sydapi4j.debug", "true");
|
||||
api = (SydApi4j) new SydApi4j().connect("192.168.0.100", 8889, null, 1000);
|
||||
// api = (SydApi4j) new SydApi4j().connect("172.16.17.162", 8889, null, 1000);
|
||||
// api = (SydApi4j) new SydApi4j().connect("192.168.1.7", 8889, null, 5000);
|
||||
}
|
||||
|
||||
@After
|
||||
@@ -671,6 +673,52 @@ public class TestAllMethods {
|
||||
System.out.println(b);
|
||||
}
|
||||
|
||||
// 测试通过
|
||||
// E0
|
||||
@Test
|
||||
public void testEncDecData() {
|
||||
|
||||
String msg = "1111111111111111111111";
|
||||
|
||||
/**
|
||||
* 对称密钥产生
|
||||
* @param keyType 密钥类型
|
||||
* @param solution 密钥方案(LMK) 密钥长度/LMK下加密密钥的方案。
|
||||
* @return RetWrap 包含
|
||||
* lmkKey LMK LMK加密密钥
|
||||
* keyCheck 密钥校验值
|
||||
*
|
||||
*/
|
||||
RetWrap retWrap = api.genSymmetricKey("000", 'X');
|
||||
|
||||
byte[] lmkKey = (byte[]) retWrap.get("lmkKey");
|
||||
|
||||
String key = new String(lmkKey);
|
||||
|
||||
/**
|
||||
* 用输入的会话密钥,对指定报文数据进行加密处理。
|
||||
*
|
||||
* @param nAlg 算法标识.,0x00:3DES,0x01:SM4。
|
||||
* @param seesionKey 本地LMK 加密的会话密钥,HEX 格式
|
||||
* @param pINdata 要加密的报文明文。必须是 8 或16 的倍数。
|
||||
* @return 输出的报文密文, 长度为报文明文 + 16
|
||||
*/
|
||||
byte[] bytes = api.SYMEncryptDataCBC(1, key, msg.getBytes());
|
||||
|
||||
System.out.println("输出为: " + com.sunyard.proto.Util.bytes2HexString(bytes));
|
||||
|
||||
/**
|
||||
* 用输入的会话密钥,对指定报文数据进行解密处理。
|
||||
*
|
||||
* @param nAlg 算法标识.,0x00:3DES,0x01:SM4。
|
||||
* @param seesionKey 本地LMK 加密的会话密钥,HEX 格式
|
||||
* @param pINdata 要解密的报文密文。长度必须是8 或16 的倍数。
|
||||
* @return 输出的报文明文。
|
||||
*/
|
||||
byte[] bytes1 = api.SYMDecryptDataCBC(1, key, bytes);
|
||||
System.out.println("明文:" + new String(bytes1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testaaa() throws UnsupportedEncodingException {
|
||||
String key = "X6CEE744329499B426CEE744329499B42";
|
||||
@@ -832,7 +880,7 @@ public class TestAllMethods {
|
||||
// 81
|
||||
@Test
|
||||
public void testSM2VerifyCustomized() {
|
||||
String sn = "1004282452";
|
||||
String sn = "1004282451";
|
||||
String data = "111";
|
||||
String s = api.SM2SignCustomized(sn, data.getBytes());
|
||||
|
||||
@@ -852,7 +900,7 @@ public class TestAllMethods {
|
||||
// E2
|
||||
@Test
|
||||
public void testSM2OrRSAGenKeyPair() {
|
||||
String index = "1111111111111118";
|
||||
String index = "1111111111111122";
|
||||
|
||||
// SM2
|
||||
RetWrap retWrap = api.SM2OrRSAGenKeyPair(1, index, 0);
|
||||
@@ -1312,8 +1360,8 @@ public class TestAllMethods {
|
||||
// 75
|
||||
@Test
|
||||
public void testSM2Verify2() {
|
||||
String privateKey = "00010000D7DBFD26A371D3B5BA58D3ECA98EAEFC1BCB65FA0DBBCFBC551E4315B8B2A8700000000000000000000000000000000000000000000000000000000000000000";
|
||||
String thisPublicKey = "034200042E624577E3BF1A510804346D1054B9205D97B4579D6528C25CAE6B74E5CDD19774AFA17CD9017E6BCBD8D9F3903492CD5288932941583E113C804537B69CDD46";
|
||||
String privateKey = "AAA87526B2A261FF5468E489CF5E1E832BED34C31DCDA5D5093247FC20F6A8A7";
|
||||
String thisPublicKey = "C6084B3C227D6AD9201F36122418BDB13016678FC68D61E96F03C56702CFAE27B0190F48E9E9F05D3F550F18F1E6028B6B54F44A0272E16A9436F459A9D706BE";
|
||||
String thisOrgData = "FFFFFFFFFFFFFFFF";
|
||||
|
||||
String s = api.SM2SignC(0, privateKey, Util.hexString2Bytes(thisPublicKey), thisOrgData.getBytes());
|
||||
|
||||
Reference in New Issue
Block a user