| | |
| | | package com.hx.util.rsa; |
| | | |
| | | import com.sun.org.apache.xml.internal.security.utils.Base64; |
| | | import com.hx.util.StringUtils; |
| | | |
| | | import java.security.KeyFactory; |
| | | import java.security.PrivateKey; |
| | | import java.security.PublicKey; |
| | | import java.security.spec.PKCS8EncodedKeySpec; |
| | | import java.security.spec.X509EncodedKeySpec; |
| | | |
| | | import java.util.*; |
| | | |
| | | |
| | | /** |
| | |
| | | * @param encode 字符集编码 |
| | | * @return 签名值 |
| | | */ |
| | | public static String sign(String content, String privateKey, String encode) { |
| | | public static String createSign(String content, String privateKey, String encode) { |
| | | try { |
| | | PKCS8EncodedKeySpec priPKCS8 = new PKCS8EncodedKeySpec( Base64.decode(privateKey) ); |
| | | |
| | |
| | | return null; |
| | | } |
| | | |
| | | public static String sign(String content, String privateKey) { |
| | | public static String createSign(String content, String privateKey) { |
| | | try{ |
| | | PKCS8EncodedKeySpec priPKCS8 = new PKCS8EncodedKeySpec( Base64.decode(privateKey) ); |
| | | KeyFactory keyf = KeyFactory.getInstance("RSA"); |
| | |
| | | return false; |
| | | } |
| | | |
| | | /** |
| | | * ASCII码递增排序(剔除空值) |
| | | * @param params |
| | | * @return |
| | | */ |
| | | public static String getSignCheckContent(Map<String, String> params) { |
| | | if (params == null) { |
| | | return null; |
| | | } else { |
| | | StringBuilder content = new StringBuilder(); |
| | | List<String> keys = new ArrayList(params.keySet()); |
| | | Collections.sort(keys); |
| | | |
| | | for(int i = 0; i < keys.size(); ++i) { |
| | | String key = (String)keys.get(i); |
| | | Object value = params.get(key); |
| | | if(value == null || StringUtils.isEmpty(value.toString())){ |
| | | continue; |
| | | } |
| | | content.append(i == 0 ? "" : "&").append(key).append("=").append(value); |
| | | } |
| | | return content.toString(); |
| | | } |
| | | } |
| | | |
| | | } |