zoukankan      html  css  js  c++  java
  • 获取微信RSA加密公钥

    获取RSA加密公钥是为“企业转账到银行卡”这个接口做准备的,这里获取到的是PKCS#1公钥的,

    还需要转成PKCS#8公钥的,因为现在的api接口需要的是PKCS#8公钥,否则会报错的。

    需要啊准备的东西如下:

    商户号、api秘钥、微信证书

    需要引入依赖

    <!-- alipay-->
            <dependency>
                <groupId>com.alipay.sdk</groupId>
                <artifactId>alipay-sdk-java</artifactId>
                <!--<version>3.7.26.ALL</version>-->
            </dependency>

    下面直接上代码

     /**
         * 获取RSA加密公钥
         *
         * @return 证书
         */
        @Override
        public Map<String, String> getPublicKey() {
            try {
                Map<String, String> params = new HashMap<String, String>(4);
                params.put("mch_id", WxPayConfig.MCH_ID);
                params.put("nonce_str", String.valueOf(System.currentTimeMillis()));
                params.put("sign_type", "MD5");
                String createSign = WxPayKit.createSign(params, WxPayConfig.API_SECRET, SignType.MD5);
                params.put("sign", createSign);
                //获取证书路径
                File file = ResourceUtils.getFile(WxPayConfig.CERT_PATH);
                //FileInputStream certStream = new FileInputStream(file);
                String publicKey = WeChatPayApi.getPublicKey(params, file.toString(), WxPayConfig.MCH_ID);
                Map<String, String> map = WXPayUtil.xmlToMap(publicKey);
                System.out.println(map.get("pub_key"));
                return map;
            } catch (Exception e) {
                e.printStackTrace();
                throw new CustomException("系统繁忙,请稍后重试");
            }
        }
     /**
         * 证书地址: resource下
         */
        public static final String CERT_PATH = "classpath:cert/apiclient_cert.p12";

    好了,有什么问题下方留言.......

  • 相关阅读:
    前端工程师如何打发闲余时光?(转)
    比较好的前端开发工具
    蓝桥历年套题 约数倍数选卡片 博弈
    单调栈求全1(或全0)子矩阵的个数 洛谷P5300与或和 P3400仓鼠窝
    5-15
    2018CCPC桂林站G Greatest Common Divisor
    STL中的BITSET运用
    2018CCPC桂林站JStone Game
    牛客2019湘潭大学程序竞赛
    Combine String HDU
  • 原文地址:https://www.cnblogs.com/ckfeng/p/15428271.html
Copyright © 2011-2022 走看看