This commit is contained in:
yihzhou
2024-07-01 16:10:48 +08:00
parent e866887b3a
commit 25803c9d4f
4 changed files with 72 additions and 14 deletions
+10
View File
@@ -58,6 +58,12 @@ public class TestDemo {
return signVerify;
}
public static String sm3hash(SydApi4j api,String pk,String orgData) {
byte[] hash = api.SM3Hash(pk, orgData.getBytes());
System.out.println("hash计算:"+ Util.bytes2HexString(hash));
return Util.bytes2HexString(hash);
}
public static void testAll(SydApi4j api, String certDn, String orgData) {
byte[] nakedSign = api.SYD_NakedSignAll(2, orgData.getBytes(), certDn);
@@ -120,6 +126,10 @@ public class TestDemo {
case 8:
snSignVer(api, certDn,orgData, signorenData);
break;
case 9:
sm3hash(api, certDn,orgData);
break;
case 0:
testAll(api, certDn, orgData);
break;
+12 -8
View File
@@ -558,7 +558,7 @@ public class SydApi4j implements SydApi {
byte[] s = null;
try {
sCertDN = DnUtil.verifyDn(sCertDN);
// sCertDN = DnUtil.verifyDn(sCertDN);
s = sCertDN.getBytes("GBK");
} catch (UnsupportedEncodingException var16) {
var16.printStackTrace();
@@ -600,7 +600,7 @@ public class SydApi4j implements SydApi {
}
public byte[] SYD_NakedSign_OuterHash(byte[] orgData, String sCertDN) {
sCertDN = DnUtil.verifyDn(sCertDN);
// sCertDN = DnUtil.verifyDn(sCertDN);
String pk = null;
try {
@@ -709,7 +709,7 @@ public class SydApi4j implements SydApi {
byte[] s = null;
try {
sCertDN = DnUtil.verifyDn(sCertDN);
//sCertDN = DnUtil.verifyDn(sCertDN);
s = sCertDN.getBytes("GBK");
} catch (UnsupportedEncodingException var18) {
var18.printStackTrace();
@@ -754,7 +754,7 @@ public class SydApi4j implements SydApi {
}
public boolean SYD_NakedVerify_OuterHash(byte[] orgData, byte[] sign, String sCertDN) {
sCertDN = DnUtil.verifyDn(sCertDN);
// sCertDN = DnUtil.verifyDn(sCertDN);
String pk = null;
try {
@@ -849,6 +849,7 @@ public class SydApi4j implements SydApi {
public String sm3AndDetachedSign(byte[] orgData, String publicKey, String sCertDN) {
byte[] hash = SM3Hash(publicKey, orgData);
System.out.println("hash为:"+Util.bytes2HexString(hash));
return detachedSign(DATA_HASH, hash, sCertDN);
}
@@ -970,6 +971,7 @@ public class SydApi4j implements SydApi {
@Override
public boolean sm3AndDetachedVerify(byte[] orgData, String publicKey, String sign) {
byte[] hash = SM3Hash(publicKey, orgData);
System.out.println("验签hash为:"+Util.bytes2HexString(hash));
return detachedVerify(DATA_HASH, hash, sign);
}
@@ -996,7 +998,7 @@ public class SydApi4j implements SydApi {
byte[] dn = new byte[256];
byte[] s = null;
try {
sCertDN = verifyDn(sCertDN);
// sCertDN = verifyDn(sCertDN);
s = sCertDN.getBytes("GBK");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
@@ -1357,9 +1359,9 @@ public class SydApi4j implements SydApi {
public String detachedSignAll(int rFlag,byte[] orgData, String sCertDN){
try {
String cert = getCertByDn(sCertDN);
boolean sm2Cert = CertUtil.isSM2Cert(cert);
if(!sm2Cert){//RSA
// String cert = getCertByDn(sCertDN,0);
// boolean sm2Cert = CertUtil.isSM2Cert(cert);
if(rFlag<4){//RSA
return detachedSignRSA(rFlag,orgData,sCertDN);
}else {
if (orgData.length<4096){
@@ -1367,7 +1369,9 @@ public class SydApi4j implements SydApi {
}else {
String pk = null;
pk = this.SYD_SM2_Get_Dn_PublicKey_HA(sCertDN.getBytes("GBK"), 0);
System.out.println(pk);
byte[] hash = this.SM3Hash(pk, orgData);
System.out.println("hash为:"+Util.bytes2HexString(hash));
return detachedSign(DATA_HASH,hash,sCertDN);
}
}