类 RsaKit

java.lang.Object
com.ijpay.core.kit.RsaKit

public class RsaKit extends Object

IJPay 让支付触手可及,封装了微信支付、支付宝支付、银联支付常用的支付方式以及各种常用的接口。

不依赖任何第三方 mvc 框架,仅仅作为工具使用简单快速完成支付模块的开发,可轻松嵌入到任何系统里。

IJPay 交流群: 723992875、864988890

Node.js 版: https://gitee.com/javen205/TNWX

RSA 非对称加密工具类

作者:
Javen
  • 构造器详细资料

    • RsaKit

      public RsaKit()
  • 方法详细资料

    • getKeys

      public static Map<String,String> getKeys() throws Exception
      生成公钥和私钥
      抛出:
      Exception - 异常信息
    • getPublicKey

      public static RSAPublicKey getPublicKey(String modulus, String exponent)
      使用模和指数生成RSA公钥 注意:【此代码用了默认补位方式,为RSA/None/PKCS1Padding,不同JDK默认的补位方式可能不同,如Android默认是RSA /None/NoPadding】
      参数:
      modulus - 模
      exponent - 公钥指数
      返回:
      RSAPublicKey
    • getPrivateKey

      public static RSAPrivateKey getPrivateKey(String modulus, String exponent)
      使用模和指数生成RSA私钥 注意:【此代码用了默认补位方式,为RSA/None/PKCS1Padding,不同JDK默认的补位方式可能不同,如Android默认是RSA /None/NoPadding】
      参数:
      modulus - 模
      exponent - 指数
      返回:
      RSAPrivateKey
    • encryptByPublicKey

      public static String encryptByPublicKey(String data, String publicKey) throws Exception
      公钥加密
      参数:
      data - 需要加密的数据
      publicKey - 公钥
      返回:
      加密后的数据
      抛出:
      Exception - 异常信息
    • encryptByPublicKeyByWx

      public static String encryptByPublicKeyByWx(String data, String publicKey) throws Exception
      公钥加密
      参数:
      data - 需要加密的数据
      publicKey - 公钥
      返回:
      加密后的数据
      抛出:
      Exception - 异常信息
    • encryptByPublicKey

      public static String encryptByPublicKey(String data, String publicKey, String fillMode) throws Exception
      公钥加密
      参数:
      data - 需要加密的数据
      publicKey - 公钥
      fillMode - 填充模式
      返回:
      加密后的数据
      抛出:
      Exception - 异常信息
    • encryptByPrivateKey

      public static String encryptByPrivateKey(String data, String privateKey) throws Exception
      私钥签名
      参数:
      data - 需要加密的数据
      privateKey - 私钥
      返回:
      加密后的数据
      抛出:
      Exception - 异常信息
    • encryptByPrivateKey

      public static String encryptByPrivateKey(String data, PrivateKey privateKey) throws Exception
      私钥签名
      参数:
      data - 需要加密的数据
      privateKey - 私钥
      返回:
      加密后的数据
      抛出:
      Exception - 异常信息
    • checkByPublicKey

      public static boolean checkByPublicKey(String data, String sign, String publicKey) throws Exception
      公钥验证签名
      参数:
      data - 需要加密的数据
      sign - 签名
      publicKey - 公钥
      返回:
      验证结果
      抛出:
      Exception - 异常信息
    • checkByPublicKey

      public static boolean checkByPublicKey(String data, String sign, PublicKey publicKey) throws Exception
      公钥验证签名
      参数:
      data - 需要加密的数据
      sign - 签名
      publicKey - 公钥
      返回:
      验证结果
      抛出:
      Exception - 异常信息
    • decryptByPrivateKey

      public static String decryptByPrivateKey(String data, String privateKey) throws Exception
      私钥解密
      参数:
      data - 需要解密的数据
      privateKey - 私钥
      返回:
      解密后的数据
      抛出:
      Exception - 异常信息
    • decryptByPrivateKeyByWx

      public static String decryptByPrivateKeyByWx(String data, String privateKey) throws Exception
      私钥解密
      参数:
      data - 需要解密的数据
      privateKey - 私钥
      返回:
      解密后的数据
      抛出:
      Exception - 异常信息
    • decryptByPrivateKey

      public static String decryptByPrivateKey(String data, String privateKey, String fillMode) throws Exception
      私钥解密
      参数:
      data - 需要解密的数据
      privateKey - 私钥
      fillMode - 填充模式
      返回:
      解密后的数据
      抛出:
      Exception - 异常信息
    • loadPublicKey

      public static PublicKey loadPublicKey(String publicKeyStr) throws Exception
      从字符串中加载公钥
      参数:
      publicKeyStr - 公钥数据字符串
      抛出:
      Exception - 异常信息
    • loadPrivateKey

      public static PrivateKey loadPrivateKey(String privateKeyStr) throws Exception
      从字符串中加载私钥
      加载时使用的是PKCS8EncodedKeySpec(PKCS#8编码的Key指令)。
      参数:
      privateKeyStr - 私钥
      返回:
      PrivateKey
      抛出:
      Exception - 异常信息
    • getPrivateKeyStr

      public static String getPrivateKeyStr(PrivateKey privateKey)
    • getPublicKeyStr

      public static String getPublicKeyStr(PublicKey publicKey)
    • main

      public static void main(String[] args) throws Exception
      抛出:
      Exception