This commit is contained in:
cheney 2023-02-28 15:20:38 +08:00
parent 772458254e
commit ca32bb4c18
2 changed files with 89 additions and 2 deletions

View File

@ -1,14 +1,13 @@
package com.sunyard.sydapi.test;
import com.sunyard.SydApi;
import com.sunyard.cert.X509;
import com.sunyard.proto.Util;
import racal.sunyard.main.SydApi4j;
public class Test74 {
public static void main(String[] args) {
SydApi4j.SYD_Set_Parameter_HA("unkown", "172.16.17.162", 8889, 1000);
SydApi4j.SYD_Set_Parameter_HA("unkown", "172.16.17.161", 8889, 1000);
SydApi4j api = (SydApi4j) new SydApi4j();

View File

@ -0,0 +1,88 @@
package sample;
import com.sunyard.RetWrap;
import com.sunyard.SydApi;
import com.sunyard.proto.Util;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import racal.sunyard.main.SydApi4j;
public class Shangqing {
private SydApi4j api;
// 测试数据
private String uid = "111";
private String dn = "C=CN,ST=321,L=123123,O=123,OU=321,OU=321,CN=123";
private byte[] orgData = new byte[2 * 1024 * 1024];
@Before
public void before() {
// 通过设置debug的属性开启debug如果不设置则默认不打开
System.setProperty("com.sunyard.sydapi4j.debug", "true");
api = (SydApi4j) new SydApi4j().connect("172.16.17.161", 8889, null, 1000);
}
@After
public void after() {
try {
this.api.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 裸签示例
* 1.10 SM2GetPublicKeyC
* 1.1.3 SYD_SM2_Sign_HA
* 1.2.3 SYD_SM2_Verify_HA
*/
@Test
public void sv(){
String pk = api.SM2GetPublicKeyC(uid, 0 );
String sign2 = api.SYD_SM2_Sign_HA(
uid,
SydApi.DATA_HASH,
Util.hexString2Bytes(pk),
orgData
);
System.out.print("\n\n----- SM2 算法签名 结果: ");
System.out.println( sign2 );
System.out.println( api.SYD_SM2_Verify_HA(
SydApi.DATA_HASH,
Util.hexString2Bytes(pk),
orgData ,
sign2
) );
}
/**
* 数字信封示例
* 1.3 generateDEByDn
* 1.4 decryptDEByDN
*/
@Test
public void dm(){
// 生成数字信封
RetWrap retWrap = api.generateDEByDn(dn, orgData );
byte[] cipherKey = (byte[]) retWrap.get(SydApi.RET_CIPHER_KEY);
System.out.println("数字信封: " + new String(cipherKey));
// 解密数字信封
RetWrap retWrap1 = api.decryptDEByDN(dn, cipherKey);
byte[] oData = (byte[]) retWrap1.get("oData");
Assert.assertArrayEquals( oData, orgData );
}
}