Add function "attachedSignC" for customized

This commit is contained in:
cheney 2022-06-22 10:07:50 +08:00
parent b5332438f4
commit 6bd2cf1197
3 changed files with 42 additions and 0 deletions

View File

@ -178,6 +178,7 @@ interface SydAttachedSVApi {
* 符合PKCS7标准的签名结果
*/
String attachedSign(byte[] orgData, String sCertDN);
byte[] attachedSignC(byte[] orgData, String sCertDN);
/**
* 带公钥证书与原始数据的数字签名验签遵循 PKCS#7

View File

@ -10405,6 +10405,10 @@ public class SydApi4j implements SydApi {
// retWrap.put( "authenCode", authenCode.getBytes() ); //认证码
}
public byte[] attachedSignC(byte[] orgData, String sCertDN){
String sign = attachedSign(orgData, sCertDN);
return sign.getBytes();
}
/**
* 带公钥证书与原始数据的数字签名遵循 PKCS#7

View File

@ -149,6 +149,43 @@ public class TestHT {
}
}
@Test
public void testAttachedSignAndVerifyGetX509C() {
String dn = "C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1";
byte[] orgData = "111111213323143243243".getBytes();
byte[] sign = api.attachedSignC(orgData, dn);
System.out.println("签名结果: " + sign );
X509 verify = api.attachedVerifyAndGetX509(sign);
System.out.println("验签结果: " + Util.bytes2HexString(verify.getPubKey()));
}
@Test
public void testAttachedSignAndVerifyRDC() {
String dn = "C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1";
String orgData = "111111213323143243243";
byte[] sign = api.attachedSignC(orgData.getBytes(), dn);
System.out.println("签名结果: " + sign);
byte[] verify = api.attachedVerifyRD(sign);
System.out.println("验签结果: " + Util.bytes2HexString(verify));
}
@Test
public void testAttachedSignAndVerifyGetAllC() {
String dn = "C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1";
byte[] orgData = "111111213323143243243".getBytes();
byte[] sign = api.attachedSignC(orgData, dn);
System.out.println("签名结果: " + sign);
RetWrap verify = api.attachedVerifyAndGetAll(sign);
if (verify != null) {
System.out.println("x509公钥: " + Util.bytes2HexString(((X509)verify.get("x509")).getPubKey()));
System.out.println("签名原数据: " + verify.get("oData"));
}
}
@Test
public void testDecryptDE54k() throws UnsupportedEncodingException {
String dn = "C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1";