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 ) ; }