添加sm2公钥加密示例

This commit is contained in:
junj2.liang 2022-10-25 17:57:52 +08:00
parent 3942d71d30
commit 1a23046250
2 changed files with 35 additions and 1 deletions

View File

@ -0,0 +1,33 @@
package sample;
import com.sunyard.RetWrap;
import com.sunyard.SydApi;
import com.sunyard.proto.Util;
import com.sunyard.sge.database.SydApi4Database;
import com.sunyard.sge.database.SydApiBaseFunction;
import com.sunyard.sge.database.SydApiBuilder;
import racal.sunyard.main.SydApi4j;
public class Encrypt {
public static void main(String[] args) {
SydApi4j sydApi4j = new SydApi4j();
SydApi api = sydApi4j.connect("192.168.1.129", 8889, null, 5000);
/**
* SM2GetPublicKeyC获取公钥
* 参数1userid传机构号
* 参数2nKeyTypes传密钥类型
* **/
String pk = api.SM2GetPublicKeyC("4444444444444444", 1);
System.out.println("pk=" + pk);
byte[] pkBytes = Util.hexString2Bytes(pk);
/**
* SYD_SM2_Encrypt SM2公钥加密
* 参数1publicKey 传公钥
* 参数2pOrgData 传加密数据
* **/
byte[] sm2 = api.SYD_SM2_Encrypt(pkBytes ,new byte[100]);
String sm2Hex = Util.bytes2HexString(sm2);
System.out.println(sm2Hex);
}
}

View File

@ -10,9 +10,10 @@
</content>
<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: com.sunyard:sydapi4j:1.12.20220909-1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.11" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
<orderEntry type="library" name="Maven: com.sunyard:sydapi4j:1.12.20220909-1" level="project" />
<orderEntry type="library" name="Maven: com.sunyard:sydapi4j:1.12.20220915" level="project" />
<orderEntry type="library" name="Maven: com.sunyard:proto:1.0-20220905" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.groovy:groovy-all:2.4.15" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.17.0" level="project" />