public class AlipaySignature extends Object
| 构造器和说明 |
|---|
AlipaySignature() |
| 限定符和类型 | 方法和说明 |
|---|---|
static boolean |
certVerify(String content,
String sign,
String alipayPublicCertPath,
String charset,
String signType)
证书模式RSA、RSA2、SM2通用验签方法
|
static boolean |
certVerifyV1(Map<String,String> params,
String alipayPublicCertPath,
String charset,
String signType)
证书模式RSA、RSA2、SM2通用验签方法,主要用于支付接口的返回参数的验签比如:当面付,APP支付,手机网站支付,电脑网站支付
|
static boolean |
certVerifyV2(Map<String,String> params,
String alipayPublicCertPath,
String charset,
String signType)
证书模式RSA、RSA2、SM2通用验签方法,主要是用于生活号相关的事件消息和口碑服务市场订购信息等发送到应用网关地址的异步信息的验签
|
static String |
checkSignAndDecrypt(Map<String,String> params,
String alipayPublicKey,
String cusPrivateKey,
boolean isCheckSign,
boolean isDecrypt)
验签并解密 目前适用于公众号
params参数示例: { biz_content=M0qGiGz+8kIpxe8aF4geWJdBn0aBTuJRQItLHo9R7o5JGhpic/MIUjvXo2BLB++BbkSq2OsJCEQFDZ0zK5AJYwvBgeRX30gvEj6eXqXRt16 /IkB9HzAccEqKmRHrZJ7PjQWE0KfvDAHsJqFIeMvEYk1Zei2QkwSQPlso7K0oheo/iT+HYE8aTATnkqD /ByD9iNDtGg38pCa2xnnns63abKsKoV8h0DfHWgPH62urGY7Pye3r9FCOXA2Ykm8X4/Bl1bWFN/PFCEJHWe/HXj8KJKjWMO6ttsoV0xRGfeyUO8agu6t587Dl5ux5zD /s8Lbg5QXygaOwo3Fz1G8EqmGhi4+soEIQb8DBYanQOS3X+m46tVqBGMw8Oe+hsyIMpsjwF4HaPKMr37zpW3fe7xOMuimbZ0wq53YP /jhQv6XWodjT3mL0H5ACqcsSn727B5ztquzCPiwrqyjUHjJQQefFTzOse8snaWNQTUsQS7aLsHq0FveGpSBYORyA90qPdiTjXIkVP7mAiYiAIWW9pCEC7F3XtViKTZ8FRMM9ySicfuAlf3jtap6v2KPMtQv70X+hlmzO/IXB6W0Ep8DovkF5rB4r/BJYJLw/6AS0LZM9w5JfnAZhfGM2rKzpfNsgpOgEZS1WleG4I2hoQC0nxg9IcP0Hs+nWIPkEUcYNaiXqeBc=, sign=rlqgA8O+RzHBVYLyHmrbODVSANWPXf3pSrr82OCO/bm3upZiXSYrX5fZr6UBmG6BZRAydEyTIguEW6VRuAKjnaO/sOiR9BsSrOdXbD5Rhos/Xt7 /mGUWbTOt/F+3W0/XLuDNmuYg1yIC/6hzkg44kgtdSTsQbOC9gWM7ayB4J4c=, sign_type=RSA, charset=UTF-8 } |
static String |
checkSignAndDecrypt(Map<String,String> params,
String alipayPublicKey,
String cusPrivateKey,
boolean isCheckSign,
boolean isDecrypt,
String signType)
验签并解密 目前适用于公众号
params参数示例: { biz_content=M0qGiGz+8kIpxe8aF4geWJdBn0aBTuJRQItLHo9R7o5JGhpic/MIUjvXo2BLB++BbkSq2OsJCEQFDZ0zK5AJYwvBgeRX30gvEj6eXqXRt16 /IkB9HzAccEqKmRHrZJ7PjQWE0KfvDAHsJqFIeMvEYk1Zei2QkwSQPlso7K0oheo/iT+HYE8aTATnkqD /ByD9iNDtGg38pCa2xnnns63abKsKoV8h0DfHWgPH62urGY7Pye3r9FCOXA2Ykm8X4/Bl1bWFN/PFCEJHWe/HXj8KJKjWMO6ttsoV0xRGfeyUO8agu6t587Dl5ux5zD /s8Lbg5QXygaOwo3Fz1G8EqmGhi4+soEIQb8DBYanQOS3X+m46tVqBGMw8Oe+hsyIMpsjwF4HaPKMr37zpW3fe7xOMuimbZ0wq53YP /jhQv6XWodjT3mL0H5ACqcsSn727B5ztquzCPiwrqyjUHjJQQefFTzOse8snaWNQTUsQS7aLsHq0FveGpSBYORyA90qPdiTjXIkVP7mAiYiAIWW9pCEC7F3XtViKTZ8FRMM9ySicfuAlf3jtap6v2KPMtQv70X+hlmzO/IXB6W0Ep8DovkF5rB4r/BJYJLw/6AS0LZM9w5JfnAZhfGM2rKzpfNsgpOgEZS1WleG4I2hoQC0nxg9IcP0Hs+nWIPkEUcYNaiXqeBc=, sign=rlqgA8O+RzHBVYLyHmrbODVSANWPXf3pSrr82OCO/bm3upZiXSYrX5fZr6UBmG6BZRAydEyTIguEW6VRuAKjnaO/sOiR9BsSrOdXbD5Rhos/Xt7 /mGUWbTOt/F+3W0/XLuDNmuYg1yIC/6hzkg44kgtdSTsQbOC9gWM7ayB4J4c=, sign_type=RSA, charset=UTF-8 } |
static String |
decrypt(String content,
String privateKey,
String charset,
String signType)
私钥解密
|
static String |
encrypt(String content,
String publicKey,
String charset,
String signType)
公钥加密
|
static String |
encryptAndSign(String bizContent,
String alipayPublicKey,
String cusPrivateKey,
String charset,
boolean isEncrypt,
boolean isSign)
加密并签名
目前适用于公众号 |
static String |
encryptAndSign(String bizContent,
String alipayPublicKey,
String cusPrivateKey,
String charset,
boolean isEncrypt,
boolean isSign,
String signType)
加密并签名
目前适用于公众号 |
static SignSourceData |
extractSignContent(String str,
int begin) |
static String |
getAlipayPublicKey(String alipayPublicCertPath)
从公钥证书中提取公钥
|
static String |
getCertSN(String certPath)
从公钥证书中提取公钥序列号
|
static PrivateKey |
getPrivateKeyFromPKCS8(String algorithm,
InputStream ins) |
static PublicKey |
getPublicKeyFromX509(String algorithm,
InputStream ins) |
static String |
getSignatureContent(RequestParametersHolder requestHolder) |
static String |
getSignCheckContentV1(Map<String,String> params) |
static String |
getSignCheckContentV2(Map<String,String> params) |
static String |
getSignContent(Map<String,String> sortedParams) |
static Map<String,String> |
getSortedMap(RequestParametersHolder requestHolder) |
static boolean |
rsa256CheckContent(String content,
String sign,
String publicKey,
String charset) |
static String |
rsa256Sign(String content,
String privateKey,
String charset)
sha256WithRsa 加签
|
static boolean |
rsaCertCheck(String content,
String sign,
String alipayPublicCertPath,
String charset,
String signType) |
static boolean |
rsaCertCheckV1(Map<String,String> params,
String alipayPublicCertPath,
String charset) |
static boolean |
rsaCertCheckV1(Map<String,String> params,
String alipayPublicCertPath,
String charset,
String signType) |
static boolean |
rsaCertCheckV2(Map<String,String> params,
String alipayPublicCertPath,
String charset) |
static boolean |
rsaCertCheckV2(Map<String,String> params,
String alipayPublicCertPath,
String charset,
String signType) |
static boolean |
rsaCheck(String content,
String sign,
String publicKey,
String charset,
String signType) |
static boolean |
rsaCheckContent(String content,
String sign,
String publicKey,
String charset) |
static boolean |
rsaCheckV1(Map<String,String> params,
String publicKey,
String charset)
如果是RSA签名,请调用此方法进行验签
|
static boolean |
rsaCheckV1(Map<String,String> params,
String publicKey,
String charset,
String signType)
如果是RSA或RSA2签名,请调用此方法进行验签
|
static boolean |
rsaCheckV2(Map<String,String> params,
String publicKey,
String charset) |
static boolean |
rsaCheckV2(Map<String,String> params,
String publicKey,
String charset,
String signType) |
static String |
rsaDecrypt(String content,
String privateKey,
String charset)
私钥解密
|
static String |
rsaEncrypt(String content,
String publicKey,
String charset)
公钥加密
|
static String |
rsaSign(Map<String,String> params,
String privateKey,
String charset) |
static String |
rsaSign(String content,
String privateKey,
String charset)
sha1WithRsa 加签
|
static String |
rsaSign(String content,
String privateKey,
String charset,
String signType)
rsa内容签名
|
static String |
sign(Map<String,String> params,
String privateKey,
String charset,
String signType)
通用签名方法
|
static String |
sign(String content,
String privateKey,
String charset,
String signType)
通用签名方法
|
static boolean |
verify(String content,
String sign,
String publicKey,
String charset,
String signType)
密钥模式RSA、RSA2、SM2通用验签方法
|
static boolean |
verifyV1(Map<String,String> params,
String publicKey,
String charset,
String signType)
密钥模式RSA、RSA2、SM2通用验签方法,主要用于支付接口的返回参数的验签比如:当面付,APP支付,手机网站支付,电脑网站支付
|
static boolean |
verifyV2(Map<String,String> params,
String publicKey,
String charset,
String signType)
密钥模式RSA、RSA2、SM2通用验签方法,主要是用于生活号相关的事件消息和口碑服务市场订购信息等发送到应用网关地址的异步信息的验签
|
public static String sign(String content, String privateKey, String charset, String signType) throws AlipayApiException
content - 待签名内容privateKey - 私钥charset - 编码格式signType - 签名类型:RSA、RSA2、SM2AlipayApiExceptionpublic static String sign(Map<String,String> params, String privateKey, String charset, String signType) throws AlipayApiException
params - 待签名内容privateKey - 私钥charset - 编码格式signType - 签名类型:RSA、RSA2、SM2AlipayApiExceptionpublic static boolean verifyV1(Map<String,String> params, String publicKey, String charset, String signType) throws AlipayApiException
params - 待验签的从支付宝接收到的参数MappublicKey - 支付宝公钥charset - 参数内容编码集signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static boolean certVerifyV1(Map<String,String> params, String alipayPublicCertPath, String charset, String signType) throws AlipayApiException
params - 待验签的从支付宝接收到的参数MapalipayPublicCertPath - 支付宝公钥路径charset - 参数内容编码集signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static boolean verifyV2(Map<String,String> params, String publicKey, String charset, String signType) throws AlipayApiException
params - 待验签的从支付宝接收到的参数MappublicKey - 支付宝公钥charset - 参数内容编码集signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static boolean certVerifyV2(Map<String,String> params, String alipayPublicCertPath, String charset, String signType) throws AlipayApiException
params - 待验签的从支付宝接收到的参数MapalipayPublicCertPath - 支付宝公钥路径charset - 参数内容编码集signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static boolean verify(String content, String sign, String publicKey, String charset, String signType) throws AlipayApiException
content - 待验签字符串sign - 签名publicKey - 支付宝公钥charset - 参数内容编码集signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static boolean certVerify(String content, String sign, String alipayPublicCertPath, String charset, String signType) throws AlipayApiException
content - 待验签字符串sign - 签名alipayPublicCertPath - 支付宝公钥路径charset - 参数内容编码集signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static String encrypt(String content, String publicKey, String charset, String signType) throws AlipayApiException
content - 待加密内容publicKey - 公钥charset - 字符集,如UTF-8, GBK, GB2312signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static String decrypt(String content, String privateKey, String charset, String signType) throws AlipayApiException
content - 待解密内容privateKey - 私钥charset - 字符集,如UTF-8, GBK, GB2312signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static String encryptAndSign(String bizContent, String alipayPublicKey, String cusPrivateKey, String charset, boolean isEncrypt, boolean isSign, String signType) throws AlipayApiException
bizContent - 待加密、签名内容alipayPublicKey - 支付宝公钥cusPrivateKey - 商户私钥charset - 字符集,如UTF-8, GBK, GB2312isEncrypt - 是否加密,true-加密 false-不加密isSign - 是否签名,true-签名 false-不签名signType - 指定采用的签名方式,RSA、RSA2、SM2 返回示例:
AlipayApiExceptionpublic static String checkSignAndDecrypt(Map<String,String> params, String alipayPublicKey, String cusPrivateKey, boolean isCheckSign, boolean isDecrypt, String signType) throws AlipayApiException
目前适用于公众号
params参数示例:
{
biz_content=M0qGiGz+8kIpxe8aF4geWJdBn0aBTuJRQItLHo9R7o5JGhpic/MIUjvXo2BLB++BbkSq2OsJCEQFDZ0zK5AJYwvBgeRX30gvEj6eXqXRt16
/IkB9HzAccEqKmRHrZJ7PjQWE0KfvDAHsJqFIeMvEYk1Zei2QkwSQPlso7K0oheo/iT+HYE8aTATnkqD
/ByD9iNDtGg38pCa2xnnns63abKsKoV8h0DfHWgPH62urGY7Pye3r9FCOXA2Ykm8X4/Bl1bWFN/PFCEJHWe/HXj8KJKjWMO6ttsoV0xRGfeyUO8agu6t587Dl5ux5zD
/s8Lbg5QXygaOwo3Fz1G8EqmGhi4+soEIQb8DBYanQOS3X+m46tVqBGMw8Oe+hsyIMpsjwF4HaPKMr37zpW3fe7xOMuimbZ0wq53YP
/jhQv6XWodjT3mL0H5ACqcsSn727B5ztquzCPiwrqyjUHjJQQefFTzOse8snaWNQTUsQS7aLsHq0FveGpSBYORyA90qPdiTjXIkVP7mAiYiAIWW9pCEC7F3XtViKTZ8FRMM9ySicfuAlf3jtap6v2KPMtQv70X+hlmzO/IXB6W0Ep8DovkF5rB4r/BJYJLw/6AS0LZM9w5JfnAZhfGM2rKzpfNsgpOgEZS1WleG4I2hoQC0nxg9IcP0Hs+nWIPkEUcYNaiXqeBc=,
sign=rlqgA8O+RzHBVYLyHmrbODVSANWPXf3pSrr82OCO/bm3upZiXSYrX5fZr6UBmG6BZRAydEyTIguEW6VRuAKjnaO/sOiR9BsSrOdXbD5Rhos/Xt7
/mGUWbTOt/F+3W0/XLuDNmuYg1yIC/6hzkg44kgtdSTsQbOC9gWM7ayB4J4c=, sign_type=RSA,
charset=UTF-8
}
params - alipayPublicKey - 支付宝公钥cusPrivateKey - 商户私钥isCheckSign - 是否验签isDecrypt - 是否解密signType - 指定采用的签名方式,RSA、RSA2、SM2AlipayApiExceptionpublic static String getSignatureContent(RequestParametersHolder requestHolder)
public static Map<String,String> getSortedMap(RequestParametersHolder requestHolder)
public static String getSignContent(Map<String,String> sortedParams)
sortedParams - public static SignSourceData extractSignContent(String str, int begin)
public static String rsaSign(String content, String privateKey, String charset, String signType) throws AlipayApiException
content - privateKey - charset - AlipayApiExceptionpublic static String rsa256Sign(String content, String privateKey, String charset) throws AlipayApiException
content - privateKey - charset - AlipayApiExceptionpublic static String rsaSign(String content, String privateKey, String charset) throws AlipayApiException
content - privateKey - charset - AlipayApiExceptionpublic static String rsaSign(Map<String,String> params, String privateKey, String charset) throws AlipayApiException
public static PrivateKey getPrivateKeyFromPKCS8(String algorithm, InputStream ins) throws Exception
Exceptionpublic static boolean rsaCheckV1(Map<String,String> params, String publicKey, String charset) throws AlipayApiException
params - 待验签的从支付宝接收到的参数MappublicKey - 支付宝公钥charset - 参数内容编码集AlipayApiExceptionpublic static boolean rsaCertCheckV1(Map<String,String> params, String alipayPublicCertPath, String charset) throws AlipayApiException
public static boolean rsaCheckV1(Map<String,String> params, String publicKey, String charset, String signType) throws AlipayApiException
params - 待验签的从支付宝接收到的参数MappublicKey - 支付宝公钥charset - 参数内容编码集signType - 指定采用的签名方式,RSA或RSA2AlipayApiExceptionpublic static boolean rsaCertCheckV1(Map<String,String> params, String alipayPublicCertPath, String charset, String signType) throws AlipayApiException
public static boolean rsaCheckV2(Map<String,String> params, String publicKey, String charset) throws AlipayApiException
public static boolean rsaCertCheckV2(Map<String,String> params, String alipayPublicCertPath, String charset) throws AlipayApiException
public static boolean rsaCheckV2(Map<String,String> params, String publicKey, String charset, String signType) throws AlipayApiException
public static boolean rsaCertCheckV2(Map<String,String> params, String alipayPublicCertPath, String charset, String signType) throws AlipayApiException
public static boolean rsaCheck(String content, String sign, String publicKey, String charset, String signType) throws AlipayApiException
public static boolean rsaCertCheck(String content, String sign, String alipayPublicCertPath, String charset, String signType) throws AlipayApiException
public static boolean rsa256CheckContent(String content, String sign, String publicKey, String charset) throws AlipayApiException
public static boolean rsaCheckContent(String content, String sign, String publicKey, String charset) throws AlipayApiException
public static PublicKey getPublicKeyFromX509(String algorithm, InputStream ins) throws Exception
Exceptionpublic static String checkSignAndDecrypt(Map<String,String> params, String alipayPublicKey, String cusPrivateKey, boolean isCheckSign, boolean isDecrypt) throws AlipayApiException
目前适用于公众号
params参数示例:
{
biz_content=M0qGiGz+8kIpxe8aF4geWJdBn0aBTuJRQItLHo9R7o5JGhpic/MIUjvXo2BLB++BbkSq2OsJCEQFDZ0zK5AJYwvBgeRX30gvEj6eXqXRt16
/IkB9HzAccEqKmRHrZJ7PjQWE0KfvDAHsJqFIeMvEYk1Zei2QkwSQPlso7K0oheo/iT+HYE8aTATnkqD
/ByD9iNDtGg38pCa2xnnns63abKsKoV8h0DfHWgPH62urGY7Pye3r9FCOXA2Ykm8X4/Bl1bWFN/PFCEJHWe/HXj8KJKjWMO6ttsoV0xRGfeyUO8agu6t587Dl5ux5zD
/s8Lbg5QXygaOwo3Fz1G8EqmGhi4+soEIQb8DBYanQOS3X+m46tVqBGMw8Oe+hsyIMpsjwF4HaPKMr37zpW3fe7xOMuimbZ0wq53YP
/jhQv6XWodjT3mL0H5ACqcsSn727B5ztquzCPiwrqyjUHjJQQefFTzOse8snaWNQTUsQS7aLsHq0FveGpSBYORyA90qPdiTjXIkVP7mAiYiAIWW9pCEC7F3XtViKTZ8FRMM9ySicfuAlf3jtap6v2KPMtQv70X+hlmzO/IXB6W0Ep8DovkF5rB4r/BJYJLw/6AS0LZM9w5JfnAZhfGM2rKzpfNsgpOgEZS1WleG4I2hoQC0nxg9IcP0Hs+nWIPkEUcYNaiXqeBc=,
sign=rlqgA8O+RzHBVYLyHmrbODVSANWPXf3pSrr82OCO/bm3upZiXSYrX5fZr6UBmG6BZRAydEyTIguEW6VRuAKjnaO/sOiR9BsSrOdXbD5Rhos/Xt7
/mGUWbTOt/F+3W0/XLuDNmuYg1yIC/6hzkg44kgtdSTsQbOC9gWM7ayB4J4c=, sign_type=RSA,
charset=UTF-8
}
params - alipayPublicKey - 支付宝公钥cusPrivateKey - 商户私钥isCheckSign - 是否验签isDecrypt - 是否解密AlipayApiExceptionpublic static String encryptAndSign(String bizContent, String alipayPublicKey, String cusPrivateKey, String charset, boolean isEncrypt, boolean isSign) throws AlipayApiException
bizContent - 待加密、签名内容alipayPublicKey - 支付宝公钥cusPrivateKey - 商户私钥charset - 字符集,如UTF-8, GBK, GB2312isEncrypt - 是否加密,true-加密 false-不加密isSign - 是否签名,true-签名 false-不签名 返回示例:
AlipayApiExceptionpublic static String rsaEncrypt(String content, String publicKey, String charset) throws AlipayApiException
content - 待加密内容publicKey - 公钥charset - 字符集,如UTF-8, GBK, GB2312AlipayApiExceptionpublic static String rsaDecrypt(String content, String privateKey, String charset) throws AlipayApiException
content - 待解密内容privateKey - 私钥charset - 字符集,如UTF-8, GBK, GB2312AlipayApiExceptionpublic static String getCertSN(String certPath) throws AlipayApiException
certPath - 公钥证书存放路径,例如:/home/admin/cert.crtAlipayApiExceptionpublic static String getAlipayPublicKey(String alipayPublicCertPath) throws AlipayApiException
alipayPublicCertPath - 公钥证书存放路径,例如:/home/admin/cert.crtAlipayApiExceptionCopyright © 2025. All rights reserved.