Merge branch 'refs/heads/feature_探索'

This commit is contained in:
Weasley J
2024-04-19 14:48:59 +08:00
3 changed files with 17 additions and 19 deletions
@@ -8,6 +8,7 @@ import lombok.Getter;
*
* @author weasley
* @version 1.0.0
* @apiNote 进口单报文类型:16 类,出口单报文类型:23 类
*/
@SuppressWarnings("all")
public enum MessageType implements IMessageType {
@@ -12,6 +12,15 @@ import cn.alphahub.eport.signature.entity.UkeyResponse;
import cn.alphahub.eport.signature.entity.WebSocketWrapper;
import cn.alphahub.eport.signature.support.CertificateParser;
import cn.hutool.core.lang.TypeReference;
import java.io.IOException;
import java.security.cert.X509Certificate;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicReference;
import java.util.concurrent.locks.LockSupport;
import lombok.Data;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
@@ -31,16 +40,6 @@ import org.springframework.web.socket.client.WebSocketConnectionManager;
import org.springframework.web.socket.client.standard.StandardWebSocketClient;
import org.springframework.web.socket.handler.TextWebSocketHandler;
import java.io.IOException;
import java.security.cert.X509Certificate;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicReference;
import java.util.concurrent.locks.LockSupport;
import static cn.alphahub.eport.signature.core.CertificateHandler.SING_DATA_METHOD;
import static cn.hutool.json.JSONUtil.toBean;
import static cn.hutool.json.JSONUtil.toJsonStr;
@@ -191,7 +190,7 @@ public class UkeyInitialConfig implements ApplicationRunner {
AtomicReference<Thread> reference = new AtomicReference<>();
reference.set(Thread.currentThread());
// 获取u-key内的证书相关
// 获取u-key内的证书
WebSocketConnectionManager certManager = new WebSocketConnectionManager(standardWebSocketClient, new TextWebSocketHandler() {
final UkeyRequest ukeyRequest = new UkeyRequest("cus-sec_SpcGetSignCertAsPEM", new HashMap<>());
@@ -2,17 +2,17 @@ package cn.alphahub.eport.signature.core;
import cn.alphahub.eport.signature.config.SignatureAlgorithm;
import cn.hutool.core.date.LocalDateTimeUtil;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Map;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.experimental.Accessors;
import lombok.extern.slf4j.Slf4j;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Map;
import static cn.alphahub.eport.signature.config.SignatureAlgorithm.RSA_SHA1;
/**
@@ -52,6 +52,7 @@ public class CertificateHandler implements Serializable {
* <li>value -> 从u-key读取<ds:SignatureValue>的方法名对应的X509Certificate证书</li>
* </ul>
*/
@Setter
@Getter
private Map<String, String> x509Map;
/**
@@ -97,6 +98,7 @@ public class CertificateHandler implements Serializable {
* @apiNote 带Header
*/
public static String buildX509CertificateWithHeader(String certPomFromUkey) {
// TODO 待验证换行符,Windows 和其他平台有差异
return "-----BEGIN CERTIFICATE-----\n"
.concat(buildX509CertificateWithoutHeader(certPomFromUkey)).concat("\n")
.concat("-----END CERTIFICATE-----");
@@ -109,10 +111,6 @@ public class CertificateHandler implements Serializable {
return ukeyValidTimeBegin;
}
public void setX509Map(Map<String, String> x509Map) {
this.x509Map = x509Map;
}
/**
* 获取509Certificate证书
*