代码优化-升级common版本
This commit is contained in:
@@ -2,44 +2,18 @@ package com.accompany.payment.wanxiang.utils;
|
||||
|
||||
import org.apache.commons.codec.binary.Base64;
|
||||
|
||||
import java.security.*;
|
||||
import java.security.interfaces.RSAPrivateKey;
|
||||
import java.security.interfaces.RSAPublicKey;
|
||||
import java.security.KeyFactory;
|
||||
import java.security.PrivateKey;
|
||||
import java.security.PublicKey;
|
||||
import java.security.Signature;
|
||||
import java.security.spec.InvalidKeySpecException;
|
||||
import java.security.spec.PKCS8EncodedKeySpec;
|
||||
import java.security.spec.X509EncodedKeySpec;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class RSAUtils {
|
||||
|
||||
public static final String SIGNATURE_ALGORITHM = "SHA1withRSA";
|
||||
|
||||
public static Map<Integer, String> genKeyPair() throws NoSuchAlgorithmException {
|
||||
// KeyPairGenerator类用于生成公钥和私钥对,基于RSA算法生成对象
|
||||
KeyPairGenerator keyPairGen = KeyPairGenerator.getInstance("RSA");
|
||||
// 初始化密钥对生成器,密钥大小为96-1024位
|
||||
keyPairGen.initialize(2048, new SecureRandom());
|
||||
// 生成一个密钥对,保存在keyPair中
|
||||
KeyPair keyPair = keyPairGen.generateKeyPair();
|
||||
RSAPrivateKey privateKey = (RSAPrivateKey) keyPair.getPrivate(); // 得到私钥
|
||||
RSAPublicKey publicKey = (RSAPublicKey) keyPair.getPublic(); // 得到公钥
|
||||
String publicKeyString = new String(Base64.encodeBase64(publicKey
|
||||
.getEncoded()));
|
||||
// 得到私钥字符串
|
||||
String privateKeyString = new String(Base64.encodeBase64((privateKey
|
||||
.getEncoded())));
|
||||
// 将公钥和私钥保存到Map
|
||||
Map<Integer, String> keyMap = new HashMap<Integer, String>();
|
||||
keyMap.put(0, publicKeyString); // 0表示公钥
|
||||
keyMap.put(1, privateKeyString); // 1表示私钥
|
||||
|
||||
System.out.println("公钥:" + publicKeyString);
|
||||
System.out.println("私钥:" + privateKeyString);
|
||||
|
||||
return keyMap;
|
||||
}
|
||||
|
||||
public static String sign(byte[] data, String privateKeyStr) throws Exception {
|
||||
PrivateKey privateKey = getPrivateKey(privateKeyStr);
|
||||
Signature signature = Signature.getInstance(SIGNATURE_ALGORITHM);
|
||||
@@ -92,18 +66,4 @@ public class RSAUtils {
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
Map<Integer, String> map = RSAUtils.genKeyPair();
|
||||
String publicKeyStr = map.get(0);
|
||||
String privateKeyStr = map.get(1);
|
||||
|
||||
String source = "lorem 我是测试的字段";
|
||||
// 生成的签名
|
||||
String sign = sign(source.getBytes(), privateKeyStr);
|
||||
|
||||
boolean verify = verifyRsaSign(source, sign, publicKeyStr);
|
||||
System.out.println("校验结果为:" + verify);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
@@ -1,7 +1,5 @@
|
||||
package com.accompany.business.message;
|
||||
|
||||
import com.sun.org.apache.xpath.internal.operations.Bool;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class NobleMessage implements Serializable {
|
||||
|
@@ -1,7 +1,5 @@
|
||||
package com.accompany.business.param.publicchatroom;
|
||||
|
||||
import com.sun.org.apache.xpath.internal.operations.Bool;
|
||||
|
||||
/**
|
||||
* @author yangming
|
||||
* @date 2018-11-22
|
||||
|
@@ -15,7 +15,6 @@ import com.accompany.business.service.user.UserBackpackService;
|
||||
import com.accompany.business.service.user.UsersService;
|
||||
import com.accompany.business.vo.DiamondGiveHistoryVo;
|
||||
import com.accompany.business.vo.SimpleUserVo;
|
||||
import com.accompany.common.config.SystemConfig;
|
||||
import com.accompany.common.constant.Constant;
|
||||
import com.accompany.common.redis.RedisKey;
|
||||
import com.accompany.common.result.BusiResult;
|
||||
@@ -29,20 +28,16 @@ import com.accompany.core.service.SysConfService;
|
||||
import com.accompany.core.service.common.JedisLockService;
|
||||
import com.accompany.core.service.common.JedisService;
|
||||
import com.accompany.core.vo.UserLevelVo;
|
||||
import com.accompany.core.vo.UserVo;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
import com.sun.org.apache.bcel.internal.generic.NEW;
|
||||
import io.swagger.models.auth.In;
|
||||
import lombok.NonNull;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
20
pom.xml
20
pom.xml
@@ -39,7 +39,6 @@
|
||||
<httpclient.version>3.1</httpclient.version>
|
||||
<spring-context.version>3.2.9.RELEASE</spring-context.version>
|
||||
<spring.security.version>3.2.5.RELEASE</spring.security.version>
|
||||
<spring-boot-starter-jdbc.version>2.0.0.RELEASE</spring-boot-starter-jdbc.version>
|
||||
<mysql-connector-java.version>8.0.17</mysql-connector-java.version>
|
||||
<quartz.version>2.3.2</quartz.version>
|
||||
<servlet-api.version>3.1.0</servlet-api.version>
|
||||
@@ -47,14 +46,14 @@
|
||||
<slf4j-api.version>1.7.21</slf4j-api.version>
|
||||
<log4j.version>1.2.16</log4j.version>
|
||||
<guava.version>28.0-jre</guava.version>
|
||||
<fastjson.version>1.2.33</fastjson.version>
|
||||
<fastjson.version>1.2.83</fastjson.version>
|
||||
<junit.version>4.12</junit.version>
|
||||
<springside.version>5.0.0-RC1</springside.version>
|
||||
<apache.commons.version>3.3.2</apache.commons.version>
|
||||
<commons-pool2.version>2.4.2</commons-pool2.version>
|
||||
<apache.commons.version>3.12.0</apache.commons.version>
|
||||
<commons-pool2.version>2.11.1</commons-pool2.version>
|
||||
<oro.version>2.0.8</oro.version>
|
||||
<spring-cloud.version>Hoxton.SR12</spring-cloud.version>
|
||||
<qiniu.version>7.6.0</qiniu.version>
|
||||
<qiniu.version>7.11.0</qiniu.version>
|
||||
<nacos.config.version>0.2.2.RELEASE</nacos.config.version>
|
||||
<okhttp.version>3.10.0</okhttp.version>
|
||||
<swagger2.version>2.9.2</swagger2.version>
|
||||
@@ -62,11 +61,10 @@
|
||||
<aliyun-java-sdk-sts.version>3.0.0</aliyun-java-sdk-sts.version>
|
||||
<aliyun-java-sdk-core.version>4.1.2</aliyun-java-sdk-core.version>
|
||||
<protobuf-java.version>2.5.0</protobuf-java.version>
|
||||
<commons-collections.version>3.2.1</commons-collections.version>
|
||||
<commons-io.version>2.4</commons-io.version>
|
||||
<commons-beanutils.version>1.9.3</commons-beanutils.version>
|
||||
<commons-collections.version>3.2.2</commons-collections.version>
|
||||
<commons-io.version>2.11.0</commons-io.version>
|
||||
<commons-beanutils.version>1.9.4</commons-beanutils.version>
|
||||
<com.google.zxing.version>3.2.1</com.google.zxing.version>
|
||||
<commons-lang3.version>3.3.2</commons-lang3.version>
|
||||
<cxf-api.version>2.7.18</cxf-api.version>
|
||||
<commons-math.version>2.0</commons-math.version>
|
||||
<easymock.version>3.4</easymock.version>
|
||||
@@ -311,11 +309,11 @@
|
||||
<version>${commons-math.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<!--<dependency>
|
||||
<groupId>org.easymock</groupId>
|
||||
<artifactId>easymock</artifactId>
|
||||
<version>${easymock.version}</version>
|
||||
</dependency>
|
||||
</dependency>-->
|
||||
<dependency>
|
||||
<groupId>dom4j</groupId>
|
||||
<artifactId>dom4j</artifactId>
|
||||
|
Reference in New Issue
Block a user