Files
sydapi/src/main/java/com/sunyard/inf/SydNakedSVApi.java
T
2024-04-11 15:29:30 +08:00

123 lines
4.1 KiB
Java

package com.sunyard.inf;
import com.sunyard.SydApiException;
/**
* 不经过 CA 授信
* 直接使用公私钥对签名验签
*/
interface SydNakedSVApi {
/**
* 使用指定的证书 DN,从加密设备获取对应的私钥证书,对指定的原始数据编制裸签名(遵循 PKCS#1)
* @param orgData 待签名的原始数据
* @param sCertDN 签名者证书 DN
* @return 签名数据
*/
public byte[] SYD_NakedSign(
byte[] orgData,
String sCertDN
);
/**
* 使用指定的证书 DN,从加密设备获取对应的私钥证书,对指定的原始数据编制裸签名(遵循 PKCS#1)
* 人行项目增加RSA
* @param orgData 待签名的原始数据
* @param sCertDN 签名者证书 DN
* @return 签名数据
*/
public byte[] SYD_NakedSign(
int rFlag,
byte[] orgData,
String sCertDN
);
/**
* 使用指定的证书 DN,对指定的原始数据编制裸验签(遵循PKCS#1)
* @param orgData 待签名的原始数据
* @param sign 签名数据
* @param sCertDN 签名者证书 DN
* @return 验签是否通过
*/
public boolean SYD_NakedVerify(
byte[] orgData,
byte[] sign,
String sCertDN
);
/**
* 使用指定的证书 DN,对指定的原始数据编制裸验签(遵循PKCS#1)
* @param orgData 待签名的原始数据
* @param sign 签名数据
* @param sCertDN 签名者证书 DN
* @return 验签是否通过
*/
public boolean SYD_NakedVerify(
int rFlag,
byte[] orgData,
byte[] sign,
String sCertDN
);
/**
* 使用指定的证书 DN,从加密设备获取对应的私钥证书,对指定的原始数据编制裸签名(遵循 PKCS#1)
* @param rFlag 摘要算法 1—DIGEST_ALGO_MD5 M
* 2—DIGEST_ALGO_SHA1 S
* 3—DIGEST_ALGO_SHA256 R
* 4-SM2 国密证书,SM3算法
* S代表RSA-SHA1进行签名,如果为R代表RSA-SHA256进行签名,如果为M代表RSA-MD5进行签名
* @param orgData 待签名的原始数据
* @param sCertDN 签名者证书 DN
* @return 签名数据
*/
public byte[] SYD_NakedSignAll(
int rFlag,
byte[] orgData,
String sCertDN
);
/**
* 使用指定的证书 DN,对指定的原始数据编制裸验签(遵循PKCS#1)
* @param rFlag 摘要算法 1—DIGEST_ALGO_MD5 M
* * 2—DIGEST_ALGO_SHA1 S
* * 3—DIGEST_ALGO_SHA256 R
* 4-SM2 国密证书,SM3算法
* * S代表RSA-SHA1进行签名,如果为R代表RSA-SHA256进行签名,如果为M代表RSA-MD5进行签名
* @param orgData 待签名的原始数据
* @param sign 签名数据
* @param sCertDN 签名者证书 DN
* @return 验签是否通过
*/
public boolean SYD_NakedVerifyAll(
int rFlag,
byte[] orgData,
byte[] sign,
String sCertDN
);
/**
* 使用指定的证书 DN,对指定的原始数据编制裸验签(遵循PKCS#1) 安徽农信定制接口
* @param cert 上传证书
* @param rFlag 摘要算法 1—DIGEST_ALGO_MD5 M
* * 2—DIGEST_ALGO_SHA1 S
* * 3—DIGEST_ALGO_SHA256 R
* 4-SM2 国密证书,SM3算法
* * S代表RSA-SHA1进行签名,如果为R代表RSA-SHA256进行签名,如果为M代表RSA-MD5进行签名
* @param orgData 待签名的原始数据
* @param sign 签名数据
* @param sCertDN 签名者证书 DN
* @return 验签是否通过
*/
public boolean SYD_NakedVerifyAll4NX (
String cert,
int rFlag,
byte[] orgData,
byte[] sign,
String sCertDN
) ;
}