Java RSA (SHA1withRSA)签名和验签详解编程语言
2023-06-13 09:20:45 时间
SIGNATURE = Signature.getInstance("SHA1withRSA", "BC");
} catch (NoSuchAlgorithmException | NoSuchPaddingException | NoSuchProviderException e) {
throw Throwables.propagate(e);
public static String getSignature(Map String, String map, String pfxPath, String pfxPasswd) {
try {
SIGNATURE.initSign(X509Certs.getPrivateKey(pfxPath, pfxPasswd).getPrivateKey());
SIGNATURE.update(DigestUtils.sha1Hex(buildReqParams(map, false)).getBytes(Charsets.UTF_8));
return Base64.encodeBase64String(SIGNATURE.sign()).replaceAll("/r|/n", "");
} catch (Throwable e) {
throw Throwables.propagate(e);
public static void verifySign(Map String, String map, String certPath) throws GatewayFrontException {
try {
byte[] sign = Base64.decodeBase64(map.get("signature").getBytes(Charsets.UTF_8));
map.remove("signature");
SIGNATURE.initVerify(X509Certs.getVerifyPublicKey(certPath));
SIGNATURE.update(DigestUtils.sha1Hex(ExPayUtil.buildReqParams(map, false)).getBytes(Charsets.UTF_8));
Preconditions.checkState(SIGNATURE.verify(sign), ExPayConstant.VERIFY_SIGNATURE_FAILUE);
} catch (Exception e) {
throw Throwables.propagate(e);
}
15839.html
cgojava相关文章
- 学java用什么编译器_学习Java用什么编译软件好
- java冒泡排序代码_Java冒泡排序
- Java中restTemplate的使用
- Java小数点数字和百分号数字之间的转换详解编程语言
- JVM 深入学习:Java 解析 Class 文件过程解析详解编程语言
- java统计abacbacdadbc中的每个字母出现的次数,输出格式是:a(4)b(3)c(3)d(2)详解编程语言
- 将图片转换为base64字符串Java代码详解编程语言
- 汉诺塔算法java实现详解编程语言
- 约瑟夫环算法Java实现代码详解编程语言
- Java 对图片90度旋转详解编程语言
- java.util.ConcurrentHashMap (JDK 1.8)详解编程语言
- Java面向对象抽象类实例练习详解编程语言
- Java 数组的 12 个最佳方法详解编程语言
- linux与win下安装java linux下的安装方法详解编程语言
- java的日志记录工具 slf4j的使用详解编程语言
- 深入理解Java虚拟机 – HotSpot虚拟机对象探秘详解编程语言
- java抽象类中抽象方法的实现详解编程语言
- Java线程池执行的任务抛出异常看不到日志详解编程语言
- Java之所有对象的公用方法>9.Always override hashCode when you override equals详解编程语言
- Java获取当前时间的年月日时分秒详解编程语言
- Java 处理0x00特殊字符详解编程语言
- Java中volatile关键字解析详解编程语言
- java ArrayList如何排序详解编程语言
- Java多线程超详解编程语言
- java 获得系统当前时间详解编程语言
- 浅谈Java中的hashcode方法详解编程语言
- 在Linux下搭建完美的Java开发环境(linux搭建java开发环境)
- Linux下开发靠谱的Java应用(linux基于java)